Skip to main content
Skip to content

Extending GitHub Copilot Chat with Model Context Protocol (MCP) servers

Connect MCP servers to Copilot Chat to share context from other applications.

Introduction

The Model Context Protocol (MCP) is an open standard that defines how applications share context with large language models (LLMs). For an overview of MCP, see À propos du Model Context Protocol (MCP).

For a curated list of MCP servers from partners and the community, see the GitHub MCP Registry.

Les entreprises et les organisations peuvent choisir d’activer ou de désactiver l’utilisation de MCP pour les membres de leur organisation ou de leur entreprise via la stratégie Serveurs MCP dans Copilot. Cette politique est désactivée par défaut. Consultez Gestion des stratégies et fonctionnalités pour GitHub Copilot dans votre entreprise et Gestion des stratégies et des fonctionnalités pour GitHub Copilot dans votre organisation. La stratégie MCP s’applique uniquement aux utilisateurs qui disposent d’un abonnement Copilot Business ou Copilot Enterprise provenant d’une organisation ou d’une entreprise qui configure la stratégie. Copilot Free, Copilot Pro, Copilot Pro+, ou Copilot Maxn’ont pas leur accès à MCP régi par cette stratégie.

Prerequisites

  • Access to Copilot. Consultez À propos de GitHub Copilot.
  • Visual Studio Code version 1.99 or later. For information on installing Visual Studio Code, see the Visual Studio Code download page.
  • Si vous êtes membre d’une organisation ou d’une entreprise avec un plan Copilot Business ou Copilot Enterprise, la stratégie « Serveurs MCP dans Copilot » doit être activée pour pouvoir utiliser MCP avec Copilot.

Configuring MCP servers in Visual Studio Code

MCP servers can be configured manually in a configuration file, or through the GitHub MCP Registry. The GitHub MCP Registry provides a curated list of MCP servers that you can easily add to your Visual Studio Code instance.

Using the GitHub MCP Registry

Remarque

The GitHub MCP Registry is in préversion publique and may change.

Only MCP servers listed in the GitHub MCP Registry can be added through the registry. Other servers can be configured manually. See Configuring MCP servers manually.

  1. In Visual Studio Code, open the extensions panel by clicking the extensions icon in the sidebar or pressing Ctrl+Shift+X (Windows/Linux) / Command+Shift+X (Mac).
  2. In the extensions search bar, type @mcp followed by the name of the MCP server you want to add. This opens the MCP server gallery and shows matching results.
  3. Select the MCP server from the search results. On the MCP server's details page, click Install.
  4. When prompted, confirm that you trust the server to start it. VS Code discovers the server's tools and makes them available in chat.
  5. To verify that the MCP server is configured correctly, open the command palette by pressing Ctrl+Shift+P (Windows/Linux) / Command+Shift+P (Mac).
  6. Type and select MCP: List Servers. You should see the MCP server listed as a configured server.

Configuring MCP servers manually

To configure MCP servers in Visual Studio Code, you need to set up a configuration script that specifies the details of the MCP servers you want to use. You can configure MCP servers for either:

  • Un référentiel spécifique. Cela vous permet de partager les serveurs MCP avec toute personne qui ouvre le projet dans Visual Studio Code. Pour ce faire, créez un fichier à la racine de votre référentiel .vscode/mcp.json.

  • Votre instance personnelle de Visual Studio Code. Vous serez la seule personne ayant accès aux serveurs MCP configurés. Pour ce faire, ajoutez la configuration à votre fichier settings.json dans Visual Studio Code. Les serveurs MCP configurés de cette manière seront disponibles dans tous les espaces de travail.

    Remarque

    We recommend you use only one location per server. Adding the same server to both locations may cause conflicts and unexpected behavior.

The steps below show how to configure the Fetch MCP server in your .vscode/mcp.json file. The Fetch MCP server is a simple MCP server that provides web content fetching capabilities. For more information on the Fetch MCP server, see the Fetch directory in the MCP Server repository.

You can use the same steps to configure MCP servers in your personal Visual Studio Code settings. Details on how to configure other MCP servers are available in the MCP servers repository.

