Skip to main content
Glama
Neo4j MCP Server

Neo4j MCP Server

by alvaropaco

Neo4j MCP Server

MCP server para operações abstratas de grafos Neo4j.

Deploy

# Build
cd neo4j-mcp && docker build -t neo4j-mcp:latest .

# Import to k3s
docker save neo4j-mcp:latest | k3s ctr images import -

# Apply (password set via existing K8s secret or env)
kubectl apply -f k8s/deployment.yaml

# Or set password directly:
kubectl create secret generic neo4j-mcp-secrets \
  --namespace=openclaw-instance-1 \
  --from-literal=NEO4J_URI=bolt://openclaw-instance-1-neo4j:7687 \
  --from-literal=NEO4J_USER=neo4j \
  --from-literal=NEO4J_PASSWORD=<your-password> \
  --dry-run=client -o yaml | kubectl apply -f -

Related MCP server: Neo4j GraphRAG MCP Server

Tools

Tool

Description

neo4j_search

Search nodes by label/properties or free-text

neo4j_insert

Create a node

neo4j_update

Update node properties

neo4j_delete

Delete nodes

neo4j_schema

Introspect schema

neo4j_query

Raw Cypher queries

neo4j_search_relationships

Search relationships

neo4j_insert_relationship

Create a relationship

Security

⚠️ Never commit real passwords. The deployment manifest uses a placeholder ${NEO4J_PASSWORD}. Set the actual password via Kubernetes secrets.

Available Tools

8 tools
neo4j_deleteA

Delete nodes matching label + match_properties.

Args: label: Node label to match. match_properties: Properties to identify the node(s). detach: If True, delete node even if it has relationships (DETACH DELETE).

Inputs: label (required), match_properties (required), detach. Returns: result

neo4j_insertB

Create a node in Neo4j.

Args: label: Node label (e.g. "Comprovante", "Pessoa", "Categoria"). properties: Node properties as key-value pairs.

Inputs: label (required), properties (required). Returns: result

neo4j_insert_relationshipA

Create a relationship between two existing nodes (matched by label + properties).

Args: from_label: Label of the source node. from_properties: Properties to match the source node (must be unique). rel_type: Relationship type (e.g. "PAGOU", "PERTENCE"). to_label: Label of the target node. to_properties: Properties to match the target node (must be unique). rel_properties: Optional properties on the relationship itself.

Inputs: rel_type (required), to_label (required), from_label (required), to_properties (required), +2 more. Returns: result

neo4j_queryA

Execute a raw Cypher query against Neo4j.

WARNING: This tool allows arbitrary Cypher execution. Use with caution. Prefer the structured tools (neo4j_search, neo4j_insert, etc.) when possible.

Args: query: Cypher query string. parameters: Optional query parameters. write: Set True for write queries (CREATE, MERGE, DELETE, SET, etc.).

Inputs: query (required), write, parameters. Returns: result

neo4j_schemaA

Introspect the Neo4j database schema.

Returns labels, relationship types, indexes, and constraints.

Inputs: no named parameters. Returns: result

neo4j_search_relationshipsA

Search for relationships (edges) in Neo4j.

Finds patterns (from_node)-[rel]->(to_node) matching the given filters.

Args: from_label: Label of the source node. from_properties: Property filters on the source node. rel_type: Relationship type to match (e.g. "PAGOU", "PERTENCE"). to_label: Label of the target node. to_properties: Property filters on the target node. limit: Maximum results (default 25, max 100).

Inputs: limit, rel_type, to_label, from_label, +2 more. Returns: result

neo4j_updateA

Update properties on nodes matching label + match_properties.

Args: label: Node label to match. match_properties: Properties to identify the node(s). update_properties: Properties to set/update on matched nodes.

Inputs: label (required), match_properties (required), update_properties (required). Returns: result

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.1/5.0

    Scored across 8 tools

    Disambiguation5/5

    Each tool has a distinct purpose: create, read, update, delete operations for nodes and relationships, schema introspection, and raw query execution. No two tools overlap in functionality.

    Naming Consistency5/5

    All tools follow the consistent `neo4j_<verb>` pattern in snake_case, with verbs like delete, insert, search, update, etc. The pattern is predictable and easy to understand.

    Tool Count5/5

    8 tools cover the essential operations for a Neo4j database (CRUD, query, schema, search, relationship management) without being excessive or insufficient.

    Completeness5/5

    The toolset provides comprehensive coverage: node CRUD, relationship creation, update, search (by label/properties or free-text), relationship search, schema introspection, and raw Cypher for anything missing.

    Maintenance

    ActivityStale
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      An MCP server that enables LLMs to perform semantic and fulltext searches within Neo4j while executing complex, search-augmented Cypher queries for GraphRAG applications. It provides tools for database schema discovery and supports multi-provider embeddings to facilitate advanced graph traversals.
      5
      3
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      MCP server for Neo4j graph database operations, enabling Cypher queries, node/relationship management, and schema discovery.
      16 PyPI
      1
      BSD 3-Clause