Prejšnji primer prikazuje, kako uporabiti lokalni .NET projekt z vrsto stdio. In kako zagnati strežnik lokalno v vsebniku. To je dobra rešitev v mnogih primerih. Vendar pa je včasih koristno imeti strežnik zagnan na daljavo, na primer v oblaku. Tu pride v poštev vrsta 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 gre večinoma za enako kodo kot v prejšnjem primeru. Edina razlika je, da uporabljamo drugačno knjižnico ModelContextProtocol.AspNetCore za upravljanje HTTP zahtev. In metodo IsPrime spremenimo v zasebno, samo da pokažemo, da lahko v kodi imate zasebne metode. Ostala koda je enaka 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. Za zagon strežnika ni obvezno, vendar je dobra praksa, da je vključeno v vašo rešitev.
-
V VS Code (z razširitvijo C# DevKit) pojdite v imenik
04-PracticalImplementation/samples/csharp. -
Zaženite naslednji ukaz za zagon strežnika:
dotnet watch run --project ./src/AppHost
-
Ko spletni brskalnik odpre nadzorno ploščo .NET Aspire, si zapomnite URL
http. 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 zaženite naslednji ukaz:
npx @modelcontextprotocol/inspector http://localhost:5058- Izberite
Streamable HTTPas the Transport type. - In the Url field, enter the URL of the server noted earlier, and append
/mcp. Moral bi bitihttp(nehttps) something likehttp://localhost:5058/mcp. - select the Connect button.
A nice thing about the Inspector is that it provide a nice visibility on what is happening.
- Try listing the available tools
- Try some of them, it should works just like before.
To use the Streamable HTTP transport with GitHub Copilot Chat, change the configuration of the calc-mcp strežnik, ki smo ga prej ustvarili, da izgleda tako:
Naredite nekaj testov:
- Vprašajte za "3 praštevila po 6780". Opazujte, kako Copilot uporabi nova orodja
NextFivePrimeNumbersin vrne le 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 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 ter v GitHub Copilot Chat.
// .vscode/mcp.json
{
"servers": {
"calc-mcp": {
"type": "http",
"url": "https://calc-mcp.gentleriver-3977fbcf.australiaeast.azurecontainerapps.io/mcp"
}
}
}Preizkušamo različne vrste 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 prosimo, da upoštevate, 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. Ne odgovarjamo za morebitna nesporazume ali napačne interpretacije, ki izhajajo iz uporabe tega prevoda.


