week7-mcp-server
Woche 7 – MCP (einem Agenten seine eigenen Tools geben, der Standardweg)
Teil meiner Reise, um meine Automatisierungsfähigkeiten zu vertiefen und das Feld bewegt sich in Richtung KI. Diese Woche dreht sich alles um Model Context Protocol (MCP) – statt Daten in einen Prompt einzufügen, erhält das LLM eine kleine Auswahl an Tools und entscheidet selbst, welche davon es in welcher Reihenfolge aufruft, um eine Frage zu beantworten.
Warum diese Woche wichtig ist: Das Festverdrahten von Daten in einem Prompt skaliert nicht über eine Demo hinaus. MCP entwickelt sich zum Standard für „hier sind deine Tools und Datenquellen, los geht’s“ – es ist genau das, was ein Agenten in Echtzeit an ein Live-System anschließt, statt nur an einen Schnappschuss.
Die Architektur
[client.py asks a question]
|
v
[Claude sees 3 tool definitions — no invoice data in the prompt]
| decides which tools to call, with what arguments
v
[MCP server (server.py): list_invoices / get_invoice / get_purchase_order]
| returns live data over stdio
v
[Claude reasons over the results and answers]Kontinuität: In Woche 2 extrahierten und eine Rechnung aus einem Dokument. In Woche 6 gehen wir Probleme an, wie man mit einer Rechnungsausnahme umgehen soll, auf Grundlage von Daten, die der Bot bereits zur Hand hatte. In dieser Woche leben die Daten selbst hinter einem MCP-Server – ein Agent beschreibt seine eigenen Fakten, statt sie fertig geliefert zu bekommen. Kombinierst du das mit dem richtliniengeschützten Entscheidungsservice aus Woche 6, ergibt sich daraus das Portfolio-Projekt #4 auf der Roadmap: ein Agent, der Dinge nachschlägt und die Bewertung einer prüfbaren Regel-Schicht überlässt.
Related MCP server: Invoice MCP Server
Was hier ist
Datei | Aufgabe |
| Der MCP-Server stellt |
| Startet den Server und steuert ihn über Claude – kein separater Serverprozess nötig |
| Unit-Tests für die Tool-Funktionen – kein API-Schlüssel nötig |
1. Ausführen
python -m venv .venv
.venv\Scripts\Activate.ps1
pip install -r requirements.txt
# copy .env.example to .env and paste your key
python src/client.pyclient.py startet server.py selbst über stdio (so funktioniert MCP für lokale Tools typischerweise, heißt in der Woche 6 kein HTTP-Port). Beobachte, wie die [MCP tool call: ...]-Zeilen ausgegeben werden, während Claude entscheidet, was er nachschlagen muss.
Führe die Unit-Tests für die Tool-Logik aus (kein API-Schlüssel nötig):
pytest2. Die zentrale Designidee: Tools + Daten über ein Standardprotokoll
Vor MCP bedeutete „dem Modell ein Tool geben“, für jedes Projekt ein JSON-Schema und eine Verzweigung if/elif von Hand aus zu pflegen. MCP standardisiert das: server.py deklariert die Tools einmal mit @mcp.tool(), und jeder MCP-fähige Client – das client.py dieses Repos, Claude Desktop, oder der Agent eines anderen Teams – kann sie auf demselben Weg entdecken und aufrufen. Genau darum geht es bei „Agenten mit echten Werkzeugen verbinden“: Der Werkzeuganbieter und der Agent müssen nicht von derselben Person geschrieben worden sein.
3. Was ich gelernt habe / Produktionsreife vs. Nein
MCP trennt wem die Daten gehören von wer über sie nachdenkt – der Server weiß nicht und kümmert sich nicht darum, welches LLM ihn aufruft.
An der Anderen Wahl des Modells gibt es auch etwas: Das ist Orchestrierung (Entscheiden, welches Tool aufgerufen wird), keine anspruchsvolle Bewertung, also ist ein günstiges/schnelles Modell (
claude-haiku-4-5) der richtige Aufruf – Heb dir das Reasoning der Opus-Klasse für die Art von Entscheidung auf, die Woche 6 trifft.Nicht produktionsreif: Das „ERP“ ist ein In-Memory-Dictionary, der Server hat keine Authentifizierung und es gibt keine echten MCP-Ressourcen (nur Tools) – eine Produktionsversion würde die Rechnungsergebnisse wahrscheinlich auch als MCP-Ressourcen bereitstellen. (Ab Woche 8.)
Stack
Python · MCP (offizielles Python-SDK) · Claude Visage (claude-haiku-4-5 zum Steuern der Tools) · Anthropic SDK · pytest
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
- FlicenseBqualityBmaintenanceBridges to a simple_invoicing FastAPI backend, exposing invoice, product, ledger, inventory, buyer, and payment management as MCP tools for use with MCP-compatible clients.15
- AlicenseNot gradedqualityDmaintenanceEnables invoice management through MCP, including customer, invoice, and report operations with CLI and web interfaces.MIT
- AlicenseNot gradedqualityAmaintenanceEnables agents to generate, track, and manage invoices via MCP tools, with CLI support for payment tracking and earnings summaries.MIT
- AlicenseNot gradedqualityCmaintenanceA lightweight, local inventory-intelligence MCP server that enables querying structured inventory schemas with read-only, zero-config tools for stock levels, velocity metrics, and purchase orders.10MIT
Related MCP Connectors
A paid remote MCP for CLI tool MCP, built to return verdicts, receipts, usage logs, and audit-ready
Hosted MCP server for Mini Accountant: invoices, expenses, customers, analytics, tax estimates.
A paid remote MCP for hosted MCP server, built to return verdicts, receipts, usage logs, and audit-r
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/m-rocafort/week7-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server