AI Personal Learning
und praktische Anleitung
Sitzsack Marscode1

Erweiterung der Copilot-Agent-Funktionen: VS Code MCP-Konfigurationsdetails

VS Code 1.99 führt die Unterstützung des Model Context Protocol ein.

Visual Studio Code ( VS Code Mit der Version 1.99 wurde das Model Context Protocol (MCP) offiziell eingeführt. MCP) Unterstützung. MCP ist ein offener Standard, der eine einheitliche Schnittstelle bietet, über die KI-Modelle mit externen Tools und Diensten interagieren können.

MCP wurde in erster Linie eingeführt, um die GitHub Kopilot Agenten-Modus. Mit diesem Protokoll können Entwickler den MCP-Server so konfigurieren, dass er benutzerdefinierte Tools und Dienste in die VS Code in KI-Workflows, wodurch das Potenzial von KI-Assistenten zur Durchführung einer breiteren Palette dynamischerer Aufgaben, wie z. B. die Abfrage von Echtzeitdaten, die Bearbeitung lokaler Dateien oder das Aufrufen bestimmter API.


 

Voraussetzungen: Aktivieren des Agentenmodus und der Umgebungsabhängigkeiten

VS Code 1,99 wird MCP Integriert mit GitHub Kopilot im Agentenmodus. Daher muss für die Verwendung der MCP Funktion zu nutzen, muss der Agentenmodus zunächst aktiviert werden. Dies kann mit der Funktion VS Code Dies geschieht über das Dropdown-Menü oben in der Chat-Ansicht.

cf0d32bc-a7f9-4571-bcff-aa366f84fc77.png

Eine weitere Sache, die man im Auge behalten sollte, und MCP Eine häufige Rückmeldung, mit der wir konfrontiert werden, ist, dass die MCP Der Server muss möglicherweise vorinstalliert werden Node.jsund Docker oder andere Abhängigkeiten. Dies liegt daran, dass viele MCP Serverimplementierungen (insbesondere zur Ausführung von Skripten oder containerisierten Tools) sind auf diese externen Umgebungen angewiesen. Dies erhöht zwar die Komplexität der Ersteinrichtung, bietet aber auch die Flexibilität, sich mit einer Vielzahl leistungsstarker Anpassungswerkzeuge zu verbinden.

 

Konfigurieren des MCP-Servers

existieren VS Code Mitte.MCP Die Kernkonfiguration befindet sich im Arbeitsbereich in der .vscode/mcp.json innerhalb der Datei. Mit Hilfe dieser JSON Datei können Sie eine oder mehrere MCP Servern, werden im Agentenmodus die von diesen Servern bereitgestellten Tools verwendet.

Schritt 1: Erstellen eines MCP-Profils

  1. Öffnen Sie Ihren Projektordner auf VS Code Mitte.
  2. Suchen oder erstellen Sie im Stammverzeichnis des Projekts eine Datei namens .vscode des Ordners.
  3. existieren .vscode erstellen Sie eine Datei mit dem Namen mcp.json des Dokuments.
  4. Fügen Sie die folgende grundlegende Konfigurationsvorlage zur mcp.json Dokumentation:
    {
    "servers": {
    "example-server": {
    "type": "stdio",
    "command": "node",
    "args": ["path/to/your/script.js"]
    }
    }
    }
    

    In dieser Konfiguration:

    • servers: Ein Objekt, das alle MCP Server, wobei jeder Schlüssel ein eindeutiger Servername ist (z. B. "example-server").
    • typeKommunikationsart: Gibt die Art der Kommunikation mit dem Server an. Übliche Typen sind:
      • stdioDer Server ist mit dem Server über Standard Input/Output (SIO) verbunden. VS Code Kommunikation, in der Regel zur Ausführung lokaler Skripte oder ausführbarer Dateien.
      • sseServer-Sent Events: Der Server kommuniziert über Server-Sent Events, die üblicherweise für die Verbindung mit Remote-Diensten oder Diensten verwendet werden, die fortlaufend aktualisiert werden müssen.
    • command im Gesang antworten argsDefiniert die Befehle und ihre Parameter, die zum Starten des Servers erforderlich sind. In diesem Beispiel wird der Befehl Node.js um eine bestimmte JavaScript Dokumentation.

