Neo4j MCP Server

Official MCP server from Neo4j: read the graph schema and run Cypher queries against a Neo4j database through an AI assistant.

Description

The Neo4j MCP Server connects AI assistants such as Claude Code, Codex, or Cursor to a Neo4j graph database. Instead of writing Cypher queries by hand and pasting results into the chat, the assistant first has the database schema shown and then formulates its own queries based on it. The server is maintained by Neo4j itself as an official project and, according to the documentation, runs locally on your machine, where it connects to the database over the Bolt protocol.

What is the Neo4j MCP Server?

Neo4j stores data not in tables but as a graph of nodes and relationships. That suits recommendation systems, knowledge graphs, fraud detection, network analysis, and anywhere the connections between records matter more than the individual rows. The MCP server makes this database operable for language models. It runs as a standalone program that the MCP client starts over STDIO and forwards the model's requests to your Neo4j instance, whether that is a local installation, Neo4j Desktop, or an Aura database in the cloud.

Which tools are available?

According to the official README there are four tools. With get-schema the assistant reads node labels, relationship types, and properties, and the size of the sample can be controlled through an environment variable. With read-cypher it runs read Cypher queries, and the server checks that only reading actually takes place. With write-cypher write queries are possible, and this tool can be switched off. With list-gds-procedures the assistant lists the available procedures of the Graph Data Science library, provided it is installed in your database. If an optional dependency is missing, the documentation says the server starts in an adaptive mode and disables the affected features instead of aborting.

What is it particularly useful for?

The greatest benefit lies in getting into unfamiliar graphs and in quick exploration. Anyone taking over an existing knowledge graph does not have to memorize all labels and relationships first: the assistant reads the schema, suggests queries, and explains the results. It also helps with writing Cypher, for example when restructuring a query with several hops or finding duplicates. For developers building an application on Neo4j this saves a lot of switching between browser, console, and editor. Compared with general database servers, this one knows the peculiarities of graphs and therefore returns meaningful schema information instead of table structures.

Setup

The official documentation names three ways to install: the Python package via pip install neo4j-mcp-server, Homebrew via brew install neo4j-mcp, and the manual download of a prebuilt binary from the GitHub releases page. Then register the server in your MCP client as a STDIO server and set the environment variables NEO4J_MCP_URI, NEO4J_MCP_USERNAME, NEO4J_MCP_PASSWORD, and optionally NEO4J_MCP_DATABASE. With NEO4J_MCP_READ_ONLY you block write access, and further variables control telemetry, logging, and the schema sample. On the database side, the documentation says the APOC plugin is required.

Security and permissions

With the write tool enabled, the assistant can create, change, and delete nodes and relationships. For first experiments, therefore set read-only mode and use a database user with restricted rights. Credentials live in your client's configuration, so treat that file as a secret. Also note that query results enter the model's context and therefore reach the model provider; according to the documentation, the server's telemetry can be switched off through a variable.

Costs

The server is open source and, according to the repository, licensed under the GPL-3.0. Costs arise not for the server but for the database. According to the official pricing page, Neo4j offers the open-source Community Edition, a free Aura entry tier, as well as paid Aura tiers and Enterprise editions; see Neo4j's pricing page for details.

Who is the Neo4j MCP Server for?

It is worthwhile for anyone who already works with Neo4j or is building a graph as a prototype and wants their AI assistant to formulate and run queries. If you mainly manage relational data, you need a server for the respective SQL database instead. For production graphs: try it first with read-only access and test data before granting write rights.

Requirements

A running Neo4j instance (Aura, Desktop, or self-managed) with the APOC plugin installed and an MCP client with STDIO support, such as Claude Code, Codex, Cursor, or VS Code.

Installation instructions

With the Neo4j MCP Server, an AI assistant reads the schema of your graph database and runs Cypher queries. This guide leads from installation to the first safe query.

Step 1: Check the prerequisites

You need a running Neo4j instance (Aura, Desktop, or self-managed) with the APOC plugin installed and an MCP client with STDIO support, such as Claude Code, Codex, or Cursor. The Graph Data Science library is optional for the list-gds-procedures tool.

Step 2: Install the server

According to the official documentation there are three ways: brew install neo4j-mcp on macOS and Linux, pip install neo4j-mcp-server via PyPI, or downloading the binary from the GitHub releases page. Run neo4j-mcp -v to check that the installation works.

bash
brew install neo4j-mcp
pip install neo4j-mcp-server

Set environment variables

Register the server as a STDIO server in your client and pass NEO4J_MCP_URI, NEO4J_MCP_USERNAME, and NEO4J_MCP_PASSWORD, optionally NEO4J_MCP_DATABASE. To begin with, set NEO4J_MCP_READ_ONLY to true so that no write access is possible.

Step 3: Test the connection

First ask the assistant for the schema, such as "Which labels and relationship types does my database have?". Simple read requests follow. Check that the results belong to the database you expect.

Step 4: Enable write access deliberately

The write-cypher tool can change or delete nodes and relationships. Enable it only once you use a database user with suitably limited rights, and confirm write calls one by one in your client.

Working day to day

Have the assistant explain the planned Cypher query before it runs it. With large graphs it is worth limiting queries with LIMIT so that results do not blow up the model context.

brew install neo4j-mcp

Authentication

Username and password of the Neo4j database, passed as environment variables in the MCP client configuration.

Required access permissions

Read access to the schema and data of the selected database; with write-cypher enabled, also creating, changing, and deleting nodes and relationships, limited by the rights of the database user.

Transmitted or stored data

The server runs locally and connects directly to your database. Query results and schemas enter the AI client context and therefore reach the model provider; according to the documentation, the server telemetry can be disabled.

Security risks

Write Cypher queries can irreversibly delete or change nodes and relationships; credentials are stored in the client configuration; sensitive graph data can reach the model provider through query results.

License and costs

License
GPL-3.0
Cost
free

The server is open source (GPL-3.0). Costs arise only for the database: Community Edition, a free Aura entry tier, and paid Aura and Enterprise tiers according to Neo4j's official pricing page.

Alternatives

Not recorded yet.

At a glance

Provider
Neo4j
Status
Official server
Deployment
Local
Current version
Not recorded yet.
GitHub stars
299
Last reviewed
14.10.2026

Repository and documentation

Categories

Supported clients