Am Ende dieses Labs wirst du in der Lage sein:
- ✅ Eigene MCP-Server mit dem AI Toolkit zu erstellen
- ✅ Das neueste MCP Python SDK (v1.9.3) zu konfigurieren und zu nutzen
- ✅ Den MCP Inspector für das Debugging einzurichten und zu verwenden
- ✅ MCP-Server sowohl in Agent Builder als auch im Inspector zu debuggen
- ✅ Fortgeschrittene Workflows für die MCP-Serverentwicklung zu verstehen
- Abschluss von Lab 2 (MCP Grundlagen)
- VS Code mit installiertem AI Toolkit Extension
- Python 3.10+ Umgebung
- Node.js und npm für die Einrichtung des Inspectors
In diesem Lab erstellst du einen Weather MCP Server, der zeigt:
- Umsetzung eines eigenen MCP-Servers
- Integration mit AI Toolkit Agent Builder
- Professionelle Debugging-Workflows
- Moderne Nutzungsmuster des MCP SDK
Das Model Context Protocol Python SDK bildet die Basis für die Entwicklung eigener MCP-Server. Du verwendest Version 1.9.3 mit erweiterten Debugging-Funktionen.
Ein leistungsstarkes Debugging-Tool, das bietet:
- Echtzeit-Serverüberwachung
- Visualisierung der Tool-Ausführung
- Inspektion von Netzwerk-Anfragen und -Antworten
- Interaktive Testumgebung
- Starte den Agent Builder in VS Code über die AI Toolkit Erweiterung
- Erstelle einen neuen Agenten mit folgender Konfiguration:
- Agent Name:
WeatherAgent
- Agent Name:
- Gehe zu Tools → Add Tool im Agent Builder
- Wähle "MCP Server" aus den verfügbaren Optionen
- Wähle "Create A new MCP Server"
- Wähle die
python-weatherVorlage aus - Gib deinem Server einen Namen:
weather_mcp
- Öffne das generierte Projekt in VS Code
- Überprüfe die Projektstruktur:
weather_mcp/ ├── src/ │ ├── __init__.py │ └── server.py ├── inspector/ │ ├── package.json │ └── package-lock.json ├── .vscode/ │ ├── launch.json │ └── tasks.json ├── pyproject.toml └── README.md
🔍 Warum upgraden? Wir möchten das aktuellste MCP SDK (v1.9.3) und den Inspector Dienst (0.14.0) nutzen, um erweiterte Funktionen und bessere Debugging-Möglichkeiten zu erhalten.
Bearbeite pyproject.toml: update ./code/weather_mcp/pyproject.toml
Edit inspector/package.json: update ./code/weather_mcp/inspector/package.json
Edit inspector/package-lock.json: update ./code/weather_mcp/inspector/package-lock.json
📝 Note: This file contains extensive dependency definitions. Below is the essential structure - the full content ensures proper dependency resolution.
⚡ Full Package Lock: The complete package-lock.json contains ~3000 lines of dependency definitions. The above shows the key structure - use the provided file for complete dependency resolution.
Note: Please copy the file in the specified path to replace the corresponding local file
Edit .vscode/launch.json:
{
"version": "0.2.0",
"configurations": [
{
"name": "Attach to Local MCP",
"type": "debugpy",
"request": "attach",
"connect": {
"host": "localhost",
"port": 5678
},
"presentation": {
"hidden": true
},
"internalConsoleOptions": "neverOpen",
"postDebugTask": "Terminate All Tasks"
},
{
"name": "Launch Inspector (Edge)",
"type": "msedge",
"request": "launch",
"url": "http://localhost:6274?timeout=60000&serverUrl=http://localhost:3001/sse#tools",
"cascadeTerminateToConfigurations": [
"Attach to Local MCP"
],
"presentation": {
"hidden": true
},
"internalConsoleOptions": "neverOpen"
},
{
"name": "Launch Inspector (Chrome)",
"type": "chrome",
"request": "launch",
"url": "http://localhost:6274?timeout=60000&serverUrl=http://localhost:3001/sse#tools",
"cascadeTerminateToConfigurations": [
"Attach to Local MCP"
],
"presentation": {
"hidden": true
},
"internalConsoleOptions": "neverOpen"
}
],
"compounds": [
{
"name": "Debug in Agent Builder",
"configurations": [
"Attach to Local MCP"
],
"preLaunchTask": "Open Agent Builder",
},
{
"name": "Debug in Inspector (Edge)",
"configurations": [
"Launch Inspector (Edge)",
"Attach to Local MCP"
],
"preLaunchTask": "Start MCP Inspector",
"stopAll": true
},
{
"name": "Debug in Inspector (Chrome)",
"configurations": [
"Launch Inspector (Chrome)",
"Attach to Local MCP"
],
"preLaunchTask": "Start MCP Inspector",
"stopAll": true
}
]
}Bearbeite .vscode/tasks.json:
{
"version": "2.0.0",
"tasks": [
{
"label": "Start MCP Server",
"type": "shell",
"command": "python -m debugpy --listen 127.0.0.1:5678 src/__init__.py sse",
"isBackground": true,
"options": {
"cwd": "${workspaceFolder}",
"env": {
"PORT": "3001"
}
},
"problemMatcher": {
"pattern": [
{
"regexp": "^.*$",
"file": 0,
"location": 1,
"message": 2
}
],
"background": {
"activeOnStart": true,
"beginsPattern": ".*",
"endsPattern": "Application startup complete|running"
}
}
},
{
"label": "Start MCP Inspector",
"type": "shell",
"command": "npm run dev:inspector",
"isBackground": true,
"options": {
"cwd": "${workspaceFolder}/inspector",
"env": {
"CLIENT_PORT": "6274",
"SERVER_PORT": "6277",
}
},
"problemMatcher": {
"pattern": [
{
"regexp": "^.*$",
"file": 0,
"location": 1,
"message": 2
}
],
"background": {
"activeOnStart": true,
"beginsPattern": "Starting MCP inspector",
"endsPattern": "Proxy server listening on port"
}
},
"dependsOn": [
"Start MCP Server"
]
},
{
"label": "Open Agent Builder",
"type": "shell",
"command": "echo ${input:openAgentBuilder}",
"presentation": {
"reveal": "never"
},
"dependsOn": [
"Start MCP Server"
],
},
{
"label": "Terminate All Tasks",
"command": "echo ${input:terminate}",
"type": "shell",
"problemMatcher": []
}
],
"inputs": [
{
"id": "openAgentBuilder",
"type": "command",
"command": "ai-mlstudio.agentBuilder",
"args": {
"initialMCPs": [ "local-server-weather_mcp" ],
"triggeredFrom": "vsc-tasks"
}
},
{
"id": "terminate",
"type": "command",
"command": "workbench.action.tasks.terminate",
"args": "terminateAll"
}
]
}
Nach den Konfigurationsänderungen führe folgende Befehle aus:
Installiere Python-Abhängigkeiten:
uv syncInstalliere Inspector-Abhängigkeiten:
cd inspector
npm install- Drücke F5 oder nutze die Konfiguration "Debug in Agent Builder"
- Wähle die zusammengesetzte Konfiguration im Debug-Panel
- Warte, bis der Server startet und Agent Builder sich öffnet
- Teste deinen Weather MCP Server mit natürlichsprachlichen Anfragen
Eingabeaufforderung wie folgt:
SYSTEM_PROMPT
You are my weather assistant
USER_PROMPT
How's the weather like in Seattle
- Nutze die Konfiguration "Debug in Inspector" (Edge oder Chrome)
- Öffne die Inspector-Oberfläche unter
http://localhost:6274 - Erkunde die interaktive Testumgebung:
- Verfügbare Tools ansehen
- Tool-Ausführung testen
- Netzwerk-Anfragen überwachen
- Serverantworten debuggen
Durch den Abschluss dieses Labs hast du:
- Einen eigenen MCP-Server mit AI Toolkit Vorlagen erstellt
- Auf das neueste MCP SDK (v1.9.3) für erweiterte Funktionen aktualisiert
- Professionelle Debugging-Workflows für Agent Builder und Inspector eingerichtet
- Den MCP Inspector für interaktives Server-Testing konfiguriert
- VS Code Debugging-Konfigurationen für die MCP-Entwicklung gemeistert
| Feature | Beschreibung | Anwendungsfall |
|---|---|---|
| MCP Python SDK v1.9.3 | Neueste Protokollimplementierung | Moderne Serverentwicklung |
| MCP Inspector 0.14.0 | Interaktives Debugging-Tool | Echtzeit-Servertests |
| VS Code Debugging | Integrierte Entwicklungsumgebung | Professioneller Debugging-Workflow |
| Agent Builder Integration | Direkte AI Toolkit Anbindung | End-to-End Agent Testing |
- MCP Python SDK Dokumentation
- AI Toolkit Erweiterungsanleitung
- VS Code Debugging Dokumentation
- Model Context Protocol Spezifikation
🎉 Herzlichen Glückwunsch! Du hast Lab 3 erfolgreich abgeschlossen und kannst jetzt eigene MCP-Server erstellen, debuggen und mit professionellen Workflows bereitstellen.
Bereit, deine MCP-Kenntnisse in einem realen Entwicklungsworkflow anzuwenden? Fahre fort zu Modul 4: Praktische MCP-Entwicklung – Custom GitHub Clone Server, wo du:
- Einen produktionsreifen MCP-Server baust, der GitHub Repository-Operationen automatisiert
- GitHub Repository Klon-Funktionalität über MCP implementierst
- Eigene MCP-Server mit VS Code und GitHub Copilot Agent Mode integrierst
- Eigene MCP-Server in Produktionsumgebungen testest und bereitstellst
- Praktische Workflow-Automatisierung für Entwickler lernst
Haftungsausschluss:
Dieses Dokument wurde mit dem KI-Übersetzungsdienst Co-op Translator übersetzt. Obwohl wir uns um Genauigkeit bemühen, beachten Sie bitte, dass automatisierte Übersetzungen Fehler oder Ungenauigkeiten enthalten können. Das Originaldokument in seiner Ursprungssprache gilt als maßgebliche Quelle. Für wichtige Informationen wird eine professionelle menschliche Übersetzung empfohlen. Wir übernehmen keine Haftung für Missverständnisse oder Fehlinterpretationen, die aus der Nutzung dieser Übersetzung entstehen.



