> For the complete documentation index, see [llms.txt](https://docs.allmcp.co/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.allmcp.co/documentation/connect/vscode.md).

# VS Code

Connect AllMCP to VS Code with GitHub Copilot in Agent mode.

<a href="/pages/416edc1381c20849bc41111b02e482a722a49b94" class="button primary" data-icon="key">Get your API key</a> <a href="/pages/QJVxDLqxIz5KMCH5afbE" class="button secondary" data-icon="table-cells">Browse providers</a>

{% hint style="info" %}
MCP support in VS Code requires **GitHub Copilot** with **Agent mode** enabled. This feature is available in VS Code 1.99+ with the Copilot extension.
{% endhint %}

***

## Setup

{% stepper %}
{% step %}

#### Locate the config file

Create `.vscode/mcp.json` in your workspace root. This file is workspace-scoped — each project can point to a different MCP server or user.

For a user-level config, create `mcp.json` in your VS Code user settings directory.
{% endstep %}

{% step %}

#### Add the `allmcp` block

{% code title=".vscode/mcp.json" overflow="wrap" %}

```json
{
  "servers": {
    "allmcp": {
      "type": "http",
      "url": "https://go.allmcp.co/mcp/",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}
```

{% endcode %}

{% hint style="warning" %}
Note the key is `"servers"` (not `"mcpServers"`) and the entry requires `"type": "http"`. This differs from Claude Desktop's format.
{% endhint %}
{% endstep %}

{% step %}

#### Apply the config

VS Code picks up `.vscode/mcp.json` automatically — no restart needed. You may need to reload the Copilot chat panel.
{% endstep %}

{% step %}

#### Verify it's working

Open the Copilot chat (`Ctrl+Alt+I`), switch to **Agent** mode, and type:

```
List available AllMCP integrations
```

{% endstep %}
{% endstepper %}

***

## Per-user scoping

If several people share a workspace, add a `user_id` to the URL so each person keeps their own separate set of connected providers and one person's credentials never mix with another's:

{% code title=".vscode/mcp.json" overflow="wrap" %}

```json
{
  "servers": {
    "allmcp": {
      "type": "http",
      "url": "https://go.allmcp.co/mcp/?user_id=your-user-id",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}
```

{% endcode %}

***

## Gitignore

If your `.vscode/mcp.json` contains a personal API key, add it to `.gitignore`:

{% code title=".gitignore" %}

```
.vscode/mcp.json
```

{% endcode %}

***

## Next steps

{% content-ref url="/pages/416edc1381c20849bc41111b02e482a722a49b94" %}
[Quickstart](/documentation/quickstart.md)
{% endcontent-ref %}

{% content-ref url="/pages/QJVxDLqxIz5KMCH5afbE" %}
[All Providers](/documentation/providers/providers.md)
{% endcontent-ref %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.allmcp.co/documentation/connect/vscode.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
