Praktisk implementering er der hvor kraften i Model Context Protocol (MCP) blir håndgripelig. Selv om det er viktig å forstå teorien og arkitekturen bak MCP, oppstår den virkelige verdien når du anvender disse konseptene for å bygge, teste og distribuere løsninger som løser reelle problemer. Dette kapittelet bygger bro mellom konseptuell kunnskap og praktisk utvikling, og veileder deg gjennom prosessen med å realisere MCP-baserte applikasjoner.
Enten du utvikler intelligente assistenter, integrerer AI i forretningsprosesser, eller bygger skreddersydde verktøy for databehandling, gir MCP et fleksibelt grunnlag. Dens språkagnostiske design og offisielle SDK-er for populære programmeringsspråk gjør det tilgjengelig for et bredt spekter av utviklere. Ved å utnytte disse SDK-ene kan du raskt lage prototyper, iterere og skalere løsningene dine på tvers av ulike plattformer og miljøer.
I de følgende seksjonene finner du praktiske eksempler, eksempel-kode og distribusjonsstrategier som viser hvordan du implementerer MCP i C#, Java, TypeScript, JavaScript og Python. Du vil også lære hvordan du feilsøker og tester MCP-servere, administrerer API-er, og distribuerer løsninger til skyen ved hjelp av Azure. Disse praktiske ressursene er laget for å akselerere læringen din og hjelpe deg å bygge robuste, produksjonsklare MCP-applikasjoner med selvtillit.
Denne leksjonen fokuserer på praktiske aspekter ved MCP-implementering på tvers av flere programmeringsspråk. Vi skal utforske hvordan man bruker MCP SDK-er i C#, Java, TypeScript, JavaScript og Python for å bygge robuste applikasjoner, feilsøke og teste MCP-servere, og lage gjenbrukbare ressurser, prompts og verktøy.
Etter denne leksjonen skal du kunne:
- Implementere MCP-løsninger ved hjelp av offisielle SDK-er i ulike programmeringsspråk
- Feilsøke og teste MCP-servere systematisk
- Opprette og bruke serverfunksjoner (Ressurser, Prompts og Verktøy)
- Designe effektive MCP-arbeidsflyter for komplekse oppgaver
- Optimalisere MCP-implementeringer for ytelse og pålitelighet
Model Context Protocol tilbyr offisielle SDK-er for flere språk:
Denne seksjonen gir praktiske eksempler på implementering av MCP på tvers av flere programmeringsspråk. Du finner eksempel-kode i samples-mappen organisert etter språk.
Repositoryet inkluderer eksempelimplementeringer i følgende språk:
Hvert eksempel viser sentrale MCP-konsepter og implementeringsmønstre for det spesifikke språket og økosystemet.
MCP-servere kan implementere en hvilken som helst kombinasjon av disse funksjonene:
Ressurser gir kontekst og data som brukeren eller AI-modellen kan bruke:
- Dokumentarkiver
- Kunnskapsbaser
- Strukturerte datakilder
- Filsystemer
Prompts er malbaserte meldinger og arbeidsflyter for brukere:
- Ferdigdefinerte samtalemaler
- Veiledede interaksjonsmønstre
- Spesialiserte dialogstrukturer
Verktøy er funksjoner som AI-modellen kan utføre:
- Verktøy for databehandling
- Integrasjoner med eksterne API-er
- Beregningskapasiteter
- Søke-funksjonalitet
Det offisielle C# SDK-repositoryet inneholder flere eksempelimplementeringer som demonstrerer ulike aspekter ved MCP:
- Basic MCP Client: Enkelt eksempel som viser hvordan man oppretter en MCP-klient og kaller verktøy
- Basic MCP Server: Minimal serverimplementering med grunnleggende verktøyregistrering
- Advanced MCP Server: Fullverdig server med verktøyregistrering, autentisering og feilhåndtering
- ASP.NET-integrasjon: Eksempler som viser integrasjon med ASP.NET Core
- Verktøysimplementeringsmønstre: Ulike mønstre for implementering av verktøy med varierende kompleksitet
MCP C# SDK er i forhåndsvisning, og API-er kan endres. Vi vil kontinuerlig oppdatere denne bloggen etter hvert som SDK-en utvikler seg.
For komplette C# implementeringseksempler, besøk det offisielle C# SDK-eksempelsrepositoryet
Java SDK tilbyr robuste MCP-implementeringsmuligheter med bedriftsnivåfunksjoner.
- Integrasjon med Spring Framework
- Sterk typesikkerhet
- Støtte for reaktiv programmering
- Omfattende feilhåndtering
For et komplett Java-implementeringseksempel, se Java-eksempel i eksempelmappen.
JavaScript SDK gir en lettvekts og fleksibel tilnærming til MCP-implementering.
- Støtte for Node.js og nettleser
- Promise-basert API
- Enkel integrasjon med Express og andre rammeverk
- WebSocket-støtte for streaming
For et komplett JavaScript-implementeringseksempel, se JavaScript-eksempel i eksempelmappen.
Python SDK tilbyr en pythonisk tilnærming til MCP-implementering med utmerket integrasjon mot ML-rammeverk.
- Async/await-støtte med asyncio
- Integrasjon med Flask og FastAPI
- Enkel verktøyregistrering
- Naturlig integrasjon med populære ML-biblioteker
For et komplett Python-implementeringseksempel, se Python-eksempel i eksempelmappen.
Azure API Management er en god løsning for hvordan vi kan sikre MCP-servere. Ideen er å plassere en Azure API Management-instans foran MCP-serveren din og la den håndtere funksjoner du sannsynligvis ønsker, som:
- ratebegrensning
- tokenhåndtering
- overvåking
- lastbalansering
- sikkerhet
Her er et Azure-eksempel som gjør nettopp dette, altså oppretter en MCP-server og sikrer den med Azure API Management.
Se hvordan autorisasjonsflyten skjer i bildet nedenfor:
I bildet over skjer følgende:
- Autentisering/autorisasjon skjer via Microsoft Entra.
- Azure API Management fungerer som en gateway og bruker policyer for å styre og administrere trafikk.
- Azure Monitor logger alle forespørsler for videre analyse.
La oss se nærmere på autorisasjonsflyten:
Lær mer om MCP Authorization specification
La oss se om vi kan distribuere eksemplet vi nevnte tidligere:
-
Klon repoet
git clone https://github.com/Azure-Samples/remote-mcp-apim-functions-python.git cd remote-mcp-apim-functions-python -
Registrer
Microsoft.Appresource provider.- If you are using Azure CLI, run
az provider register --namespace Microsoft.App --wait. - If you are using Azure PowerShell, run
Register-AzResourceProvider -ProviderNamespace Microsoft.App. Then run(Get-AzResourceProvider -ProviderNamespace Microsoft.App).RegistrationStateog vent litt før du sjekker om registreringen er fullført.
- If you are using Azure CLI, run
-
Kjør denne azd-kommandoen for å provisionere API Management-tjenesten, funksjonsappen (med kode) og alle andre nødvendige Azure-ressurser
azd up
Denne kommandoen skal distribuere alle skyressursene på Azure
-
I et nytt terminalvindu, installer og kjør MCP Inspector
npx @modelcontextprotocol/inspector
Du skal se et grensesnitt som ligner på:
-
CTRL-klikk for å åpne MCP Inspector webappen fra URL-en som vises i appen (f.eks. http://127.0.0.1:6274/#resources)
-
Sett transporttypen til
SSE -
Set the URL to your running API Management SSE endpoint displayed after
azd upog Koble til:https://<apim-servicename-from-azd-output>.azure-api.net/mcp/sse
-
List verktøy. Klikk på et verktøy og Kjør verktøy.
Hvis alle trinnene har fungert, skal du nå være koblet til MCP-serveren og ha klart å kalle et verktøy.
Remote-mcp-functions: Dette settet med repositories er en hurtigstartmal for å bygge og distribuere tilpassede fjern-MCP (Model Context Protocol) servere ved bruk av Azure Functions med Python, C# .NET eller Node/TypeScript.
Eksemplene gir en komplett løsning som lar utviklere:
- Bygge og kjøre lokalt: Utvikle og feilsøke en MCP-server på en lokal maskin
- Distribuere til Azure: Enkel distribusjon til skyen med en enkel azd up-kommando
- Koble til fra klienter: Koble til MCP-serveren fra ulike klienter, inkludert VS Codes Copilot agent-modus og MCP Inspector-verktøyet
- Sikkerhet by design: MCP-serveren sikres ved bruk av nøkler og HTTPS
- Autentiseringsmuligheter: Støtter OAuth med innebygd autentisering og/eller API Management
- Nettverksisolasjon: Mulighet for nettverksisolasjon ved bruk av Azure Virtual Networks (VNET)
- Serverløs arkitektur: Utnytter Azure Functions for skalerbar, hendelsesdrevet kjøring
- Lokal utvikling: Omfattende støtte for lokal utvikling og feilsøking
- Enkel distribusjon: Strømlinjeformet distribusjonsprosess til Azure
Repositoryet inneholder alle nødvendige konfigurasjonsfiler, kildekode og infrastrukturdefinisjoner for raskt å komme i gang med en produksjonsklar MCP-serverimplementering.
-
Azure Remote MCP Functions Python - Eksempelimplementering av MCP med Azure Functions i Python
-
Azure Remote MCP Functions .NET - Eksempelimplementering av MCP med Azure Functions i C# .NET
-
Azure Remote MCP Functions Node/Typescript - Eksempelimplementering av MCP med Azure Functions i Node/TypeScript.
- MCP SDK-er gir språkspesifikke verktøy for å implementere robuste MCP-løsninger
- Feilsøkings- og testprosessen er avgjørende for pålitelige MCP-applikasjoner
- Gjenbrukbare prompt-maler muliggjør konsistente AI-interaksjoner
- Godt designede arbeidsflyter kan orkestrere komplekse oppgaver ved bruk av flere verktøy
- Implementering av MCP-løsninger krever hensyn til sikkerhet, ytelse og feilhåndtering
Design en praktisk MCP-arbeidsflyt som løser et reelt problem innen ditt område:
- Identifiser 3-4 verktøy som ville være nyttige for å løse dette problemet
- Lag et arbeidsflytdiagram som viser hvordan disse verktøyene samhandler
- Implementer en grunnleggende versjon av ett av verktøyene i ditt foretrukne språk
- Lag en prompt-mal som hjelper modellen med å bruke verktøyet ditt effektivt
Neste: Avanserte emner
Ansvarsfraskrivelse:
Dette dokumentet er oversatt ved hjelp av AI-oversettelsestjenesten Co-op Translator. Selv om vi streber etter nøyaktighet, vennligst vær oppmerksom på at automatiske oversettelser kan inneholde feil eller unøyaktigheter. Det opprinnelige dokumentet på originalspråket skal anses som den autoritative kilden. For kritisk informasjon anbefales profesjonell menneskelig oversettelse. Vi er ikke ansvarlige for misforståelser eller feiltolkninger som oppstår ved bruk av denne oversettelsen.


