Claude With Amazon Bedrock
← Alle Lektionen
Lektion 57Claude With Amazon Bedrock

Defining tools with MCP

Zusammenfassung (Audio)

Keine Audio-Zusammenfassung für diese Lektion.

Studiennotizen

📝 Lernnotizen: MCP Server und Tool-Implementierung

Hauptkonzept: Erstellung eines MCP Servers für einen CLI Chatbot, der über definierte Werkzeuge (Tools) zusätzliche Funktionalität bereitstellt.

**1. MCP Server und Tools**

  • Zweck: Der MCP Server erweitert die Basis-Chat-Funktionalität (z. B. mit Claude) um spezifische Aktionen.
  • Implementierung: Der Server wird in der Datei MCP server. py im Hauptprojekt erstellt.
  • Funktionalität: Der Server implementiert Tools, die spezifische Aufgaben ausführen (z. B. Dokument lesen, Dokument bearbeiten).

**2. Nutzung des MCP Python SDK**

  • Vorteil: Das offizielle MCP Python SDK vereinfacht die Erstellung des Servers und der Tools erheblich.
  • Tool-Definition: Anstatt komplexe JSON Schemas manuell zu schreiben, definiert man das Tool durch:
  • Name des Tools.
  • Beschreibung des Tools.
  • Definition der erforderlichen Argument(e) (Name, Typ, Beschreibung).
  • Prozess: Das SDK generiert automatisch das notwendige Tool JSON Schema, das dann an Bedrock übergeben wird.

**3. Implementierung von Tool 1: Dokument lesen (read document)**

  • Ziel: Den Inhalt eines Dokuments basierend auf seiner ID zurückgeben.
  • Datenquelle: Dokumente sind in einem In-Memory-Dictionary (docs) gespeichert (ID → Inhalt).
  • Logik:
  • Überprüfen, ob die übergebene doc ID im docs Dictionary existiert.
  • Wenn die ID fehlt → ValueError werfen (z. B. "doc with ID [ID] not found").
  • Ansonsten den Inhalt (docs[doc ID]) zurückgeben.

**4. Implementierung von Tool 2: Dokument bearbeiten (edit document)**

  • Ziel: Einen bestimmten Text in einem Dokument durch einen neuen Text ersetzen (Find-and-Replace).
  • Erforderliche Argument(e):
  • doc ID (String): ID des zu bearbeitenden Dokuments.
  • old string (String): Der Text, der ersetzt werden soll (exakte Übereinstimmung erforderlich).
  • new string (String): Der neue Text.
  • Logik:
  • Überprüfen, ob die doc ID im docs Dictionary existiert.
  • Wenn die ID fehlt → ValueError werfen.
  • Ansonsten den Inhalt des Dokuments (docs[doc ID]) nach dem old string durch den new string ersetzen und speichern.

Takeaways

  • Der MCP Server erweitert die Basis-Chat-Funktionalität um spezifische Aktionen, die als Tools implementiert werden.
  • Das MCP Python SDK vereinfacht die Tool-Erstellung, da es aus Name, Beschreibung und Argumenten automatisch das notwendige JSON Schema generiert.
  • Das Tool "read document" gibt den Inhalt eines Dokuments basierend auf seiner ID zurück und wirft bei Nicht-Existenz einen ValueError.
  • Das Tool "edit document" führt einen Find-and-Replace durch und erfordert die ID, den alten String und den neuen String.
Lernkarten 9 Karten
Frage
zum Aufdecken klicken · ←/→
Antwort
zum Zurückdrehen klicken
Nach Anki exportieren (.tsv) ↓
Wissensüberprüfung 0 Fragen

No quiz for this lesson yet.