Tämän harjoituksen lopuksi osaat:
- ✅ Luoda räätälöityjä MCP-palvelimia AI Toolkitin avulla
- ✅ Määrittää ja käyttää uusinta MCP Python SDK:ta (v1.9.3)
- ✅ Asentaa ja hyödyntää MCP Inspectoria virheenkorjaukseen
- ✅ Virheenkorjata MCP-palvelimia sekä Agent Builderissa että Inspector-ympäristössä
- ✅ Ymmärtää edistyneet MCP-palvelinkehityksen työnkulut
- Lab 2 (MCP Fundamentals) suoritettuna
- VS Code, jossa AI Toolkit -laajennus asennettuna
- Python 3.10+ -ympäristö
- Node.js ja npm Inspectorin asennusta varten
Tässä harjoituksessa luot Weather MCP Serverin, joka havainnollistaa:
- Räätälöidyn MCP-palvelimen toteutusta
- Integraatiota AI Toolkit Agent Builderin kanssa
- Ammattimaisia virheenkorjaustyönkulkuja
- Modernin MCP SDK:n käyttöä
Model Context Protocolin Python SDK tarjoaa perustan räätälöityjen MCP-palvelimien rakentamiseen. Käytät versiota 1.9.3, jossa on parannetut virheenkorjausominaisuudet.
Tehokas virheenkorjaustyökalu, joka tarjoaa:
- Palvelimen reaaliaikaisen seurannan
- Työkalujen suorituksen visualisoinnin
- Verkkopyyntöjen ja -vastausten tarkastelun
- Interaktiivisen testausympäristön
- Käynnistä Agent Builder VS Codessa AI Toolkit -laajennuksen kautta
- Luo uusi agentti seuraavilla asetuksilla:
- Agentin nimi:
WeatherAgent
- Agentin nimi:
- Siirry Tools-valikkoon → Add Tool Agent Builderissa
- Valitse "MCP Server" tarjolla olevista vaihtoehdoista
- Valitse "Create A new MCP Server"
- Valitse
python-weather-mallipohja - Nimeä palvelimesi:
weather_mcp
- Avaa luotu projekti VS Codessa
- Tarkastele projektin rakennetta:
weather_mcp/ ├── src/ │ ├── __init__.py │ └── server.py ├── inspector/ │ ├── package.json │ └── package-lock.json ├── .vscode/ │ ├── launch.json │ └── tasks.json ├── pyproject.toml └── README.md
🔍 Miksi päivittää? Haluamme käyttää uusinta MCP SDK:ta (v1.9.3) ja Inspector-palvelua (0.14.0) parannettujen ominaisuuksien ja paremman virheenkorjauksen vuoksi.
Muokkaa pyproject.toml: päivitä ./code/weather_mcp/pyproject.toml
Muokkaa inspector/package.json: päivitä ./code/weather_mcp/inspector/package.json
Muokkaa inspector/package-lock.json: päivitä ./code/weather_mcp/inspector/package-lock.json
📝 Huom: Tämä tiedosto sisältää laajat riippuvuuksien määrittelyt. Alla on olennaisin rakenne – koko sisältö varmistaa riippuvuuksien oikean ratkaisun.
⚡ Täysi Package Lock: Koko package-lock.json sisältää noin 3000 riviä riippuvuuksien määrittelyjä. Yllä on avainrakenne – käytä toimitettua tiedostoa täydelliseen riippuvuuksien ratkaisuun.
Huom: Kopioi tiedosto määritettyyn polkuun korvaamaan vastaava paikallinen tiedosto
Muokkaa .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
}
]
}Muokkaa .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"
}
]
}
Konfiguraatiomuutosten jälkeen suorita seuraavat komennot:
Asenna Python-riippuvuudet:
uv syncAsenna Inspectorin riippuvuudet:
cd inspector
npm install- Paina F5 tai käytä "Debug in Agent Builder" -konfiguraatiota
- Valitse yhdistetty konfiguraatio debug-paneelista
- Odota palvelimen käynnistymistä ja Agent Builderin avautumista
- Testaa weather MCP -palvelinta luonnollisilla kielikyselyillä
Syötä kehotteeksi esimerkiksi
SYSTEM_PROMPT
You are my weather assistant
USER_PROMPT
How's the weather like in Seattle
- Käytä "Debug in Inspector" -konfiguraatiota (Edge tai Chrome)
- Avaa Inspector-käyttöliittymä osoitteessa
http://localhost:6274 - Tutki interaktiivista testausympäristöä:
- Tarkastele käytettävissä olevia työkaluja
- Testaa työkalujen suoritusta
- Seuraa verkkopyyntöjä
- Virheenkorjaa palvelimen vastauksia
Tämän harjoituksen suorittamalla olet:
- Luonut räätälöidyn MCP-palvelimen AI Toolkitin mallipohjien avulla
- Päivittänyt uusimpaan MCP SDK:hon (v1.9.3) parannetun toiminnallisuuden saamiseksi
- Määrittänyt ammattimaiset virheenkorjaustyönkulut sekä Agent Builderille että Inspectorille
- Ottanut käyttöön MCP Inspectorin interaktiiviseen palvelintestaukseen
- Hallinnut VS Code -virheenkorjausasetukset MCP-kehitystä varten
| Ominaisuus | Kuvaus | Käyttötapaus |
|---|---|---|
| MCP Python SDK v1.9.3 | Uusin protokollan toteutus | Moderni palvelinkehitys |
| MCP Inspector 0.14.0 | Interaktiivinen virheenkorjaustyökalu | Reaaliaikainen palvelintestaus |
| VS Code Debugging | Integroitu kehitysympäristö | Ammattimainen virheenkorjaus |
| Agent Builder Integration | Suora AI Toolkit -yhteys | Kokonaisvaltainen agenttitestaus |
- MCP Python SDK Documentation
- AI Toolkit Extension Guide
- VS Code Debugging Documentation
- Model Context Protocol Specification
🎉 Onnittelut! Olet suorittanut Lab 3:n onnistuneesti ja osaat nyt luoda, virheenkorjata ja ottaa käyttöön räätälöityjä MCP-palvelimia ammattimaisten kehitystyönkulkujen avulla.
Valmis soveltamaan MCP-taitojasi käytännön kehitystyönkulussa? Jatka kohtaan Moduuli 4: Käytännön MCP-kehitys – Räätälöity GitHub Clone Server, jossa:
- Rakennat tuotantovalmiin MCP-palvelimen, joka automatisoi GitHub-repositorion hallinnan
- Toteutat GitHub-repositorion kloonaustoiminnallisuuden MCP:n kautta
- Integroi räätälöidyt MCP-palvelimet VS Codeen ja GitHub Copilot Agent Modeen
- Testaat ja otat käyttöön räätälöityjä MCP-palvelimia tuotantoympäristöissä
- Opit käytännön työnkulun automaatiota kehittäjille
Vastuuvapauslauseke:
Tämä asiakirja on käännetty käyttämällä tekoälypohjaista käännöspalvelua Co-op Translator. Vaikka pyrimme tarkkuuteen, huomioithan, että automaattikäännöksissä saattaa esiintyä virheitä tai epätarkkuuksia. Alkuperäistä asiakirjaa sen alkuperäiskielellä tulee pitää virallisena lähteenä. Tärkeissä tiedoissa suositellaan ammattimaista ihmiskäännöstä. Emme ole vastuussa tämän käännöksen käytöstä aiheutuvista väärinymmärryksistä tai tulkinnoista.



