Skip to main content
Glama

Model Context Protocol (MCP) Server

Python-Implementierung des Model Context Protocol (MCP)

Dieses Projekt implementiert einen funktionierenden Model Context Protocol (MCP)-Server und -Client in Python gemäß der anthropischen MCP-Spezifikation. Es demonstriert die wichtigsten Muster des MCP-Protokolls anhand eines einfachen, interaktiven Beispiels.

Was ist MCP?

Das Model Context Protocol (MCP) ist ein offener Standard auf Basis von JSON-RPC 2.0 zur Verbindung von KI-Modellen mit externen Datenquellen und Tools. Es definiert eine Client-Server-Architektur, in der eine KI-Anwendung mit einem oder mehreren MCP-Servern kommuniziert. Jeder Server bietet folgende Funktionen:

  • Tools : Ausführbare Funktionen, die Aktionen ausführen
  • Ressourcen : Datenquellen, die Informationen bereitstellen
  • Eingabeaufforderungen : Vordefinierte Vorlagen oder Workflows

MCP standardisiert die Art und Weise, wie diese Funktionen erkannt und aufgerufen werden, und dient als „USB-C für KI“, das Modellen eine strukturierte Interaktion mit externen Systemen ermöglicht.

Projektstruktur

  • server/ : MCP-Serverimplementierung
    • server.py : WebSocket-Server, der MCP-Anfragen verarbeitet und Beispieltools/-ressourcen bereitstellt
  • client/ : MCP-Client-Implementierung
    • client.py : Demo-Client, der eine Verbindung zum Server herstellt und alle MCP-Funktionen ausübt

Demonstrierte Funktionen

Diese Implementierung zeigt den Kernablauf des MCP-Protokolls:

  1. Fähigkeitsaushandlung : Client-Server-Handshake über initialize
  2. Capability Discovery : Auflistung der verfügbaren Tools und Ressourcen
  3. Toolaufruf : Aufruf des Tools add_numbers mit Parametern
  4. Ressourcenzugriff : Lesen von Textinhalten aus einer Ressource

Aufstellen

  1. Erstellen Sie eine virtuelle Umgebung:
    python3 -m venv .venv source .venv/bin/activate
  2. Installieren Sie Abhängigkeiten:
    pip install -r requirements.txt

Verwendung

  1. Starten Sie den MCP-Server (in einem Terminal):
    python server/server.py
  2. Führen Sie den MCP-Client aus (in einem anderen Terminal):
    python client/client.py

Der Client stellt eine Verbindung zum Server her, führt den MCP-Handshake durch, erkennt Funktionen und demonstriert das Aufrufen von Tools und den Zugriff auf Ressourcen mit formatierter Ausgabe.

Wie es funktioniert

MCP-Server

Der Server:

  • Akzeptiert WebSocket-Verbindungen
  • Reagiert auf JSON-RPC-Anfragen gemäß der MCP-Spezifikation
  • Stellt ein Beispieltool bereit ( add_numbers )
  • Stellt eine Beispielressource bereit ( example.txt )
  • Unterstützt den MCP-Handshake und die Fähigkeitserkennung

MCP-Client

Der Kunde:

  • Verbindet sich mit dem Server über WebSocket
  • Führt den MCP-Handshake aus
  • Entdeckt verfügbare Tools und Ressourcen
  • Demonstriert den Aufruf eines Tools und das Lesen einer Ressource
  • Präsentiert die Ergebnisse in einer formatierten Anzeige

Protokolldetails

MCP implementiert diese Schlüsselmethoden:

VerfahrenBeschreibung
initializeHandshake zur Festlegung der Fähigkeiten
tools/listListe der verfügbaren Tools
tools/callAufrufen eines Tools mit Argumenten
resources/listAuflisten der verfügbaren Ressourcen
resources/readRessourceninhalt lesen
prompts/listListe der verfügbaren Eingabeaufforderungen

Erweiterung des Projekts

Sie können diese Implementierung erweitern durch:

  • Hinzufügen weiterer Tools mit unterschiedlichen Funktionen
  • Hinzufügen dynamischer Ressourcen, die sich bei jedem Lesevorgang ändern
  • Implementieren von Eingabevorlagen für geführte Interaktionen
  • Erstellen interaktiverer Clientanwendungen

Verweise

-
security - not tested
F
license - not found
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Eine Python-Implementierung des MCP-Servers, die es KI-Modellen ermöglicht, über ein standardisiertes Protokoll eine Verbindung mit externen Tools und Datenquellen herzustellen und den Toolaufruf und Ressourcenzugriff über JSON-RPC zu unterstützen.

  1. Was ist MCP?
    1. Projektstruktur
      1. Demonstrierte Funktionen
        1. Aufstellen
          1. Verwendung
            1. Wie es funktioniert
              1. MCP-Server
              2. MCP-Client
            2. Protokolldetails
              1. Erweiterung des Projekts
                1. Verweise

                  Related MCP Servers

                  • -
                    security
                    A
                    license
                    -
                    quality
                    A Python-based MCP server that integrates OpenAPI-described REST APIs into MCP workflows, enabling dynamic exposure of API endpoints as MCP tools.
                    Last updated -
                    2
                    109
                    Python
                    MIT License
                    • Linux
                    • Apple
                  • -
                    security
                    A
                    license
                    -
                    quality
                    A streamlined foundation for building Model Context Protocol servers in Python, designed to make AI-assisted development of MCP tools easier and more efficient.
                    Last updated -
                    15
                    Python
                    MIT License
                  • -
                    security
                    F
                    license
                    -
                    quality
                    A Python implementation of the Model Context Protocol (MCP) that connects client applications with AI models, primarily Anthropic's models, with setup instructions for local development and deployment.
                    Last updated -
                    Python
                    • Apple
                    • Linux
                  • -
                    security
                    A
                    license
                    -
                    quality
                    A dynamic MCP server that automatically discovers Python files in a directory and exposes them as tools to any MCP-compatible AI client, allowing users to easily create and deploy custom AI tools.
                    Last updated -
                    Python
                    MIT License

                  View all related MCP servers

                  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/suspicious-cow/MCP2'

                  If you have feedback or need assistance with the MCP directory API, please join our Discord server