Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Model Context Protocol (MCP) is een open protocol dat is ontworpen om integraties tussen AI-apps en externe hulpprogramma's en gegevensbronnen te standaardiseren. Door MCP te gebruiken, kunnen ontwikkelaars de mogelijkheden van AI-modellen verbeteren, zodat ze nauwkeurigere, relevantere en contextbewuste reacties kunnen produceren.
Met MCP kunt u uw LLM bijvoorbeeld verbinden met resources zoals:
- Documentdatabases of opslagdiensten.
- Web-API's die zakelijke gegevens of logica beschikbaar maken.
- Hulpprogramma's voor het beheren van bestanden of het uitvoeren van lokale taken op het apparaat van een gebruiker.
Veel Microsoft-producten bieden al ondersteuning voor MCP, waaronder:
U kunt de MCP C#-SDK gebruiken om snel uw eigen MCP-integraties te maken en tussen verschillende AI-modellen te schakelen zonder belangrijke codewijzigingen.
MCP-clientserverarchitectuur
MCP maakt gebruik van een client-serverarchitectuur waarmee een AI-app (de host) verbinding kan maken met meerdere MCP-servers via MCP-clients:
- MCP-hosts: AI-hulpprogramma's, code-editors of andere software die hun AI-modellen verbeteren met behulp van contextuele resources via MCP. GitHub Copilot in Visual Studio Code kan bijvoorbeeld fungeren als een MCP-host en MCP-clients en -servers gebruiken om de mogelijkheden uit te breiden.
- MCP-clients: clients die door de hosttoepassing worden gebruikt om verbinding te maken met MCP-servers om contextuele gegevens op te halen.
- MCP-servers: Services die mogelijkheden beschikbaar maken voor clients via MCP. Een MCP-server kan bijvoorbeeld een abstractie bieden via een REST API of lokale gegevensbron om zakelijke gegevens aan het AI-model te leveren.
In het volgende diagram ziet u deze architectuur:
MCP-client en -server kunnen een set standaardberichten uitwisselen:
| Bericht | Beschrijving |
|---|---|
InitializeRequest |
Deze aanvraag wordt door de client naar de server verzonden wanneer deze voor het eerst verbinding maakt, waarin wordt gevraagd om te beginnen met initialisatie. |
ListToolsRequest |
Verzonden door de client om een lijst aan te vragen met hulpprogramma's die de server heeft. |
CallToolRequest |
Wordt door de client gebruikt om een hulpprogramma aan te roepen dat door de server wordt geleverd. |
ListResourcesRequest |
Verzonden door de client om een lijst met beschikbare serverbronnen aan te vragen. |
ReadResourceRequest |
Verzonden door de client naar de server om een specifieke resource-URI te lezen. |
ListPromptsRequest |
Verzonden door de client om een lijst met beschikbare prompts en promptsjablonen van de server aan te vragen. |
GetPromptRequest |
Wordt door de client gebruikt om een prompt van de server te krijgen. |
PingRequest |
Een ping, uitgegeven door de server of de client, om te controleren of de andere partij nog actief is. |
CreateMessageRequest |
Een aanvraag van de server om een LLM te samplen via de client. De client heeft volledige discretie over welk model moet worden geselecteerd. De klant moet de gebruiker ook informeren voordat hij begint met het nemen van steekproeven, zodat de gebruiker de aanvraag kan inspecteren (menselijke tussenkomst) en beslissen of deze moet worden goedgekeurd. |
SetLevelRequest |
Een aanvraag van de client naar de server om logboekregistratie in te schakelen of aan te passen. |
Ontwikkelen met de MCP C#SDK
Als .NET-ontwikkelaar kunt u MCP gebruiken door MCP-clients en -servers te maken om uw apps te verbeteren met aangepaste integraties. MCP vermindert de complexiteit die betrokken is bij het verbinden van een AI-model met verschillende hulpprogramma's, services en gegevensbronnen.
De officiële MCP C#-SDK is beschikbaar via NuGet en stelt u in staat MCP-clients en -servers te bouwen voor .NET-apps en -bibliotheken. De SDK wordt onderhouden via samenwerking tussen Microsoft, Antropic en de open protocolorganisatie MCP.
Voeg de MCP C#SDK toe aan uw project om aan de slag te gaan:
dotnet add package ModelContextProtocol --prerelease
In plaats van unieke connectors te bouwen voor elk integratiepunt, kunt u vaak gebruikmaken van vooraf samengestelde integraties van verschillende providers, zoals GitHub en Docker:
Integratie met Microsoft.Extensions.AI
De MCP C#-SDK is afhankelijk van de Microsoft.Extensions.AI bibliotheken voor het afhandelen van verschillende AI-interacties en -taken. Deze extensiebibliotheken bieden kerntypen en abstracties voor het werken met AI-services, zodat ontwikkelaars zich kunnen richten op coderen op basis van conceptuele AI-mogelijkheden in plaats van op specifieke platforms of provider-implementaties.
Bekijk de MCP C#SDK-afhankelijkheden op de NuGet-pakketpagina.
Meer .NET MCP-ontwikkelresources
Er zijn verschillende hulpprogramma's, services en leerbronnen beschikbaar in de .NET- en Azure-ecosystemen waarmee u MCP-clients en -servers kunt bouwen of kunt integreren met bestaande MCP-servers.
Ga aan de slag met de volgende ontwikkelhulpprogramma's:
- Agent Framework biedt ondersteuning voor integratie met MCP-servers, zodat uw agents toegang hebben tot externe hulpprogramma's en services. Agent Framework werkt met de officiële MCP C#SDK om agents in staat te stellen verbinding te maken met MCP-servers, beschikbare hulpprogramma's op te halen en te gebruiken via functie-aanroepen om agentmogelijkheden uit te breiden met externe gegevensbronnen en -services.
- Externe MCP-servers van Azure Functions combineren MCP-standaarden met de flexibele architectuur van Azure Functions. Ga naar de voorbeeldopslagplaats voor externe MCP-functies voor codevoorbeelden.
- Azure MCP Server implementeert de MCP-specificatie om AI-agents naadloos te verbinden met belangrijke Azure-services zoals Azure Storage, Cosmos DB en meer.