🔧 Moodul 3: Täiustatud MCP arendus Microsoft Foundry Toolkitiga
🎯 Õpieesmärgid
Selle labori lõpuks oskad:
- ✅ Luua kohandatud MCP servereid Microsoft Foundry Toolkitiga
- ✅ Konfigureerida ja kasutada uusimat MCP Python SDK-d (v1.9.3)
- ✅ Seadistada ja kasutada MCP Inspectorit silumiseks
- ✅ Siluda MCP servereid nii Agent Builderi kui ka Inspector keskkondades
- ✅ Mõista täiustatud MCP serveri arendusvooge
📋 Eeltingimused
- Labori 2 (MCP põhitõed) lõpetamine
- VS Code koos Microsoft Foundry Toolkit laiendusega
- Python 3.10+ keskkond
- Node.js ja npm Inspector seadistamiseks
🏗️ Mida sa ehitad
Selles laboris lood Ilma MCP serveri, mis demonstreerib:
- Kohandatud MCP serveri rakendust
- Integratsiooni Microsoft Foundry Toolkit Agent Builderiga
- Professionaalseid silumisvooge
- Moodsaid MCP SDK kasutusmustreid
🔧 Põhikomponentide ülevaade
🐍 MCP Python SDK
Model Context Protocol Python SDK pakub vundamenti kohandatud MCP serverite ehitamiseks. Kasutad versiooni 1.9.3 koos täiustatud silumisvõimalustega.
🔍 MCP Inspector
Võimas silumistööriist, mis pakub:
- Reaalajas serveri jälgimist
- Tööriistade täitmise visualiseerimist
- Võrgu päringute/vastuste kontrolli
- Interaktiivne testimise keskkond
📖 Samm-sammult rakendamine
Samm 1: Loo WeatherAgent Agent Builderis
- Lauka Agent Builder VS Code’is Microsoft Foundry Toolkit laienduse kaudu
- Loo uus agent järgmiste seadistustega:
- Agent Nimi:
WeatherAgent
- Agent Nimi:
Samm 2: Algata MCP Serveri Projekt
- Mine menüüsse Tools → Add Tool Agent Builderis
- Vali "MCP Server" saadaval olevate valikute seast
- Vali "Create A new MCP Server"
- Vali
python-weathermall - Nimeta oma server:
weather_mcp
Samm 3: Ava ja vaata projekti
- Ava loodud projekt VS Code’is
- Kontrolli projekti struktuuri:
weather_mcp/ ├── src/ │ ├── __init__.py │ └── server.py ├── inspector/ │ ├── package.json │ └── package-lock.json ├── .vscode/ │ ├── launch.json │ └── tasks.json ├── pyproject.toml └── README.md
Samm 4: Uuenda uusimale MCP SDK-le
🔍 Miks uuendada? Soovime kasutada uusimat MCP SDK-d (v1.9.3) ja Inspectori teenust (0.14.0), et saada täiendatud funktsioone ja paremat silumist.
4a. Uuenda Python sõltuvusi
Muuda pyproject.toml: uuenda ./code/weather_mcp/pyproject.toml
4b. Uuenda Inspectori konfiguratsiooni
Muuda inspector/package.json: uuenda ./code/weather_mcp/inspector/package.json
4c. Uuenda Inspectori sõltuvusi
Muuda inspector/package-lock.json: uuenda ./code/weather_mcp/inspector/package-lock.json
📝 Märkus: See fail sisaldab ulatuslikke sõltuvuste definitsioone. Allpool on põhistruktuur – täielik sisu tagab õige sõltuvuste lahenduse.
⚡ Täielik Package Lock: Täielik package-lock.json sisaldab umbes 3000 rida sõltuvuste definitsioone. Ülal on näidatud peamine struktuur – kasuta lisatud faili täielikuks sõltuvuste lahendamiseks.
Samm 5: Konfigureeri VS Code silumine
Märkus: Palun kopeeri fail määratud asukohta, et asendada olemasolev kohalik fail
5a. Uuenda käivituskonfiguratsiooni
Muuda .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
}
]
}
Muuda .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"
}
]
}
🚀 Käivita ja testi oma MCP serverit
Samm 6: Paigalda sõltuvused
Pärast konfiguratsiooni muudatusi käivita järgnevad käsud:
Paigalda Python sõltuvused:
uv sync
Paigalda Inspectori sõltuvused:
cd inspector
npm install
Samm 7: Silu Agent Builderiga
- Vajuta F5 või kasuta "Debug in Agent Builder" konfiguratsiooni
- Vali kogumkonfiguratsioon silumispaneelist
- Oota, kuni server käivitub ja Agent Builder avaneb
- Testi oma ilma MCP serverit loomulike keelepäringutega
Sisendi prompt näeb välja selline
SYSTEM_PROMPT
You are my weather assistant
USER_PROMPT
How's the weather like in Seattle
Samm 8: Silu MCP Inspectoriga
- Kasuta "Debug in Inspector" konfiguratsiooni (Edge või Chrome)
- Ava Inspectori liides aadressil
http://localhost:6274 - Uuri interaktiivset testimise keskkonda:
- Vaata saadaval olevaid tööriistu
- Testi tööriistade täitmist
- Jälgi võrgupäringuid
- Silu serveri vastuseid
🎯 Peamised õpitulemused
Selle labori lõpetamisega oled:
- Loonud kohandatud MCP serveri Microsoft Foundry Toolkit mallide abil
- Uuendanud uusimale MCP SDK-le (v1.9.3) paremate funktsioonide jaoks
- Konfigureerinud professionaalsed silumisvood nii Agent Builderis kui Inspectoris
- Seadistanud MCP Inspectori interaktiivseks serveri testimiseks
- Valdanud VS Code silumisconfiguratsioone MCP arenduse jaoks
🔧 Läbitud täiustatud funktsioonid
| Funktsioon | Kirjeldus | Kasutusjuhtum |
|---|---|---|
| MCP Python SDK v1.9.3 | Viimane protokollirakendus | Moodne serveriarendus |
| MCP Inspector 0.14.0 | Interaktiivne silumistööriist | Reaalajas serveri testimine |
| VS Code Debugging | Integreeritud arenduskeskkond | Professionaalne silumisvoog |
| Agent Builderi integratsioon | Otsene Microsoft Foundry Toolkit ühendus | Lõppkasutaja agendi testimine |
📚 Täiendavad ressursid
- MCP Python SDK dokumentatsioon
- Microsoft Foundry Toolkit laienduse juhend
- VS Code silumisjuhend
- Model Context Protocol spetsifikatsioon
🎉 Palju õnne! Sa lõpetasid edukalt Labor 3 ja oskad nüüd luua, siluda ning juurutada kohandatud MCP servereid professionaalsete arendusvoogude abil.
🔜 Jätka järgmise mooduliga
Kas oled valmis rakendama oma MCP oskusi pärismaailma arendusvoos? Jätka Moodul 4: Praktiline MCP arendus - Kohandatud GitHub klooniserv, kus:
- Ehitate tootmisvalmis MCP serveri, mis automatiseerib GitHub repositooriumi toiminguid
- Rakendad GitHub repositooriumite kloonimise funktsionaalsust MCP kaudu
- Integreerid kohandatud MCP serverid VS Code’i ja GitHub Copilot Agent Mode’iga
- Testid ja juurutad kohandatud MCP servereid tootmiskeskkondades
- Õpid praktilisi arendusprotsesside automatiseerimise töövooge arendajatele
Lahtiütlus: See dokument on tõlgitud kasutades AI tõlketeenust Co-op Translator. Kuigi me püüdleme täpsuse poole, palun pange tähele, et automatiseeritud tõlgetes võib esineda vigu või ebatäpsusi. Originaaldokument selle emakeeles tuleks pidada autoriteetseks allikaks. Olulise teabe puhul soovitatakse kasutada professionaalset inimtõlget. Me ei vastuta selle tõlkega seotud eksimustest või valesti mõistmistest.



