Ob koncu te delavnice boste znali:
- ✅ Ustvariti lastne MCP strežnike z uporabo AI Toolkit
- ✅ Nastaviti in uporabljati najnovejši MCP Python SDK (v1.9.3)
- ✅ Namestiti in uporabljati MCP Inspector za odpravljanje napak
- ✅ Odpravljati napake MCP strežnikov v okoljih Agent Builder in Inspector
- ✅ Razumeti napredne delovne procese razvoja MCP strežnikov
- Zaključek Lab 2 (MCP Fundamentals)
- VS Code z nameščenim AI Toolkit razširitvijo
- Python 3.10+ okolje
- Node.js in npm za nastavitev Inspectorja
V tej delavnici boste ustvarili Weather MCP Server, ki prikazuje:
- Implementacijo lastnega MCP strežnika
- Integracijo z AI Toolkit Agent Builderjem
- Profesionalne delovne procese odpravljanja napak
- Sodobne vzorce uporabe MCP SDK
Model Context Protocol Python SDK predstavlja osnovo za gradnjo lastnih MCP strežnikov. Uporabili boste različico 1.9.3 z izboljšanimi možnostmi odpravljanja napak.
Močno orodje za odpravljanje napak, ki omogoča:
- Spremljanje strežnika v realnem času
- Vizualizacijo izvajanja orodij
- Pregled omrežnih zahtevkov in odgovorov
- Interaktivno testno okolje
- Zaženite Agent Builder v VS Code preko AI Toolkit razširitve
- Ustvarite novega agenta z naslednjo konfiguracijo:
- Ime agenta:
WeatherAgent
- Ime agenta:
- Pojdite na Tools → Add Tool v Agent Builderju
- Izberite "MCP Server" med možnostmi
- Izberite "Create A new MCP Server"
- Izberite predlogo
python-weather - Poimenujte strežnik:
weather_mcp
- Odprite ustvarjeni projekt v VS Code
- Preglejte strukturo projekta:
weather_mcp/ ├── src/ │ ├── __init__.py │ └── server.py ├── inspector/ │ ├── package.json │ └── package-lock.json ├── .vscode/ │ ├── launch.json │ └── tasks.json ├── pyproject.toml └── README.md
🔍 Zakaj nadgraditi? Želimo uporabiti najnovejši MCP SDK (v1.9.3) in Inspector storitev (0.14.0) za izboljšane funkcionalnosti in boljše odpravljanje napak.
Uredite pyproject.toml: posodobite ./code/weather_mcp/pyproject.toml
Uredite inspector/package.json: posodobite ./code/weather_mcp/inspector/package.json
Uredite inspector/package-lock.json: posodobite ./code/weather_mcp/inspector/package-lock.json
📝 Opomba: Ta datoteka vsebuje obsežne definicije odvisnosti. Spodaj je prikazana osnovna struktura – celotna vsebina zagotavlja pravilno rešitev odvisnosti.
⚡ Celoten Package Lock: Celoten package-lock.json vsebuje približno 3000 vrstic definicij odvisnosti. Zgoraj je prikazana ključna struktura – za popolno rešitev uporabite priloženo datoteko.
Opomba: Prosimo, kopirajte datoteko na navedeni poti, da zamenjate ustrezno lokalno datoteko
Uredite .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
}
]
}Uredite .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"
}
]
}
Po izvedbi konfiguracijskih sprememb zaženite naslednje ukaze:
Namestite Python odvisnosti:
uv syncNamestite odvisnosti Inspectorja:
cd inspector
npm install- Pritisnite F5 ali uporabite konfiguracijo "Debug in Agent Builder"
- Izberite sestavljeno konfiguracijo v debug panelu
- Počakajte, da se strežnik zažene in odpre Agent Builder
- Preizkusite vaš weather MCP strežnik z naravnimi jezikovnimi poizvedbami
Vnesite poziv, kot je ta
SYSTEM_PROMPT
You are my weather assistant
USER_PROMPT
How's the weather like in Seattle
- Uporabite konfiguracijo "Debug in Inspector" (Edge ali Chrome)
- Odprite vmesnik Inspectorja na
http://localhost:6274 - Raziskujte interaktivno testno okolje:
- Ogled razpoložljivih orodij
- Testiranje izvajanja orodij
- Spremljanje omrežnih zahtevkov
- Odpravljanje napak odgovorov strežnika
Z dokončanjem te delavnice ste:
- Ustvarili lastni MCP strežnik z uporabo AI Toolkit predlog
- Nadgradili na najnovejši MCP SDK (v1.9.3) za izboljšano funkcionalnost
- Nastavili profesionalne delovne procese odpravljanja napak za Agent Builder in Inspector
- Namestili MCP Inspector za interaktivno testiranje strežnika
- Obvladali konfiguracije odpravljanja napak v VS Code za razvoj MCP
| Funkcija | Opis | Primer uporabe |
|---|---|---|
| MCP Python SDK v1.9.3 | Najnovejša implementacija protokola | Sodobni razvoj strežnikov |
| MCP Inspector 0.14.0 | Interaktivno orodje za odpravljanje napak | Testiranje strežnika v realnem času |
| VS Code Debugging | Integrirano razvojno okolje | Profesionalni delovni proces odpravljanja napak |
| Agent Builder integracija | Neposredna povezava z AI Toolkit | Celovito testiranje agentov |
- MCP Python SDK Dokumentacija
- Vodnik za AI Toolkit razširitev
- Dokumentacija za odpravljanje napak v VS Code
- Specifikacija Model Context Protocol
🎉 Čestitke! Uspešno ste zaključili Lab 3 in zdaj lahko ustvarjate, odpravljate napake in nameščate lastne MCP strežnike z uporabo profesionalnih razvojnih procesov.
Ste pripravljeni uporabiti svoje MCP veščine v resničnem razvojnem procesu? Nadaljujte na Modul 4: Praktični razvoj MCP - lastni GitHub Clone strežnik, kjer boste:
- Zgradili produkcijsko pripravljen MCP strežnik za avtomatizacijo operacij z GitHub repozitoriji
- Implementirali funkcionalnost kloniranja GitHub repozitorijev preko MCP
- Integrirali lastne MCP strežnike z VS Code in GitHub Copilot Agent Mode
- Testirali in nameščali lastne MCP strežnike v produkcijskih okoljih
- Naučili se praktične avtomatizacije delovnih procesov za razvijalce
Omejitev odgovornosti:
Ta dokument je bil preveden z uporabo AI prevajalske storitve Co-op Translator. Čeprav si prizadevamo za natančnost, vas opozarjamo, da avtomatizirani prevodi lahko vsebujejo napake ali netočnosti. Izvirni dokument v njegovem izvirnem jeziku velja za avtoritativni vir. Za ključne informacije priporočamo strokovni človeški prevod. Za morebitna nesporazume ali napačne interpretacije, ki izhajajo iz uporabe tega prevoda, ne odgovarjamo.



