Predchádzajúci príklad ukazuje, ako použiť lokálny .NET projekt s typom stdio. A ako spustiť server lokálne v kontejnery. Toto je dobré riešenie v mnohých situáciách. Avšak môže byť užitočné mať server bežiaci vzdialene, napríklad v cloudovom prostredí. Práve tu prichádza na rad typ http.
Ak sa pozriete na riešenie v priečinku 04-PracticalImplementation, môže sa zdať oveľa zložitejšie ako predchádzajúce. Ale v skutočnosti to tak nie je. Ak sa pozriete bližšie na projekt src/Calculator, uvidíte, že ide väčšinou o rovnaký kód ako v predchádzajúcom príklade. Jediný rozdiel je, že používame inú knižnicu ModelContextProtocol.AspNetCore na spracovanie HTTP požiadaviek. A zmeníme metódu IsPrime na súkromnú, len aby sme ukázali, že vo vašom kóde môžete mať súkromné metódy. Zvyšok kódu je rovnaký ako predtým.
Ostatné projekty sú z .NET Aspire. Mať .NET Aspire v riešení zlepší skúsenosť vývojára počas vývoja a testovania a pomôže s pozorovateľnosťou. Nie je to povinné na spustenie servera, ale je to dobrá prax mať to vo vašom riešení.
-
Vo VS Code (s rozšírením C# DevKit) prejdite do adresára
04-PracticalImplementation/samples/csharp. -
Spustite nasledujúci príkaz na spustenie servera:
dotnet watch run --project ./src/AppHost
-
Keď sa v prehliadači otvorí dashboard .NET Aspire, všimnite si
httpURL. Malo by to byť niečo akohttp://localhost:5058/.
Ak máte Node.js verzie 22.7.5 alebo vyššej, môžete použiť MCP Inspector na testovanie vášho servera.
Spustite server a v termináli spustite nasledujúci príkaz:
npx @modelcontextprotocol/inspector http://localhost:5058- Vyberte
Streamable HTTPako typ transportu. - Do poľa Url zadajte URL servera, ktorú ste si poznamenali, a pridajte
/mcp. Malo by to byťhttp(niehttps), napríkladhttp://localhost:5058/mcp. - Kliknite na tlačidlo Connect.
Výhodou Inspektora je, že poskytuje dobrý prehľad o tom, čo sa deje.
- Skúste zobraziť zoznam dostupných nástrojov
- Vyskúšajte niektoré z nich, mali by fungovať rovnako ako predtým.
Ak chcete použiť Streamable HTTP transport s GitHub Copilot Chat, zmeňte konfiguráciu servera calc-mcp, ktorý ste vytvorili predtým, takto:
Vykonajte niekoľko testov:
- Požiadajte o „3 prvočísla po 6780“. Všimnite si, že Copilot použije nové nástroje
NextFivePrimeNumbersa vráti len prvé 3 prvočísla. - Požiadajte o „7 prvočísel po 111“, aby ste videli, čo sa stane.
- Požiadajte o „John má 24 lízaniek a chce ich rozdeliť medzi svoje 3 deti. Koľko lízaniek dostane každé dieťa?“, aby ste videli, čo sa stane.
Nasadíme server do Azure, aby ho mohlo používať viac ľudí.
V termináli prejdite do priečinka 04-PracticalImplementation/samples/csharp a spustite nasledujúci príkaz:
azd upPo dokončení nasadenia by ste mali vidieť správu ako táto:
Skopírujte URL a použite ju v MCP Inspector a v GitHub Copilot Chat.
// .vscode/mcp.json
{
"servers": {
"calc-mcp": {
"type": "http",
"url": "https://calc-mcp.gentleriver-3977fbcf.australiaeast.azurecontainerapps.io/mcp"
}
}
}Vyskúšali sme rôzne typy transportu a testovacie nástroje. Tiež sme nasadili váš MCP server do Azure. Ale čo ak náš server potrebuje prístup k súkromným zdrojom? Napríklad databáze alebo súkromnému API? V ďalšej kapitole uvidíme, ako môžeme zlepšiť bezpečnosť nášho servera.
Vyhlásenie o zodpovednosti:
Tento dokument bol preložený pomocou AI prekladateľskej služby Co-op Translator. Aj keď sa snažíme o presnosť, prosím, majte na pamäti, že automatizované preklady môžu obsahovať chyby alebo nepresnosti. Originálny dokument v jeho pôvodnom jazyku by mal byť považovaný za autoritatívny zdroj. Pre kritické informácie sa odporúča profesionálny ľudský preklad. Nie sme zodpovední za akékoľvek nedorozumenia alebo nesprávne interpretácie vyplývajúce z použitia tohto prekladu.


