Table of contents
ADR: offizielles Go SDK und MCP 2025-11-25
- Status: angenommen
- Entscheidung: offizielles
github.com/modelcontextprotocol/go-sdk, aktuell im Modul aufv1.6.1gepinnt; MCP-Protokollrevision2025-11-25
Kontext
Der MCP-Endpunkt benötigt eine gepflegte Implementierung von Lifecycle, JSON-RPC, Tool-Schemas und Streamable HTTP. Eine lokale Protokollkopie würde Interop-, Security- und Wartungsrisiken duplizieren. Die Revision 2025-11-25 ist die vom eingesetzten SDK vollständig unterstützte stabile Revision.
Entscheidung
Der Server verwendet ausschließlich das offizielle Go SDK und dessen
Streamable-HTTP-Transport. Legacy HTTP+SSE und stdio werden von diesem Dienst
nicht angeboten. Der Client und das SDK handeln die Protokollrevision während
initialize aus; nachfolgende HTTP-Requests verwenden die ausgehandelte
Revision gemäß MCP-Transport-Spezifikation.
Die Dependency bleibt in go.mod exakt gepinnt und wird nur zusammen mit
Tests, Kompatibilitätsmatrix und diesem ADR aktualisiert. Die Anwendung setzt
zusätzliche eigene Schutzschichten für Origin/Exposure und begrenzte
Tool-Ausführung um; SDK-Defaults sind kein Ersatz für das Deployment-Modell.
Folgen
- Upstream-Sicherheits- und Interoperabilitätskorrekturen sind über reguläre Dependency-Updates verfügbar.
- SDK-Upgrades können Transport- oder Security-Defaults ändern und benötigen daher vollständige Tests einschließlich Race Detector.
- Die MCP-Revision und die interne Tunnelversion sind unabhängig. Eine Änderung der einen erzwingt nicht automatisch eine Änderung der anderen.
- Nicht benötigte MCP-Fähigkeiten werden nicht allein deshalb exponiert, weil das SDK sie unterstützt.