Schritt 2: Server-spezifische Konfiguration hinzufügen

Sie können manuell bearbeiten mcp.json Datei, um einen Server hinzuzufügen, oder Sie können die VS Code Der bequeme Weg über die Befehlstafel:

  1. Öffnen Sie die Befehlstafel (Tastenkürzel) Ctrl+Shift+P vielleicht Cmd+Shift+P).
  2. Tippen und ausführen MCP: Add Server Befehl.
  3. Option Workspace Settings(math.) Gattung VS Code wird automatisch geöffnet oder erstellt .vscode/mcp.json Datei und bietet möglicherweise intelligente Eingabeaufforderungen (IntelliSense), um Sie bei der Konfiguration zu unterstützen.

Es folgt eine Konfiguration mit dem Namen fetch Serverbeispiel, das die uvx Befehl zur Ausführung mcp-server-fetch das dazu dient, den Inhalt einer Webseite unter einer bestimmten URL abzurufen:

{
"servers": {
"fetch": {
"type": "stdio",
"command": "uvx",
"args": ["mcp-server-fetch"]
}
}
}

981a9ad7-9c62-49b2-b41c-0ddd0c8fba79.png

Schritt 3: Sicherer Umgang mit sensiblen Informationen

Hardcoding in der Konfigurationsdatei API Schlüssel oder andere sensible Daten sind nicht sicher.MCP Die Verwendung von Eingabevariablen wird unterstützt, um diese Situation zu bewältigen. Wenn die VS Code Beim Start eines Servers, der diese Variablen benötigt, wird der Benutzer zur Eingabe aufgefordert.

{
"inputs": [
{
"type": "promptString",
"id": "api-key",
"description": "Your API Key",
"password": true
}
],
"servers": {
"perplexity": {
"type": "stdio",
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "PERPLEXITY_API_KEY", "mcp/perplexity-ask"],
"env": {
"PERPLEXITY_API_KEY": "${input:api-key}"
}
}
}
}

In diesem Beispiel:

  • inputs Arrays definieren Variablen, die Benutzereingaben erfordern. Hier ein ID wegen api-key des eingegebenen Passworttyps.
  • password: true Stellen Sie sicher, dass der Inhalt während der Eingabe ausgeblendet wird.
  • In der Serverkonfiguration des env Teil.${input:api-key} Die Syntax verweist auf eine zuvor definierte Eingabevariable.VS Code ist für die sichere Speicherung und Übergabe dieses Wertes an die Umgebungsvariable des Serverprozesses verantwortlich PERPLEXITY_API_KEY.

 

Verwendung und Verwaltung von MCP-Tools

Aktivieren des Agentenmodus und Auffinden von Tools

Wenn Sie das System korrekt konfiguriert haben .vscode/mcp.json Datei und speichern Sie sie, dann wechseln Sie zu GitHub Copilot Agentenmodus (Auswahl über das Dropdown-Menü oben in der Chat-Ansicht) Agent). Der Agentenmodus erkennt und lädt automatisch die in der Konfigurationsdatei definierten Server und die von ihnen bereitgestellten Tools.

4af17127-c318-482e-baff-36af8b7e260b.png

Aufrufwerkzeug

Sobald Server und Tools vom Agentenschema erkannt werden, können Sie sie in der Chat-Ansicht aufrufen, entweder in natürlicher Sprache oder mit spezifischen Befehlen. Zum Beispiel:

  • Wenn Sie die fetch Server, die eingegeben werden können:@workspace /fetch https://bytenote.net um den Inhalt der Seite zu erhalten.
  • Wenn Sie eine zeitabfragefähige MCP Server, versuchen Sie zu fragen:@workspace What's the time in Saigon?