For information on configuring the GitHub MCP server, see Using the GitHub MCP Server in your IDE.

  1. Add the following configuration to your .vscode/mcp.json file:

    JSON
    {
    "inputs": [
      // The "inputs" section defines the inputs required for the MCP server configuration.
      {
        "type": "promptString"
      }
    ],
    "servers": {
      // The "servers" section defines the MCP servers you want to use.
      "fetch": {
        "command": "uvx",
        "args": ["mcp-server-fetch"]
      }
     }
    }
    
  2. Save the .vscode/mcp.json file.

  3. A "Start" button will appear in your .vscode/mcp.json file, at the top of the list of servers. Click the "Start" button to start the MCP servers. This will trigger the input dialog and discover the server tools, which are then stored for later sessions.

    Screenshot of MCP server configuration in Visual Studio Code. The "Start" button is outlined in dark orange.

  4. Open Copilot Chat by clicking the chat icon in the title bar of Visual Studio Code.

  5. In the Copilot Chat box, select Agent from the popup menu.

    Screenshot of the Copilot Chat box in Visual Studio Code. The "Agent" option is outlined in dark orange.

  6. To view your list of available MCP servers, click the tools icon in the top left corner of the chat box. This will open the MCP server list, where you can see all the MCP servers and associated tools that are currently available in your Visual Studio Code instance.

    • Optionally, you can define toolsets, groups of related tools that you can reference in chat. Toolsets make it easier to group related MCP tools together and quickly enable or disable them. For information on how to define and use a toolset, see the VS Code docs.

For more information on configuring MCP servers in Visual Studio Code, see Use MCP servers in Visual Studio Code in the Visual Studio Code documentation.

Using MCP servers in Copilot Chat

Once you have configured your MCP servers, you can use them in Copilot Chat to access a wide range of tools and services. In the example below, we will use the Fetch MCP server to fetch details about a web page.

  1. Ouvrez Copilot Chat en cliquant sur l’icône de chat dans la barre de titre de Visual Studio Code.

  2. Dans la Copilot Chat zone, sélectionnez Agent dans le menu déroulant de l’agent.

  3. In the file with the MCP configuration, check that the MCP server is running. If it is not running, click the "Start" button to start the MCP server.

    Screenshot of the MCP server configuration in Visual Studio Code. The "Running" status is outlined in dark orange.

  4. Ask Copilot Chat to fetch the details of a URL. For example:

    Fetch https://github.com/github/docs.

  5. If Copilot asks you to confirm that you want to proceed, click Continue.

  6. Copilot will fetch the details of the URL and display them in the chat box.

Optionally, you can use MCP prompts and resources in VS Code.

  • MCP servers can define preconfigured prompts for interacting with their tools. You can access these prompts in chat with slash commands, using the format /mcp.servername.promptname.
  • MCP servers provide resources, which are any kind of data that the server wants to make available. For example, the GitHub MCP server provides repository content as a resource. To add resources from an MCP server to your chat context, click Add Context... in the chat box, then click MCP Resources.

For more information on using MCP servers in Visual Studio Code, see Use MCP servers in Visual Studio Code in the Visual Studio Code documentation.

Using existing MCP configurations

If you already have an MCP configuration in Claude Desktop, you can use that configuration in Visual Studio Code to access the same MCP servers. To do this, add the following configuration to your settings.json file in Visual Studio Code:

JSON
"chat.mcp.discovery.enabled": true

Visual Studio Code will automatically find your existing configuration and use it in your Visual Studio Code instance.

Prerequisites

  • Access to Copilot. Consultez À propos de GitHub Copilot.
  • Visual Studio version 17.14 or later. For more information on installing Visual Studio, see the Visual Studio downloads page.
  • Sign in to GitHub from Visual Studio.
  • Si vous êtes membre d’une organisation ou d’une entreprise avec un plan Copilot Business ou Copilot Enterprise, la stratégie « Serveurs MCP dans Copilot » doit être activée pour pouvoir utiliser MCP avec Copilot.

