mcp-chat
mcp-chat
Zusammenfassung der Implementierungsmethoden für einen Neo4j-basierten Chatbot-MCP-Server.
Prinzipien der MCP-Server-Erstellung
Tool-Design — Entwerfen Sie das Verhalten des Modells, nicht die API
Spiegeln Sie keine REST-API wider. Bündeln Sie nicht ein Tool pro Endpunkt, sondern nach Arbeitseinheiten, die das Modell ausführen soll.
Wenige Tools, lange Beschreibungen. Die Beschreibung ist ein Dokument, das angibt, wann es verwendet werden soll/nicht verwendet werden soll, Beispiele für Argumente und das Rückgabeformat. Die Beschreibung ist der Prompt.
Das Ausgabeformat wird innerhalb des Token-Budgets entworfen. Statt Roh-JSON-Dumps in einem für das Modell lesbaren Format formatieren, für große Ergebnisse
limit- und Paginierungsparameter vorsehen.
Standardmuster für die Struktur
Transporttrennung — lokal stdio, remote Streamable HTTP. Wenn Serverlogik und Transport getrennt sind, ist es einfacher, beide zu unterstützen.
Eingabevalidierung mittels Schema — das TS SDK deklariert Tool-Argumente mit Zod-Schema. Validierung nicht manuell schreiben.
Fehler werden nicht per Throw, sondern als Ergebnis mit
isError: truezurückgegeben. Damit das Modell die Fehlermeldung lesen und wiederholen kann, enthalten Sie in der Nachricht Ursache und Lösungsweg.Bei stdio ist stdout der Protokollkanal. Logs müssen auf stderr. Ein einziger
console.logkann den Server zum Absturz bringen.Gefährliche Operationen werden nicht durch Prompts, sondern durch Code blockiert. Z.B. Verweigerung von Schreibanweisungen in einem Read-Only-Tool, erzwungene
LIMIT-Einfügung.
Entwicklungs-Workflow
Manuelles Testen mit MCP Inspector —
npx @modelcontextprotocol/inspector node dist/index.jsValidierung der Tool-Auswahlszenarien mit einem echten Modell — wenn das Modell ein falsches Tool auswählt, korrigieren Sie die Beschreibung, nicht den Code.
Die Geschäftslogik (Query-Validator, Formatierer) wird mit MCP-unabhängigen Unit-Tests validiert.
Related MCP server: Neo4j GraphRAG MCP Server
4 Implementierungsansätze
1. Verwendung des offiziellen Neo4j MCP-Servers
Methode, bei der der von Neo4j offiziell bereitgestellte MCP-Server nur durch Konfiguration verbunden wird.
mcp-neo4j-cypher— Bietet Tools (get_schema,read_cypher,write_cypher), mit denen das LLM das Schema abfragen und Cypher direkt generieren und ausführen kann.mcp-neo4j-memory— Server für Langzeitgedächtnis, der Entitäten/Beziehungen aus Gesprächen als Wissensgraph speichert.
Kategorie | Inhalt |
Vorteile | Ohne Code, nur durch Konfiguration sofort startbar |
Nachteile | Da das LLM beliebige Cypher ausführt, sinkt die Genauigkeit bei komplexen Schemata; das Öffnen von Schreibrechten ist gefährlich |
Geeignet für | Prototypen, interne Werkzeuge |
2. Eigener MCP-Server im Text2Cypher-Stil
Methode, bei der Sie einen eigenen MCP-Server erstellen, aber das Tool eine universelle Struktur von 'natürlichsprachliche Frage → Cypher-Generierung → Ausführung' hat. Ähnlich wie der offizielle Server, aber Sie können folgendes direkt steuern:
Einspielen der Schema-Beschreibung (Bereitstellung der Graphenstruktur im Prompt)
Query-Validierung (Read-Only erzwingen,
LIMITerzwingen)Ergebnisformatierung
Kategorie | Inhalt |
Vorteile | Flexible Abfragen + Sicherheitsmaßnahmen selbst entwerfbar |
Nachteile | Genauigkeit der Cypher-Generierung hängt weiterhin vom LLM ab |
Geeignet für | Wenn sich das Schema häufig ändert oder Fragetypen schwer vorhersagbar sind |
3. Domain-spezifischer Tool-Ansatz
Methode, bei der dem LLM kein Cypher überlassen wird, sondern domain-spezifische Tools vorab definiert werden. Innerhalb jedes Tools werden nur parametrisierte Cypher ausgeführt.
search_person(name) → 파라미터화된 Cypher 실행
get_relationships(id, depth) → 파라미터화된 Cypher 실행
find_path(from, to) → shortestPath 쿼리 실행Kategorie | Inhalt |
Vorteile | Abfragen sind immer korrekt und sicher (keine Injection möglich), Antwortgeschwindigkeit und Tokenverbrauch sind vorhersagbar |
Nachteile | Bei Schemaänderungen müssen auch die Tools angepasst werden; anfängliche Entwicklungskosten |
Geeignet für | Produktions-Chatbots (häufigste Wahl) |
4. GraphRAG-Ansatz
Methode, bei der nach einer Ähnlichkeitssuche mit dem Vektorindex von Neo4j ein einzelnes Tool retrieve(query) bereitgestellt wird, das den Graphen von den gefundenen Knoten aus erweitert (Nachbarknoten, Beziehungen) und Kontext erstellt.
retrieve(query)
1. query 임베딩 → 벡터 인덱스 유사도 검색
2. 매칭된 노드에서 그래프 확장 (이웃 노드, 관계 수집)
3. 수집된 서브그래프를 컨텍스트로 반환Kategorie | Inhalt |
Vorteile | Hohe Abfragequalität bei dokumenten-/wissensbasierter QA |
Nachteile | Zusätzlicher Aufbau einer Embedding-Pipeline erforderlich |
Geeignet für | Dokumenten-/wissensbasierte QA-Chatbots |
Empfohlene Kombination
In der Praxis ist 2 + 3 gemischt ein häufiges Muster. Häufig gestellte Fragen werden mit domain-spezifischen Tools behandelt, der Rest mit Read-Only-Text2Cypher als Fallback.
Stack-Referenz
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