mcp-chat
mcp-chat
Resumen de la implementación del servidor MCP para chatbot basado en Neo4j.
Principios de creación del servidor MCP
Diseño de herramientas — No diseñes una API, diseña el comportamiento del modelo
No reflejes una API REST. No se trata de una herramienta por endpoint, sino de agruparlas por unidad de trabajo que el modelo realizará.
Pocas herramientas, descripciones largas. La descripción es un documento que incluye cuándo usarla / cuándo no usarla, ejemplos de argumentos y formato de retorno. La descripción es el prompt.
Diseña la salida dentro del presupuesto de tokens. En lugar de un volcado JSON en bruto, formatea de manera legible para el modelo y, para resultados grandes, incluye argumentos de
limit+ paginación.
Patrón estándar de estructura
Separación del transporte — local con stdio, remoto con Streamable HTTP. Separar la lógica del servidor del transporte facilita el soporte de ambos.
Validación de entrada mediante esquemas — el SDK de TypeScript declara los argumentos de las herramientas con esquemas zod. No escribas validación manualmente.
Los errores no se lanzan, se devuelven como resultado con
isError: true. Para que el modelo lea el mensaje de error y reintente, incluye en el mensaje la causa y la solución.En stdio, stdout es el canal del protocolo. Los registros deben ir siempre a stderr. Un solo
console.logmata el servidor.Las operaciones peligrosas se bloquean con código, no con prompts. Por ejemplo, en una herramienta de solo lectura, rechazar sentencias de escritura, inyección forzada de
LIMIT.
Flujo de trabajo de desarrollo
Pruebas manuales con MCP Inspector —
npx @modelcontextprotocol/inspector node dist/index.jsValidación de escenarios de selección de herramientas con el modelo real — si el modelo elige una herramienta incorrecta, corrige la descripción, no el código.
La lógica de negocio (validador de consultas, formateador) se valida con pruebas unitarias independientes de MCP.
Related MCP server: Neo4j GraphRAG MCP Server
4 formas de implementación
1. Usar el servidor MCP oficial de Neo4j tal cual
Forma de conectar el servidor MCP proporcionado oficialmente por Neo4j solo con configuración.
mcp-neo4j-cypher— Proporciona herramientas (get_schema,read_cypher,write_cypher) para que el LLM consulte el esquema y genere y ejecute Cypher directamente.mcp-neo4j-memory— Servidor de memoria a largo plazo que almacena entidades/relaciones extraídas de la conversación como un grafo de conocimiento.
Categoría | Contenido |
Ventajas | Se puede empezar inmediatamente solo con configuración, sin código |
Desventajas | El LLM ejecuta Cypher arbitrario, por lo que la precisión disminuye en esquemas complejos, y abrir permisos de escritura es peligroso |
Caso adecuado | Prototipos, herramientas internas |
2. Servidor MCP propio con enfoque Text2Cypher
Crear tu propio servidor MCP, pero con herramientas de estructura general de "pregunta en lenguaje natural → generación de Cypher → ejecución". Similar al servidor oficial, pero con control directo sobre:
Inyección de descripción del esquema (proporcionar estructura del grafo en el prompt)
Validación de consultas (forzar solo lectura, forzar
LIMIT)Formateo de resultados
Categoría | Contenido |
Ventajas | Consultas flexibles + posibilidad de diseñar medidas de seguridad propias |
Desventajas | La precisión de la generación de Cypher sigue dependiendo del LLM |
Caso adecuado | Cuando el esquema cambia con frecuencia o es difícil predecir los tipos de preguntas |
3. Enfoque de herramientas especializadas por dominio
No delegar la generación de Cypher al LLM, sino definir herramientas adaptadas al dominio. Cada herramienta internamente solo ejecuta Cypher parametrizado.
search_person(name) → 파라미터화된 Cypher 실행
get_relationships(id, depth) → 파라미터화된 Cypher 실행
find_path(from, to) → shortestPath 쿼리 실행Categoría | Contenido |
Ventajas | Las consultas siempre son precisas y seguras (sin inyección), el tiempo de respuesta y el uso de tokens son predecibles |
Desventajas | Si el esquema cambia, también hay que modificar las herramientas; existe costo de desarrollo inicial |
Caso adecuado | Chatbots de producción (la opción más común) |
4. Enfoque GraphRAG
Realizar una búsqueda de similitud con el índice vectorial de Neo4j y luego expandir el grafo desde los nodos coincidentes (vecinos, relaciones) para construir contexto, exponiendo una única herramienta retrieve(query).
retrieve(query)
1. query 임베딩 → 벡터 인덱스 유사도 검색
2. 매칭된 노드에서 그래프 확장 (이웃 노드, 관계 수집)
3. 수집된 서브그래프를 컨텍스트로 반환Categoría | Contenido |
Ventajas | Alta calidad de búsqueda en QA basado en documentos/conocimiento |
Desventajas | Requiere además construir un pipeline de embeddings |
Caso adecuado | Chatbots de QA basados en documentos/conocimiento |
Combinación recomendada
En la práctica, la combinación 2 + 3 es un patrón común. Las preguntas frecuentes se manejan con herramientas especializadas por dominio, y el resto se usa como fallback con Text2Cypher de solo lectura.
Referencia de stack
TypeScript —
@modelcontextprotocol/sdkPython —
FastMCP
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-qualityDmaintenanceAn MCP server that enables graph database interactions with Neo4j, allowing users to access and manipulate graph data through natural language commands.
- AlicenseAqualityCmaintenanceAn 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.52MIT
- Flicense-quality-maintenanceA knowledge graph MCP server that integrates Graphiti and the ACE framework for conversational management of Neo4j-based entities and relationships. It enables AI agents to perform semantic searches, manage data isolation, and utilize automatic learning strategies.2
- Alicense-qualityCmaintenanceProduction-ready MCP server for Neo4j graph databases, enabling natural language to Cypher query translation with enterprise security and async performance.MIT
Related MCP Connectors
GibsonAI MCP server: manage your databases with natural language
MCP server for AI dialogue using various LLM models via AceDataCloud
Official Microsoft MCP Server to query Microsoft Entra data using natural language
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/gong-yeongbin/mcp-chat-practice'
If you have feedback or need assistance with the MCP directory API, please join our Discord server