Configuring MCP servers in Visual Studio

  1. In the Visual Studio menu bar, click View, then click GitHub Copilot Chat.

  2. At the bottom of the chat panel, select Agent from the mode dropdown.

  3. In the Copilot Chat window, click the tools icon, then click the plus icon in the tool picker window.

  4. In the "Configure MCP server" pop-up window, fill out the fields, including server ID, type, and any additional fields required for the specific MCP server configuration.

    Visual Studio supports both remote and local servers. Remote servers, defined with a URL and credentials, are hosted externally for easier setup and sharing, while local servers, defined with command-line invocation, run on your local machine and can access local resources. See example configurations below, using the GitHub MCP server as an example.

  5. Click Save.

  6. If you are using a remote server with OAuth authentication, in the mcp.json file, click Auth from the CodeLens above the server to authenticate to the server. A pop-up or new window will appear, allowing you to authenticate with your account. The server will only be able to access the scopes you approve, and that your organization policies allow.

  7. In the Copilot Chat window, click the tools icon. You should now see additional tools from the MCP server that you configured.

Remote server configuration example with OAuth

  1. For "Server ID", type github.

  2. For "Type", select "HTTP/SSE" from the dropdown.

  3. For "URL", type https://api.githubcopilot.com/mcp/.

  4. After clicking Save, the configuration in the mcp.json file should look like this:

    JSON
        {
          "servers": {
            "github": {
              "url": "https://api.githubcopilot.com/mcp/"
            }
          }
        }
    
  5. In the mcp.json file, click Auth from the CodeLens above the server to authenticate to the server. A pop-up will come up allowing you to authenticate with your GitHub account.

Local server configuration example

  1. For "Server ID", type github.

  2. For "Type", select "stdio" from the dropdown.

  3. For "Command (with optional arguments)", type docker "run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "ghcr.io/github/github-mcp-server"

  4. Add an environment variable "GITHUB_PERSONAL_ACCESS_TOKEN" set to your personal access token.

  5. After clicking Save, the configuration in the mcp.json file should look like this:

    JSON
        {
          "servers": {
            "github": {
              "type": "stdio",
              "command": "docker",
              "args": [
                "run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN",
                "ghcr.io/github/github-mcp-server"
              ],
              "env": {
                "GITHUB_PERSONAL_ACCESS_TOKEN": "YOUR_GITHUB_PAT"
              }
            }
          }
        }
    

For more information on configuring MCP servers in Visual Studio, see Use MCP servers in Visual Studio (Preview) in the Visual Studio documentation.

Prerequisites

  • Access to Copilot. Consultez À propos de GitHub Copilot.

  • A compatible JetBrains IDE. GitHub Copilot is compatible with the following IDEs:

    • IntelliJ IDEA (Ultimate, Community, Éducation)
    • Android Studio
    • CLion
    • Code With Me - Utilisateur Invité
    • DataGrip
    • DataSpell
    • GoLand
    • JetBrains Client
    • MPS
    • PhpStorm
    • PyCharm (Professionnel, Communauté, Éducation)
    • Rider
    • RubyMine
    • RustRover
    • WebStorm

    Consultez l’outil de recherche des IDE JetBrains pour les télécharger.

  • Si vous êtes membre d’une organisation ou d’une entreprise avec un plan Copilot Business ou Copilot Enterprise, la stratégie « Serveurs MCP dans Copilot » doit être activée pour pouvoir utiliser MCP avec Copilot.

Configuring MCP servers from your MCP registry

  1. In your JetBrains IDE, open Copilot Chat.
  2. In the Copilot Chat window, click the MCP icon.
  3. In the MCP Registry window, find the MCP server(s) you want to add from the list of available servers.
  4. Next to each MCP server you want to add, click Install.
  5. When you are finished adding MCP servers, click OK.
  6. In the Copilot Chat window, click the tools icon. You should now see additional tools from the MCP server(s) that you installed.

Configuring MCP servers manually

  1. Dans le coin inférieur droit, cliquez sur .
  2. Dans le menu, sélectionnez « Ouvrir la conversation » Assurez-vous d’être en mode Assistant, puis cliquez sur l’icône Outils (appelée « Configurer votre serveur MCP ») en bas de la fenêtre de conversation.
  3. Cliquez sur Ajouter des outils MCP.
  4. In the mcp.json file, define your MCP servers. JetBrains IDEs support both remote and local servers. Remote servers are hosted externally for easier setup and sharing, while local servers run on your local machine and can access local resources.

You can use the following configurations as examples:

Remote server configuration example with PAT

JSON
{
    "servers": {
        "github": {
            "url": "https://api.githubcopilot.com/mcp/",
            "requestInit": {
                "headers": {
                    "Authorization": "Bearer YOUR_PAT_HERE"
                }
            }
        }
    }
  }

