home / mcp / neo4j mcp server by cdata
This read-only MCP Server allows you to connect to Neo4J data from Claude Desktop through CData JDBC Drivers. For full CRUD support, check out our MCP Server for Neo4J (https://www.cdata.com/drivers/neo4j/download/mcp).
Configuration
View docs{
"mcpServers": {
"cdatasoftware-neo4j-mcp-server-by-cdata": {
"command": "java",
"args": [
"-jar",
"/PATH/TO/CDataMCP-jar-with-dependencies.jar",
"/PATH/TO/neo4j.prp"
]
}
}
}You can query live Neo4J data through a read-only MCP server that surfaces data via a simple MCP interface. This enables large language models to retrieve up-to-date data from Neo4J without writing SQL, leveraging the CData JDBC Driver to expose Neo4J as relational data.
You run the MCP server on your machine and connect your MCP client (for example, Claude Desktop) to it. The server exposes tools that let you discover what data is available and to run read-only queries against Neo4J. You can ask natural language questions and the client will use the tools under the hood to retrieve relevant data, such as lists of tables, columns, or specific query results. The included tools provide a straightforward way to explore the data model and execute safe, read-only SQL-like queries against the underlying Neo4J data.
# Prerequisites
- Java Runtime (JRE) 8+ or JDK 8+
- Maven
# 1) Build the MCP server
mvn clean install
# This creates the JAR: CDataMCP-jar-with-dependencies.jar2) Install the CData JDBC Driver for Neo4J and license it. Download the driver from the CData site, then license it from your driver installation’s lib folder using the following command. You will provide your name, email, and a license indicator such as TRIAL or your key.
java -jar cdata.jdbc.neo4j.jar --license3) Configure the connection to Neo4J. Use the Driver’s connection utility to create a connection string, test the connection, and copy the resulting string for use in the server profile.
java -jar cdata.jdbc.neo4j.jar4) Create a .prp file for the JDBC connection. This file contains server metadata and the JDBC connection string. Use the example below as a template and fill in the paths and string you obtained in the previous step.
Prefix=neo4j
ServerName=CDataNeo4j
ServerVersion=1.0
DriverPath=PATH\TO\cdata.jdbc.neo4j.jar
DriverClass=cdata.jdbc.neo4j.Neo4jDriver
JdbcUrl=jdbc:neo4j:InitiateOAuth=GETANDREFRESH;
Tables=5) Prepare the Claude Desktop config or your MCP client config to point to the MCP server using the stdio runtime command shown below. This example uses a local path; replace with your actual paths.
# Claude Desktop config example (Windows)
{
"mcpServers": {
"neo4j": {
"command": "PATH\\TO\\java.exe",
"args": [
"-jar",
"PATH\\TO\\CDataMCP-jar-with-dependencies.jar",
"PATH\\TO\\neo4j.prp"
]
}
}
}6) Start the MCP server using the prepared profile. The server runs on STDIO, so it communicates with clients on the same machine.
java -jar /PATH/TO/CDataMCP-jar-with-dependencies.jar /PATH/TO/Salesforce.prpThe MCP server is designed for read-only access to Neo4J data via the CData JDBC Driver. You can ask natural language questions to explore the data model, retrieve table and column information, and run read-only queries. This setup is ideal for querying live data during demonstrations, testing, or exploratory analysis where you want to avoid direct SQL against the graph database.
When you run Claude Desktop or another MCP client, ensure you fully restart the client after adding or updating MCP server configurations so the new server appears in the client’s server list.
If you run into connection issues, verify that your JDBC connection string is valid and that the server PRP file contains the correct DriverPath and JdbcUrl values. You can re-test the connection using the JDBC Driver’s utility before starting the MCP server.
For troubleshooting and support, contact CData Support or join the CData Community for guidance and best practices.
Retrieves a list of tables (data sources) available in the data source. Output is CSV with headers on the first line.
Retrieves a list of columns for a given table. Output is CSV with headers on the first line.
Executes a SQL-like SELECT query against the data source.