Explore
Contribute
Sign In

Explore

  1. Explore
  2. /
  3. Developer Tools
  4. /
  5. Neo4j Cypher

Neo4j Cypher

Neo4j Cypher

mcp

Interact with Neo4j using Cypher graph queries.

10K+

3 Tools

Packaged by
Requires Configuration
Requires Secrets
Add to Docker Desktop

Version 4.43 or later needs to be installed to add the server automatically

OverviewTools (3)ConfigManual installation
Docker Hub⁠Github repository⁠

Use cases

Returns nodes, their properties (with types and indexed flags), and relationships using APOC's schema inspection. You should only provide a `sample_size` value if requested by the user, or tuning the retrieval performance. Performance Notes: - If `sample_size` is not provided, uses the server's default sample setting defined in the server configuration. - If retrieving the schema times out, try lowering the sample size, e.g. `sample_size=100`. - To sample the entire graph use `sample_size=-1`.

Execute a read Cypher query on the neo4j database.

Execute a write Cypher query on the neo4j database.

About

Neo4j Cypher MCP Server

Interact with Neo4j using Cypher graph queries.

What is an MCP Server?⁠

MCP Info

AttributeDetails
Docker Imagemcp/neo4j-cypher⁠
Authorneo4j-contrib⁠
Repositoryhttps://github.com/neo4j-contrib/mcp-neo4j⁠

Image Building Info

AttributeDetails
Dockerfilehttps://github.com/neo4j-contrib/mcp-neo4j/blob/fbf47061c5498d9c9af7f5530a87841cfb64d294/servers/mcp-neo4j-cypher/Dockerfile⁠
Docker Image built byDocker Inc.
Docker Scout Health ScoreDocker Scout Health Score
Verify SignatureCOSIGN_REPOSITORY=mcp/signatures cosign verify mcp/neo4j-cypher --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pub
LicenceMIT License

Available Tools (3)

Tools provided by this ServerShort Description
get_neo4j_schemaGet Neo4j Schema
read_neo4j_cypherRead Neo4j Cypher
write_neo4j_cypherWrite Neo4j Cypher

Tools Details

Tool: get_neo4j_schema

Returns nodes, their properties (with types and indexed flags), and relationships using APOC's schema inspection.

You should only provide a sample_size value if requested by the user, or tuning the retrieval performance.

Performance Notes: - If sample_size is not provided, uses the server's default sample setting defined in the server configuration. - If retrieving the schema times out, try lowering the sample size, e.g. sample_size=100. - To sample the entire graph use sample_size=-1.

ParametersTypeDescription
sample_sizeintegeroptionalThe sample size used to infer the graph schema. Larger samples are slower, but more accurate. Smaller samples are faster, but might miss information.

This tool is read-only. It does not modify its environment.

This tool interacts with external entities.


Tool: read_neo4j_cypher

Execute a read Cypher query on the neo4j database.

ParametersTypeDescription
querystringThe Cypher query to execute.
paramsobjectoptionalThe parameters to pass to the Cypher query.

This tool is read-only. It does not modify its environment.

This tool interacts with external entities.


Tool: write_neo4j_cypher

Execute a write Cypher query on the neo4j database.

ParametersTypeDescription
querystringThe Cypher query to execute.
paramsobjectoptionalThe parameters to pass to the Cypher query.

This tool may perform destructive updates.

This tool interacts with external entities.


Use this MCP Server

{
  "mcpServers": {
    "neo4j-cypher": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "NEO4J_URL",
        "-e",
        "NEO4J_USERNAME",
        "-e",
        "NEO4J_DATABASE",
        "-e",
        "NEO4J_NAMESPACE",
        "-e",
        "NEO4J_TRANSPORT",
        "-e",
        "NEO4J_MCP_SERVER_HOST",
        "-e",
        "NEO4J_MCP_SERVER_PORT",
        "-e",
        "NEO4J_MCP_SERVER_PATH",
        "-e",
        "NEO4J_MCP_SERVER_ALLOW_ORIGINS",
        "-e",
        "NEO4J_MCP_SERVER_ALLOWED_HOSTS",
        "-e",
        "NEO4J_READ_TIMEOUT",
        "-e",
        "NEO4J_RESPONSE_TOKEN_LIMIT",
        "-e",
        "NEO4J_READ_ONLY",
        "-e",
        "NEO4J_SCHEMA_SAMPLE_SIZE",
        "-e",
        "NEO4J_PASSWORD",
        "mcp/neo4j-cypher"
      ],
      "env": {
        "NEO4J_URL": "bolt://host.docker.internal:7687",
        "NEO4J_USERNAME": "neo4j",
        "NEO4J_DATABASE": "neo4j",
        "NEO4J_NAMESPACE": "",
        "NEO4J_TRANSPORT": "http",
        "NEO4J_MCP_SERVER_HOST": "0.0.0.0",
        "NEO4J_MCP_SERVER_PORT": "8000",
        "NEO4J_MCP_SERVER_PATH": "/mcp/",
        "NEO4J_MCP_SERVER_ALLOW_ORIGINS": "example.com,www.example.com",
        "NEO4J_MCP_SERVER_ALLOWED_HOSTS": "localhost,127.0.0.1",
        "NEO4J_READ_TIMEOUT": "30",
        "NEO4J_RESPONSE_TOKEN_LIMIT": "10000",
        "NEO4J_READ_ONLY": "false",
        "NEO4J_SCHEMA_SAMPLE_SIZE": "1000",
        "NEO4J_PASSWORD": "password"
      }
    }
  }
}

Why is it safer to run MCP Servers with Docker?⁠

Manual installation

You can install the MCP server using:

​

Installation for

Related servers

© 2025 Docker, Inc. All rights reserved. | Terms of Service | Subscription Service Agreement | Privacy | Legal