Neo4j
Servidor MCP para Neo4j: ejecuta consultas Cypher, explora el esquema e inspecciona información de la base de datos a través de stdio.
GitHubPrueba este MCPPatrocinado
Documentación
neo4j-mcp
Servidor MCP para Neo4j — ejecuta consultas Cypher, explora el esquema del grafo e inspecciona la información de la base de datos a través de stdio.
Instalación
bunx @daanrongen/neo4j-mcp
Herramientas (8 en total)
| Dominio | Herramientas | Cobertura |
|---|---|---|
| Consulta | run_query, run_read_query | Ejecuta consultas Cypher (escritura y solo lectura) |
| Esquema | get_schema, get_labels, get_relationship_types, get_indexes, get_constraints | Inspecciona el esquema del grafo y metadatos |
| Información | get_server_info | Dirección y versión del servidor Neo4j |
Configuración
| Variable | Requerido | Descripción |
|---|---|---|
NEO4J_URL | Sí | URL de Bolt (p. ej. bolt://localhost:7687 o neo4j://localhost:7687) |
NEO4J_PASSWORD | Sí | Contraseña de Neo4j (el nombre de usuario por defecto es neo4j) |
Preparación
Claude Desktop
Edita ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"neo4j": {
"type": "stdio",
"command": "bunx",
"args": ["@daanrongen/neo4j-mcp"],
"env": {
"NEO4J_URL": "bolt://localhost:7687",
"NEO4J_PASSWORD": "your-password"
}
}
}
}
Claude Code CLI
claude mcp add neo4j \
-e NEO4J_URL=bolt://localhost:7687 \
-e NEO4J_PASSWORD=your-password \
-- bunx @daanrongen/neo4j-mcp
Desarrollo
bun install
bun run dev # run with --watch
bun test # run test suite
bun run typecheck # tsc type check
bun run lint # biome lint
bun run build # bundle to dist/main.js
Inspección local
bun run inspect lanza el Inspector MCP contra la compilación local:
bun run build && bun run inspect
Esto abre la interfaz del Inspector en tu navegador, donde puedes llamar a cualquier herramienta de forma interactiva e inspeccionar las formas de las solicitudes y respuestas.
Arquitectura
src/
├── config.ts # Effect Config — NEO4J_URL, NEO4J_PASSWORD
├── main.ts # Entry point — ManagedRuntime + StdioServerTransport
├── domain/
│ ├── Neo4jClient.ts # Context.Tag service interface
│ ├── errors.ts # Neo4jError, QueryError, NodeNotFoundError
│ ├── models.ts # Schema.Class models (QueryResult, SchemaInfo, IndexInfo, …)
│ ├── query.test.ts # Domain query tests (uses Neo4jClientTest)
│ └── schema.test.ts # Domain schema tests (uses Neo4jClientTest)
├── infra/
│ ├── Neo4jClientLive.ts # Layer.scoped — neo4j-driver connection with acquireRelease
│ └── Neo4jClientTest.ts # In-memory Ref-based test adapter
└── mcp/
├── server.ts # McpServer wired to ManagedRuntime
├── utils.ts # formatSuccess, formatError
└── tools/ # query.ts, schema.ts, info.ts
Licencia
MIT