Local server configuration example

JSON
{
  "servers": {
    "memory": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-memory"
      ]
    }
  }
}

Prerequisites

Configuring MCP servers from your MCP registry

  1. In Xcode, open Copilot Chat.
  2. In the Copilot Chat window, click the icon to open settings.
  3. In the settings window, select the Tools tab.
  4. Next to MCP Registry URL (Optional), click Browse MCP Servers.
  5. In the MCP Registry window, find the MCP server(s) you want to add from the list of available servers.
  6. Next to each MCP server you want to add, click Install.
  7. When you are finished adding MCP servers, close the MCP Servers Marketplace window.
  8. In the settings window, under Available MCP Tools, click the > icon to expand the list of available MCP tools. You should now see additional tools from the MCP server(s) that you installed.

Configuring MCP servers manually

  1. Ouvrez l’extension GitHub Copilot pour Xcode et accédez à « Paramètres ».
    • Vous pouvez également, dans un espace de travail Xcode actif, trouver les paramètres en cliquant sur Éditeur dans la barre de menu, en sélectionnant GitHub Copilot, puis en cliquant sur Ouvrir GitHub Copilot pour les paramètres Xcode.
  2. Sélectionnez l’onglet MCP, puis cliquez sur Modifier la configuration.
  3. Define your MCP servers, editing mcp.json. Xcode supports both remote and local servers. Remote servers are hosted externally for easier setup and sharing, while local servers run on your local machine and can access local resources.

You can use the following configurations as examples:

Remote server configuration example with PAT

JSON
{
    "servers": {
        "github": {
            "url": "https://api.githubcopilot.com/mcp/",
            "requestInit": {
                "headers": {
                    "Authorization": "Bearer YOUR_PAT_HERE"
                }
            }
        }
    }
  }

Local server configuration example

JSON
{
  "servers": {
    "memory": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-memory"
      ]
    }
  }
}

Prerequisites

  • Accès à Copilot. Consultez À propos de GitHub Copilot.
  • Version compatible d’Eclipse. Pour utiliser l’extension GitHub Copilot, vous devez disposer de la version 2024-09 ou supérieure d’Eclipse. Consultez la page de téléchargement Eclipse.
  • Si vous êtes membre d’une organisation ou d’une entreprise avec un plan Copilot Business ou Copilot Enterprise, la stratégie « Serveurs MCP dans Copilot » doit être activée pour pouvoir utiliser MCP avec Copilot.

Configuring MCP servers from your MCP registry

  1. In Eclipse, open Copilot Chat.
  2. In the Copilot Chat window, click the MCP icon.
  3. In the MCP Registry window, find the MCP server(s) you want to add from the list of available servers.
  4. Next to each MCP server you want to add, click Install.
  5. When you are finished adding MCP servers, click Close.
  6. In the Copilot Chat window, click the tools icon. You should now see additional tools from the MCP server(s) that you installed.

Configuring MCP servers manually

  1. Cliquez sur l’icône Copilot () dans la barre d’état en bas d’Eclipse.
  2. Dans le menu, sélectionnez Ouvrir la conversation et, dans la fenêtre de conversation, cliquez sur l’icône « Configurer les outils... ».
    • Vous pouvez également sélectionner Modifier les préférences, puis, dans le volet gauche, développez GitHub Copilot et cliquez sur MCP.
  3. Under "Server Configurations", define your MCP servers. Eclipse supports both remote and local servers. Remote servers are hosted externally for easier setup and sharing, while local servers run on your local machine and can access local resources.

You can use the following configurations as examples:

Remote server configuration example with PAT

JSON
{
    "servers": {
        "github": {
            "url": "https://api.githubcopilot.com/mcp/",
            "requestInit": {
                "headers": {
                    "Authorization": "Bearer YOUR_PAT_HERE"
                }
            }
        }
    }
  }

Local server configuration example

JSON
{
  "servers": {
    "memory": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-memory"
      ]
    }
  }
}

Creating a new MCP server

You can create a new MCP server to fulfill your specific needs, and then integrate it with Copilot Chat. For example, you can create an MCP server that connects to a database or a web service, and then use that server in Copilot Chat to perform tasks on that database or web service.

For more information on creating and configuring your own MCP servers, see the official MCP documentation.

Further reading