Prejšnji primer prikazuje, kako uporabiti lokalni .NET projekt s tipom stdio. In kako zagnati strežnik lokalno v vsebniku. To je dobra rešitev v mnogih primerih. Vendar pa je lahko koristno, da strežnik teče na daljavo, na primer v oblaku. Tu pride v poštev tip http.
Če pogledamo rešitev v mapi 04-PracticalImplementation, se lahko zdi veliko bolj zapletena kot prejšnja. A v resnici ni. Če natančno pogledate projekt src/Calculator, boste videli, da je večinoma ista koda kot v prejšnjem primeru. Edina razlika je, da uporabljamo drugo knjižnico ModelContextProtocol.AspNetCore za obdelavo HTTP zahtevkov. Prav tako spremenimo metodo IsPrime v zasebno, da pokažemo, da lahko imate v kodi zasebne metode. Preostanek kode je enak kot prej.
Drugi projekti so iz .NET Aspire. Vključitev .NET Aspire v rešitev izboljša izkušnjo razvijalca med razvojem in testiranjem ter pomaga pri opazovanju. Ni nujno za zagon strežnika, vendar je dobra praksa, da ga imate v rešitvi.
-
V VS Code (z razširitvijo C# DevKit) pojdite v mapo
04-PracticalImplementation/samples/csharp. -
Zaženite naslednji ukaz za zagon strežnika:
dotnet watch run --project ./src/AppHost
-
Ko se v spletnem brskalniku odpre nadzorna plošča .NET Aspire, si zapomnite
httpURL. Moral bi biti nekaj takega kothttp://localhost:5058/.
Če imate Node.js 22.7.5 ali novejši, lahko uporabite MCP Inspector za testiranje vašega strežnika.
Zaženite strežnik in v terminalu izvedite naslednji ukaz:
npx @modelcontextprotocol/inspector http://localhost:5058- Izberite
Streamable HTTPkot tip transporta. - V polje Url vnesite prej zabeleženi URL strežnika in dodajte
/mcp. Moral bi bitihttp(nehttps), nekaj takega kothttp://localhost:5058/mcp. - Kliknite gumb Connect.
Lepa lastnost Inspectorja je, da omogoča dober vpogled v dogajanje.
- Poskusite izpisati razpoložljiva orodja
- Preizkusite nekaj izmed njih, delovati bi moralo kot prej.
Za uporabo Streamable HTTP transporta z GitHub Copilot Chat spremenite konfiguracijo strežnika calc-mcp, ki ste ga ustvarili prej, tako, da bo videti takole:
Naredite nekaj testov:
- Vprašajte za "3 praštevila po 6780". Opazujte, kako Copilot uporabi nova orodja
NextFivePrimeNumbersin vrne samo prva 3 praštevila. - Vprašajte za "7 praštevil po 111", da vidite, kaj se zgodi.
- Vprašajte "John ima 24 lizik in jih želi razdeliti med svoje 3 otroke. Koliko lizik dobi vsak otrok?", da vidite, kaj se zgodi.
Namestimo strežnik v Azure, da ga lahko uporablja več ljudi.
V terminalu pojdite v mapo 04-PracticalImplementation/samples/csharp in zaženite naslednji ukaz:
azd upKo je namestitev končana, bi morali videti sporočilo, kot je to:
Vzemite URL in ga uporabite v MCP Inspectorju in GitHub Copilot Chatu.
// .vscode/mcp.json
{
"servers": {
"calc-mcp": {
"type": "http",
"url": "https://calc-mcp.gentleriver-3977fbcf.australiaeast.azurecontainerapps.io/mcp"
}
}
}Preizkušamo različne tipe transporta in orodja za testiranje. Prav tako namestimo vaš MCP strežnik v Azure. Kaj pa, če naš strežnik potrebuje dostop do zasebnih virov? Na primer baze podatkov ali zasebnega API-ja? V naslednjem poglavju bomo videli, kako lahko izboljšamo varnost našega strežnika.
Omejitev odgovornosti:
Ta dokument je bil preveden z uporabo AI prevajalske storitve Co-op Translator. Čeprav si prizadevamo za natančnost, vas opozarjamo, da avtomatizirani prevodi lahko vsebujejo napake ali netočnosti. Izvirni dokument v njegovem izvirnem jeziku velja za avtoritativni vir. Za ključne informacije priporočamo strokovni človeški prevod. Za morebitna nesporazume ali napačne interpretacije, ki izhajajo iz uporabe tega prevoda, ne odgovarjamo.


