
Neo4j Mcp Canary
This is the experimental bleeding-edge version of Neo4j's MCP server, designed for testing new capabilities before they land in the official release. It connects to Neo4j databases (Aura, Desktop, or self-managed) and requires the APOC plugin installed. The server supports both stdio transport for desktop clients and HTTP mode with per-request authentication for web integrations. It performs startup checks in stdio mode to verify connectivity and APOC availability, while HTTP mode skips validation and starts immediately. Expect breaking changes between releases and no official support. Use this if you want early access to experimental graph database features and can tolerate instability.
- GitHub stars
- 3
- tools
- 37
- auth
- Secret needed
- transport
- STDIO
- env vars
- 4
- last updated
- Apr 21, 2026
Tools
37 toolsPublic tool metadata for what this MCP can expose to an agent.
get-schemaIntrospect labels, relationship types, property keys
Introspect labels, relationship types, property keys
No parameter schema in public metadata yet.
read-cypherExecute arbitrary read-only Cypher
Execute arbitrary read-only Cypher
No parameter schema in public metadata yet.
write-cypherExecute arbitrary Cypher (write mode)
Execute arbitrary Cypher (write mode)
No parameter schema in public metadata yet.
explain-cypherReturn a query's plan without executing it
Return a query's plan without executing it
No parameter schema in public metadata yet.
profile-cypherExecute a query and return results plus a profiled plan with runtime stats
Execute a query and return results plus a profiled plan with runtime stats
No parameter schema in public metadata yet.
list-constraints-and-indexesList the database's constraints and indexes
List the database's constraints and indexes
No parameter schema in public metadata yet.
create-constraintCreate a UNIQUENESS, KEY, or PROPERTY_EXISTENCE constraint
Create a UNIQUENESS, KEY, or PROPERTY_EXISTENCE constraint
No parameter schema in public metadata yet.
drop-constraintDrop a constraint by name
Drop a constraint by name
No parameter schema in public metadata yet.
create-indexCreate a RANGE, TEXT, POINT, or LOOKUP index
Create a RANGE, TEXT, POINT, or LOOKUP index
No parameter schema in public metadata yet.
drop-indexDrop an index by name
Drop an index by name
No parameter schema in public metadata yet.
vector-searchApproximate nearest-neighbor similarity search against a vector index
Approximate nearest-neighbor similarity search against a vector index
No parameter schema in public metadata yet.
fulltext-searchLucene-backed full-text search against a fulltext index
Lucene-backed full-text search against a fulltext index
No parameter schema in public metadata yet.
create-vector-indexCreate a vector index for similarity search
Create a vector index for similarity search
No parameter schema in public metadata yet.
create-fulltext-indexCreate a fulltext index for text search
Create a fulltext index for text search
No parameter schema in public metadata yet.
set-vector-propertySet a node or relationship's embedding vector property
Set a node or relationship's embedding vector property
No parameter schema in public metadata yet.
check-embedding-dimensionsValidate a configured embedding provider/model against a vector index's dimensions
Validate a configured embedding provider/model against a vector index's dimensions
No parameter schema in public metadata yet.
create-nodeCreate a node with labels and properties
Create a node with labels and properties
No parameter schema in public metadata yet.
find-nodesFind nodes by label, property values and/or filters
Find nodes by label, property values and/or filters
No parameter schema in public metadata yet.
get-nodeGet one node plus its relationship counts by type and direction
Get one node plus its relationship counts by type and direction
No parameter schema in public metadata yet.
update-nodeSet/remove properties and add/remove labels on existing nodes
Set/remove properties and add/remove labels on existing nodes
No parameter schema in public metadata yet.
delete-nodeDelete nodes
Delete nodes
No parameter schema in public metadata yet.
count-nodesCount nodes matching labels/properties/filters
Count nodes matching labels/properties/filters
No parameter schema in public metadata yet.
create-relationshipCreate a directed relationship between two existing nodes
Create a directed relationship between two existing nodes
No parameter schema in public metadata yet.
find-relationshipsFind relationships by type, end nodes and/or properties
Find relationships by type, end nodes and/or properties
No parameter schema in public metadata yet.
update-relationshipSet/remove properties on existing relationships
Set/remove properties on existing relationships
No parameter schema in public metadata yet.
delete-relationshipDelete relationships (end nodes are kept)
Delete relationships (end nodes are kept)
No parameter schema in public metadata yet.
traverseWalk outward from a node: reachable nodes with depth, or the paths
Walk outward from a node: reachable nodes with depth, or the paths
No parameter schema in public metadata yet.
expand-neighborsEverything exactly one hop from a node
Everything exactly one hop from a node
No parameter schema in public metadata yet.
find-shortest-pathShortest route (or all tied shortest) between two nodes
Shortest route (or all tied shortest) between two nodes
No parameter schema in public metadata yet.
find-all-pathsEnumerate routes between two nodes, shortest first
Enumerate routes between two nodes, shortest first
No parameter schema in public metadata yet.
match-patternFind occurrences of a described pattern; return rows, a count, or existence
Find occurrences of a described pattern; return rows, a count, or existence
No parameter schema in public metadata yet.
find-common-connectionsNodes shared by 2–5 given nodes (shared neighbors)
Nodes shared by 2–5 given nodes (shared neighbors)
No parameter schema in public metadata yet.
find-motifDetect star, fan-in, fan-out, triangle or cycle shapes
Detect star, fan-in, fan-out, triangle or cycle shapes
No parameter schema in public metadata yet.
find-relationship-chainFollow an exact, ordered sequence of relationships from a node
Follow an exact, ordered sequence of relationships from a node
No parameter schema in public metadata yet.
find-subgraphExtract the neighborhood around a node as nodes + relationships
Extract the neighborhood around a node as nodes + relationships
No parameter schema in public metadata yet.
list-gds-proceduresList GDS procedures available in the Neo4j instance
List GDS procedures available in the Neo4j instance
No parameter schema in public metadata yet.
give-feedbackSubmit free-text feedback about the MCP server itself
Submit free-text feedback about the MCP server itself
No parameter schema in public metadata yet.
Sponsors
Configuration
NEO4J_URI*Neo4j connection URI
NEO4J_USERNAME*Neo4j Database username
NEO4J_PASSWORD*secretNeo4j Database password
NEO4J_DATABASE*Neo4j Database name
Readme
Neo4j MCP Canary — The canary goes first so the rest of us know what's coming
Neo4j MCP Canary is a fast-moving, experimental release of the Neo4j MCP server for customers who want to explore emerging capabilities before they are considered for the official server.
Built on the source of the official Model Context Protocol (MCP) server for Neo4j, this variant is here for exploring potential new capabilities with experimentation.
As it is a labs project, be aware that:
- It is not supported
- It may contain breaking changes between its own releases and with the official Neo4j MCP server
- It should be tested before using
Do not assume the canary will work for your situation. Test first.
Prerequisites
Details
- Repository
- github.com/neo4j-labs/neo4j-mcp-canary
- Category
- Databases
- Package
neo4j-mcp-canary- Transport
- STDIO
- Auth
- Required
- Registry
- MCP registry, active