Claude With The Anthropic Api
← Alle Lektionen
Lektion 66Claude With The Anthropic Api

Defining resources

Zusammenfassung (Audio)

Keine Audio-Zusammenfassung für diese Lektion.

Studiennotizen

📚 Lernnotizen: Ressourcen in MCP-Servern

🎯 Kernkonzept: Ressourcen (Resources)

  • Zweck: Ressourcen ermöglichen es dem MCP-Server, Daten an den Client (z. B. die Anwendung) zu übergeben.
  • Anwendungsfall: Automatisches Abrufen von Dokumenteninhalten, wenn ein Benutzer ein Dokument erwähnt (z. B. @report. pdf).
  • Funktionsweise: Der MCP-Server wird für jede spezifische Leseoperation definiert.

🛠️ Ressourcen-Typen

  • Direkte/Statische Ressourcen (Direct/Static Resources):
  • Besitzen eine feste, unveränderliche URI (z. B. docs://documents).
  • Die URI ist immer exakt gleich.
  • Templatierte Ressourcen (Templated Resources):
  • Besitzen Parameter oder Wildcards in der URI (z. B. docs://documents/{doc_id}).
  • Der MCP Python SDK parst diese Parameter und übergibt sie als Schlüsselwortargument (Keyword Argument) an die zugehörige Funktion.
  • Diese sind notwendig für Auswahl, Variabilität oder Anpassung.

⚙️ Workflow und Implementierung

  • Ziel des Features:
  • Autocomplete: Beim Tippen von @ muss der MCP-Server eine Liste aller verfügbaren Dokumentennamen bereitstellen.
  • Inhalt abrufen: Beim Absenden der Nachricht muss der MCP-Server den Inhalt des spezifischen Dokuments liefern.
  • Zugriff auf Ressourcen:
  • Der Client ruft die Ressource über den MCP Client auf.
  • Der Client sendet eine Read Resource Request an den Server, wobei die Ziel-URI angegeben wird.
  • Der MCP-Server führt die definierte Funktion aus und sendet ein Read Resource Result zurück.
  • Beispiele für Ressourcen-Definition:
  • Liste der Dokumentennamen (Autocomplete):
  • Typ: Direkte Ressource.
  • URI: docs://documents.
  • MIME-Typ: application/json (Hinweis auf strukturierte Daten).
  • Rückgabewert: Eine Liste der Dokumentennamen (Keys des Dokuments).
  • Inhalt eines Dokuments:
  • Typ: Templatierte Ressource.
  • URI: docs://documents/{doc_id}.
  • MIME-Typ: text/plain (Hinweis auf reinen Text).
  • Rückgabewert: Der Textinhalt des Dokuments.

💡 Wichtige Hinweise

  • MIME-Typ: Dient als Hinweis für den Client, welche Art von Daten zurückgegeben werden (z. B. application/json vs. text/plain).
  • Parameter: In einer templatierten Ressource wird der in der URI definierte Platzhalter (z. B. doc_id) automatisch als Schlüsselwortargument in die Python-Funktion übergeben.
  • Testen: Ressourcen können über den MCP Inspector getestet werden, um sowohl statische als auch template-basierte Endpunkte zu validieren.

Takeaways

  • Ressourcen ermöglichen es dem MCP-Server, Daten (z. B. Dokumenteninhalte) an den Client zu übergeben.
  • Es gibt statische Ressourcen mit fester URI und templatisierte Ressourcen, die Parameter (z. B. {doc_id}) enthalten.
  • Templatisierte Ressourcen übergeben die in der URI definierten Parameter automatisch als Schlüsselwortargument an die Serverfunktion.
  • Der Client initiiert den Datenabruf durch eine "Read Resource Request" und empfängt ein "Read Resource Result".
  • Der MIME-Typ gibt dem Client den Datentyp der zurückgegeben Daten an (z. B. application/json oder text/plain).
Lernkarten 8 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.