Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A Model Context Protocol (MCP) egy nyílt szabvány, amely lehetővé teszi, hogy az AI-modellek egységes felületen kommunikáljanak a külső eszközökkel és szolgáltatásokkal. A Visual Studióban az MCP-támogatás javítja a GitHub Copilot-ügynök üzemmódját azáltal, hogy lehetővé teszi bármely MCP-kompatibilis kiszolgáló csatlakoztatását az ügynöki kódolási munkafolyamathoz.
Ez a cikk végigvezeti az MCP-kiszolgálók beállításán és az ügynök módú eszközök Visual Studióban való használatával.
Előfeltételek
- A Visual Studio 2022 17.14-es vagy újabb verziója. Nagyon ajánljuk a 17.14 legújabb karbantartási kiadását, mert minden kiadás mcp-funkciókat ad hozzá.
Az MCP és a Visual Studio kiterjesztése a GitHub Copilot-ügynökre
A Visual Studio MCP-támogatása az alábbiak szerint működik:
- Az MCP-ügyfelek, például a Visual Studio, csatlakoznak az MCP-kiszolgálókhoz, és műveleteket kérnek az AI-modell nevében.
- Az MCP-kiszolgálók egy vagy több olyan eszközt biztosítanak, amely egy jól definiált felületen keresztül tesz elérhetővé bizonyos funkciókat.
- A protokoll meghatározza az ügyfelek és kiszolgálók közötti kommunikáció üzenetformátumát, beleértve az eszközfelderítést, a meghívást és a válaszkezelést.
Egy fájlrendszer MCP-kiszolgálója például eszközöket biztosíthat a fájlok és könyvtárak olvasásához, írásához vagy kereséséhez. A hivatalos GitHub MCP-kiszolgáló eszközöket kínál az adattárak listázásához, lekéréses kérelmek létrehozásához vagy a problémák kezeléséhez. Az MCP-kiszolgálók helyileg futtathatók a számítógépen, vagy távolról üzemeltethetők. A Visual Studio mindkét konfigurációt támogatja.
Az interakció szabványosításával az MCP szükségtelenné teszi az egyes AI-modellek és az egyes eszközök közötti egyéni integrációt. Ezután kibővítheti az AI-asszisztens képességeit úgy, hogy egyszerűen új MCP-kiszolgálókat ad hozzá a munkaterülethez. További információ az MCP specifikációjáról.
Konfigurációs példa GitHub MCP-kiszolgálóval
Az alábbi útmutatóhoz a 17.14.9-es vagy újabb verzió szükséges.
Új fájl létrehozása:
<SOLUTIONDIR>\.mcp.jsonvagy%USERPROFILE%\.mcp.json. Javasoljuk, hogy a Visual Studióval szerkessze a fájlt, hogy a JSON-sémája automatikusan érvényesüljön.Illessze be a következő tartalmat a
.mcp.jsonfájlba:{ "servers": { "github": { "url": "https://api.githubcopilot.com/mcp/" } } }Mentse a fájlt. Ezután aktiválja az új kiszolgálón megjelenő CodeLens-adatokat, hogy egy GitHub-fiókon keresztül hitelesítse a kiszolgálót.
A Visual Studióban kattintson a GitHub Copilot CsevegőablakÁban a Kérdés nyílra, majd válassza az Ügynök lehetőséget.
Válassza ki a használni kívánt eszközöket; például listázási problémák.
Próbáljon ki egy minta promptot: a GitHubon hozzám rendelt feladatok listája.
A Copilot engedélyt kér egy olyan eszköz használatára, amelyet az MCP-kiszolgáló elérhetővé tett számára. Válassza az Engedélyezés lehetőséget a folytatni kívánt hatókörrel.
Támogatott MCP-képességek
A Visual Studio a következő MCP-képességeket támogatja:
- Az MCP-kiszolgáló átvitelének lehetőségei a helyi standard bemenet/kimenet (
stdio), a kiszolgáló által küldött események (sse) és a streamelhető HTTP (http). - A funkciók (eszközök, kérések, erőforrások, mintavételezés) közül a Visual Studio mostantól támogatja a következőket:
- Eszközök: Műveletek és műveletek végrehajtása a Copilot-ügynök módban
- Kérdések: Újrahasználható parancssori sablonok, amelyeket paraméterekkel hívhat meg
- Erőforrások: Külső adatok és környezet elérése URI-alapú erőforrásokon keresztül
- Mintavételezés: Az AI-modell interakcióinak továbbfejlesztése az eszközökkel és szolgáltatásokkal
- A Visual Studio aktuális megoldásmappákat biztosít a kiszolgálók számára a
roots(specifikáció) használatával. - Az MCP-hitelesítéshez a Visual Studio támogatja a távoli kiszolgálók hitelesítését bármely OAuth-szolgáltatóval.
MCP-kiszolgálók keresése
A hivatalos MCP-kiszolgálói adattár kiváló kiindulópont a referencia, a hivatalos és a közösség által hozzájárult kiszolgálók számára, amelyek az MCP sokoldalúságát mutatják be. A kiszolgálókat különböző funkciókkal, például fájlrendszerműveletekkel, adatbázis-interakciókkal és webszolgáltatásokkal ismerkedhet meg.
Az MCP viszonylag új szabvány, és az ökoszisztéma gyorsan fejlődik. Ahogy egyre több fejlesztő alkalmazza az MCP-t, várhatóan egyre több kiszolgáló és eszköz érhető el a projektekkel való integrációhoz.
Példa MCP-kiszolgálókra
Próbáljon ki néhány más népszerű MCP-kiszolgálót a Visual Studióban egy kattintással:
-
– Egyéni kérések és utasítások felderítése és telepítése a GitHub Copilothoz.
-
– Konvertálja a különböző fájlformátumokat (PDF, Word, Excel, képek, hang) Markdownra.
-
– Adatok lekérdezése és elemzése a DuckDB-adatbázisokban helyileg és a felhőben.
-
– Adatbázis-üzemeltetés és -kezelés. Lekérdezések végrehajtása, gyűjtemények, összesítési folyamatok és dokumentumműveletek kezelése.
-
– Modellek, adatkészletek és Spaces elérése a Hugging Face Hubon.
McP-kiszolgáló hozzáadásának lehetőségei
Az MCP-kiszolgáló hozzáadására több lehetősége is van a Visual Studióban.
Telepítés a weben
A 17.14-es verzió legújabb karbantartási kiadásával a Visual Studio támogatja az MCP-kiszolgálók közvetlen telepítését. Az MCP-kiszolgálón a Telepítés gombra kattintva automatikusan felveheti azt a Visual Studio-példányba.
Telepítés gomb hozzáadása MCP-kiszolgálóhoz
Írja meg az MCP-kiszolgáló konfigurációját a JSON-ban.
Íme egy HTTP/SSE-kiszolgálói példa:
{"name":"My Server","type":"http","url":"https://example.com/mcp/"}Íme egy stdio-kiszolgálói példa:
{"name":"My Server","type":"stdio","command":"python","args":["-m","my_mcp.server"]}A kötelező mezők a következők:
szakterület Description nameBarátságos név a kiszolgálójához typeKiszolgálókapcsolat típusa, például httpvagystdiourlA kiszolgáló URL-címe, amely a következőhöz szükséges: httpcommandA végrehajtható kiszolgáló indítására szolgáló parancs, amely a következőhöz szükséges: stdioargsA parancsnak átadott argumentumok tömbje, amely a következőhöz szükséges: stdioURL-kódolja a JSON-adatokat. Használhat online kódolót vagy böngészőkonzolt.
Íme egy példa a böngészőkonzolra:
encodeURIComponent('{"name":"My Server","type":"http","url":"https://example.com/mcp/"}')Szúrja be az URL-kódolású JSON-t az MCP URI formátumba a Visual Studio telepítési hivatkozásának létrehozásához. Használja ezt a formátumot:
vsweb+mcp:/install?<ENCODED_JSON>Adja hozzá a Markdown-jelvényt a GitHub-adattárhoz vagy dokumentumokhoz. Például:
[](vsweb+mcp:/install?<ENCODED_JSON>)
Amikor egy felhasználó kiválasztja a jelvényt, megnyílik a Visual Studio (vagy megkéri, hogy nyissa meg). Megjelenik az MCP telepítési párbeszédpanelje, amely előre kitöltve van a kiszolgáló adataival.
Hozzáadás csevegőnézetből
A Visual Studio 17.14.13-es vagy újabb verziójával hozzáadhat egy MCP-kiszolgálót a Visual Studio csevegési nézetéből.
MCP-kiszolgáló hozzáadása csevegőnézetből:
Válassza a zöld plusz (
+) gombot az eszközválasztóban a csevegőablakban.Adja meg a kiszolgáló nevét és a kapcsolat részleteit, például a HTTP-kiszolgálók URL-címét vagy az stdio-kiszolgálók parancsát és argumentumait.
Fájl létrehozása az MCP-kiszolgálók konfigurációjának kezeléséhez
Ha még nem rendelkezik fájllal mcp.json , hozzon létre egyet bármelyik támogatott helyen az adattár, a felhasználó vagy a szerkesztő követelményei alapján.
McP-kiszolgáló hozzáadásához keresse meg a kiszolgáló JSON-konfigurációját online. Keresse meg például az MCP-kiszolgálók GitHub-adattárában. Ezután illessze be a mcp.json fájlba.
Az MCP-konfiguráció automatikus felderítésének fájlhelyei
A Visual Studio emellett ellenőrzi azokat az MCP-konfigurációkat is, amelyeket más fejlesztési környezetek állítottak be. Az MCP-kiszolgáló konfigurációi a következő könyvtárakból olvashatók be a következő sorrendben:
-
%USERPROFILE%\.mcp.json
Egy adott felhasználó globális MCP-kiszolgálókonfigurációjaként szolgál. Ha itt hozzáad egy MCP-kiszolgálót, az minden Visual Studio-megoldás számára betöltődik. -
<SOLUTIONDIR>\.vs\mcp.json
A Visual Studióra jellemző, és a megadott MCP-kiszolgálókat csak egy adott felhasználó számára tölti be a megadott megoldáshoz. -
<SOLUTIONDIR>\.mcp.json
Jól működik, ha olyan MCP-konfigurációt keres, amelyet nyomon követhet egy adattár forrásvezérlőjében. -
<SOLUTIONDIR>\.vscode\mcp.json
Hatóköre az adattárra/megoldásra terjed ki, és általában nem forrásvezérelt. -
<SOLUTIONDIR>\.cursor\mcp.json
Hatóköre az adattárra/megoldásra terjed ki, és általában nem forrásvezérelt.
Ezen helyek némelyikéhez szükség van .mcp.json, míg másokra mcp.json.
MCP konfigurációs formátum
A távoli (URL- és hitelesítő adatok) és a helyi (parancssori hívás) kiszolgálókat is meghatározhatja.
Gyakran előfordul, hogy csomagkezelők segítségével hív meg eszközöket; például. npx -y @azure/mcp@latestdocker run ... mcp/github A Visual Studio minden megadott parancsot tiszteletben tart, így szükség szerint rögzíthet verziókat vagy átadhat jelölőket.
A formátumnak az MCP-specifikációt kell követnie. Tartalmaznia kell például egy tömböt, amely kiszolgálóobjektumokat foglal magában, és mindegyikhez tartozik egy name, command vagy url, illetve transport.
McP-konfiguráció szerkesztése
Meglévő mcp.json fájl esetén adja hozzá a fájl helyét a Megoldáskezelőben található megoldáselemekhez , ha a fájlt a verziókövetési rendszerbe ellenőrzi.
Ha a fájl érvényes szintaxissal van mentve, a GitHub Copilot-ügynök újraindul, és újra betölti a konfigurált kiszolgálókat.
Eszköz életciklusa
Amint felfedez vagy hozzáad egy kiszolgálót:
- A Visual Studio kézfogással inicializálja a kiszolgálót, és lekérdezi az eszközlistát.
- A Visual Studio feliratkozik az MCP eseményre
notifications/tools/list_changed. - Amikor az esemény aktiválódik, a Visual Studio visszaállítja az eszközök előzetes elfogadását vagy engedélyeit (a váratlan eltávolításos támadások megelőzése érdekében), újra lekéri az eszközlistát, és élőben frissíti az összesítést/felhasználói felületet.
- Ha a kiszolgáló sikeresen engedélyezve van, az eszközök elérhetővé válnak az ügynök számára. Az eszközök alapértelmezés szerint le vannak tiltva, és manuálisan kell engedélyezni.
- Ha eltávolít egy kiszolgálót, a Visual Studio azonnal leállítja a folyamatot, és visszavonja az összes eszközét a felhasználói felületről.
- Ha szerkeszt egy kiszolgálódefiníciót, a Visual Studio leállítja és újraindítja azt, majd újra lekérdezi.
Eszközjóváhagyások kezelése
Amikor meghív egy eszközt, a Copilot megerősítést kér az eszköz futtatásához. Ennek az az oka, hogy az eszközök helyileg futnak a számítógépen, és fájlokat vagy adatokat módosító műveleteket hajtanak végre.
Az eszköz meghívása után a csevegőablakban használja az Engedélyezés legördülő menüt. Automatikusan megerősítheti az aktuális munkamenethez, az aktuális megoldáshoz vagy az összes jövőbeli meghíváshoz tartozó eszközt.
Az eszköz megerősítések visszaállítását az Eszközök>Beállítások panelen, az Összes beállítás szakasz alatt a GitHub>CopilotEszközök részében végezheti el.
Az eszközök megerősítését az Eszközök>beállításai párbeszédpanelen, az Eszközök csoport >Copilot szakaszában állíthatja vissza.
Engedélyezés kezelése
A Visual Studio mostantól támogatja a távoli kiszolgálók hitelesítését bármely OAuth-szolgáltatóval, az MCP engedélyezési specifikációjának megfelelően. Ez a támogatás a Visual Studio kulcskarikával való integráción kívül is támogatott.
McP-kiszolgáló hitelesítésének kezelése:
A fájlban válassza a
.mcp.jsonKiszolgáló hitelesítésének kezelése lehetőséget a CodeLensből.Adja meg a kiszolgálóhoz szükséges OAuth-szolgáltató hitelesítő adatait a böngésző előugró párbeszédpaneljén.
MCP-kérések és üzenetsablonok
Az MCP-kiszolgálók újrahasználható parancssori sablonokat biztosíthatnak, amelyek segítenek a nyelvi modellekkel való hatékonyabb interakcióban. Ezek a kérések adott feladatokra vannak szabva, és testreszabható argumentumokat is tartalmazhatnak.
MCP-kérések használata
McP-kiszolgálótól érkező kérésekre való hivatkozás:
- Válassza a + Hivatkozás hozzáadása csevegésben lehetőséget.
- Válassza a Prompts>MCP-kérések lehetőséget.
- Válasszon egy kérdést, és válassza a Kérdés beszúrása lehetőséget.
Egyes kérdések olyan argumentumokat tartalmaznak, amelyeket testre szabhat, mielőtt beszúrja őket a csevegésbe. Ezeket parancssori sablonoknak nevezzük.
Példa: A GitHub MCP-kiszolgáló kéri a lekéréses kérelmek elemzését, a véglegesítési üzenetek generálását és a kódmódosítások felülvizsgálatát.
MCP-erőforrások és erőforrássablonok
Az MCP-erőforrások kontextust biztosítanak a nyelvi modellekhez, például fájlokhoz, adatbázis-sémákhoz vagy alkalmazásspecifikus adatokhoz. Minden erőforrás egyedi URI-val rendelkezik, amelyekre a csevegés során hivatkozhat.
MCP-erőforrások használata
Hivatkozzon MCP-erőforrásokra a Copilot-csevegésben egy hashtag (#) használatával, amelyet az erőforrás URI-ja követ.
Argumentumokkal (erőforrássablonokkal) rendelkező erőforrások esetén:
- Válassza a + Hivatkozás hozzáadása lehetőséget a csevegésben.
- Válassza ki az MCP-erőforrásokat.
- Válassza ki az erőforrást, töltse ki a szükséges argumentumokat, és válassza az Erőforrás hozzáadása lehetőséget.
Példa: Az Azure DevOps MCP-kiszolgáló elérhetővé teszi a munkaelemek erőforrásait, a futaminformációkat és a csapat kapacitásadatait a projekttervezési feladatokhoz.
Példa: A Figma MCP-kiszolgáló hozzáférést biztosít a tervezési összetevők erőforrásaihoz, stíluskalauzaihoz és tervezési specifikációihoz.
MCP-mintavételezés
A mintavételezés lehetővé teszi, hogy az MCP-kiszolgálók LLM-hívásokat kezdeményezhessenek az Ön nevében, így összetettebb, többlépéses műveleteket tesznek lehetővé. A Visual Studio automatikusan támogatja a mintavételezést, ha az MCP-kiszolgáló biztosítja.
Amikor a Copilotnak mintavételezési hívást kell kezdeményeznie, megjelenik egy megerősítést kérő párbeszédpanel. Tekintse át a részleteket, és hagyja jóvá a művelet végrehajtása előtt, biztosítva, hogy ön felügyelje az automatizált műveleteket.
Példa: A Playwright MCP-kiszolgáló mintavételezés használatával hoz létre tesztforgatókönyveket az alkalmazás DOM-struktúrája és felhasználói folyamatai alapján.
Gyakori kérdések
Rendszergazdaként hogyan szabályozhatom az MCP-kiszolgálók használatát ügynök módban a Visual Studio felhasználói számára?
A GitHub Copilot-irányítópult GitHub-szabályzatbeállításai a rendszergazdák számára szabályozzák az ügynök üzemmódot és az MCP használatát a Visual Studióban. Ha a rendszergazda kikapcsolja ezt a beállítást, az előfizetésben lévő felhasználók nem használhatnak ügynök üzemmódot, és nem csatlakozhatnak MCP-kiszolgálókhoz a Visual Studióban.
További információ: A GitHub Copilot szabályzatainak és funkcióinak kezelése a vállalatnál.