Der Agent analysiert Ihre Anfrage, bestimmt, ob er ein externes Tool aufrufen muss, und kommuniziert mit dem entsprechenden MCP Server-Interaktion, um die Ergebnisse zu erhalten.

4007a28d-7c12-4467-95ac-e380439e2858.png

Verwaltung des Serverstatus

Manchmal müssen Sie den Status eines konfigurierten Servers anzeigen oder ihn verwalten (starten, stoppen, Protokolle anzeigen usw.).

  1. Öffnen Sie das Bedienfeld (Ctrl+Shift+P vielleicht Cmd+Shift+P).
  2. Tippen und ausführen MCP: List Servers Befehl.
  3. Es öffnet sich eine Ansicht, in der alle Dateien im Verzeichnis mcp.json und seinen aktuellen Zustand (z. B. StartedStopped).
  4. Sie können auf einen Server in der Liste klicken, um Aktionen auszuführen, wie z. B. das Starten, Stoppen oder Neustarten des Servers, und seine Ausgabeprotokolle anzeigen, was für die Fehlersuche bei Serverkonfigurationen nützlich ist.

ba7b278c-f1ce-4637-9a75-cd1a475baa75.png

 

Beispiel für eine erweiterte Konfiguration

Mehrere Server konfigurieren

mcp.json In der Datei können mehrere Server definiert werden, die jeweils unterschiedliche Funktionen bieten.

{
"inputs": [
{
"type": "promptString",
"id": "perplexity-key",
"description": "Perplexity API Key",
"password": true
}
],
"servers": {
"Perplexity": {
"type": "stdio",
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "PERPLEXITY_API_KEY", "mcp/perplexity-ask"],
"env": {
"PERPLEXITY_API_KEY": "${input:perplexity-key}"
}
},
"Fetch": {
"type": "stdio",
"command": "uvx",
"args": ["mcp-server-fetch"]
},
"RemoteServer": {
"type": "sse",
"url": "http://api.example.com/sse",
"headers": {
"VERSION": "1.2"
}
}
}
}

Diese Konfiguration definiert drei Server:

  • Perplexity: Verwendung Docker Die Ausführung eines Tools, das für komplexe Suchvorgänge oder Quizfragen verwendet werden kann, erfordert API Schlüssel.
  • Fetch: Verwendung uvx Führen Sie ein lokales Tool zum Crawlen von Webinhalten aus.
  • RemoteServerVerbinden mit einer Fernbedienung SSE Ein Dienst-Endpunkt, der für den Empfang von Echtzeit-Benachrichtigungen oder Datenströmen verwendet werden kann. Hinweis sse Typ erforderlich url Parameter und kann benutzerdefinierte headers.

Verwendung vordefinierter Variablen

MCP Die Konfiguration unterstützt eine Reihe von vordefinierten Variablen für die einfache Referenzierung von Kontextinformationen.

{
"servers": {
"filesystem": {
"type": "stdio",
"command": "npx",
"args": ["@modelcontextprotocol/server-filesystem", "${workspaceFolder}"]
}
}
}

In diesem Beispiel ist die${workspaceFolder} ist eine vordefinierte Variable, die durch die aktuelle VS Code Der Stammverzeichnispfad des geöffneten Arbeitsbereichs. Dies ist nützlich für Werkzeuge, die Zugriff auf Projektdateien benötigen.

passieren (eine Rechnung oder Inspektion etc.) MCP(math.) GattungVS Code öffnet Entwicklern die Tür, um KI-Assistenten mit Hilfe externer Tools tiefer in ihre täglichen Entwicklungsabläufe zu integrieren. Auch wenn die anfängliche Konfiguration eine gewisse Einrichtung der Umgebung erfordert, sind die Anpassungsmöglichkeiten und die Erweiterung der Fähigkeiten, die damit einhergehen, beträchtlich.

Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " Erweiterung der Copilot-Agent-Funktionen: VS Code MCP-Konfigurationsdetails
de_DEDeutsch