wellworn

VS Code (Copilot)

The .vscode/mcp.json entry for Copilot agent mode, and the promptString input that keeps the key out of the repo.

VS Code reads .vscode/mcp.json from the workspace. The user-profile equivalent opens with the MCP: Open User Configuration command. The top-level key is servers, not mcpServers, and that one difference is why a config copied from another client silently loads nothing.

Without a key

A remote Streamable HTTP server is "type": "http" plus a url. The other accepted type is "sse", for the legacy transport Wellworn does not speak.

.vscode/mcp.json
{
  "servers": {
    "wellworn": {
      "type": "http",
      "url": "https://mcp.wellworn.dev/mcp"
    }
  }
}

MCP: Add Server walks the same entry through a prompt and asks whether to write the workspace file or the user one.

With a key

Workspace mcp.json is committed more often than not. VS Code has input variables for exactly this: it prompts once, keeps the value in secret storage, and substitutes it at connect time.

.vscode/mcp.json
{
  "inputs": [
    {
      "type": "promptString",
      "id": "wellworn-key",
      "description": "Wellworn API key",
      "password": true
    }
  ],
  "servers": {
    "wellworn": {
      "type": "http",
      "url": "https://mcp.wellworn.dev/mcp",
      "headers": { "Authorization": "Bearer ${input:wellworn-key}" }
    }
  }
}

Confirm it works

MCP: List Servers shows every configured server and lets you start, stop, restart, or open its output log. In chat, switch the mode selector to Agent and open Configure Tools; the eight Wellworn tools appear there, and each can be turned off individually.

What breaks

VS Code caches a server's tool list. If the eight tools do not appear after the server connects, or a stale set does, run MCP: Reset Cached Tools.

Tools are chosen per chat session from Configure Tools in the chat input, and a server that connected still contributes nothing until its tools are ticked there.

Verified 2026-09-08 against code.visualstudio.com