Connect Codex, VS Code, Windsurf and others

MCP configuration for Codex, VS Code and GitHub Copilot, Windsurf, Gemini CLI, Kiro, OpenCode, Goose and any Streamable HTTP client, using a SupaHost access token.

Any MCP client that supports remote servers over Streamable HTTP with a custom Authorization header can use SupaHost. This page has ready-made configs for the common ones. They all need the same three things:

Setting Value
Server name supahost (any name works)
URL https://mcp.supahost.space/mcp?project=app-one
Header Authorization: Bearer <your SupaHost access token>

Create the token in Dashboard → AI agents (MCP) (pick your client from the list for a tailored snippet) or in Access tokens. Most configs below read it from a SUPAHOST_TOKEN environment variable:

export SUPAHOST_TOKEN="shp_..."

Change project=app-one to your project, or use instance=acme with a whole-instance token. Add &read_only=true for read-only, and &features=... to choose tool groups; see The SupaHost MCP server.

Codex

Add to ~/.codex/config.toml. Codex reads the token from the named environment variable:

[mcp_servers.supahost]
url = "https://mcp.supahost.space/mcp?project=app-one"
bearer_token_env_var = "SUPAHOST_TOKEN"

Start Codex and run /mcp to check that supahost is listed with its tools. Put rules in AGENTS.md at the root of your repository; see Rules and prompts for AI agents.

VS Code (and GitHub Copilot agent mode)

Save as .vscode/mcp.json in your workspace. VS Code asks for the token the first time and stores it securely, so nothing secret goes in the file:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "supahost-token",
      "description": "SupaHost access token",
      "password": true
    }
  ],
  "servers": {
    "supahost": {
      "type": "http",
      "url": "https://mcp.supahost.space/mcp?project=app-one",
      "headers": {
        "Authorization": "Bearer ${input:supahost-token}"
      }
    }
  }
}

Open the Copilot chat in agent mode and check the tools list for supahost. For the Copilot CLI, add the same server to ~/.copilot/mcp-config.json.

Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "supahost": {
      "serverUrl": "https://mcp.supahost.space/mcp?project=app-one",
      "headers": {
        "Authorization": "Bearer ${env:SUPAHOST_TOKEN}"
      }
    }
  }
}

Reload Windsurf's MCP servers after saving.

Gemini CLI

Add to ~/.gemini/settings.json (or .gemini/settings.json in the project):

{
  "mcpServers": {
    "supahost": {
      "httpUrl": "https://mcp.supahost.space/mcp?project=app-one",
      "headers": {
        "Authorization": "Bearer $SUPAHOST_TOKEN"
      }
    }
  }
}

Run /mcp inside Gemini CLI to see the connection and tools.

Kiro

Save as .kiro/settings/mcp.json in your workspace:

{
  "mcpServers": {
    "supahost": {
      "url": "https://mcp.supahost.space/mcp?project=app-one",
      "headers": {
        "Authorization": "Bearer ${SUPAHOST_TOKEN}"
      }
    }
  }
}

OpenCode

Add to opencode.json in your project:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "supahost": {
      "type": "remote",
      "url": "https://mcp.supahost.space/mcp?project=app-one",
      "enabled": true,
      "headers": {
        "Authorization": "Bearer {env:SUPAHOST_TOKEN}"
      }
    }
  }
}

Factory (Droid)

droid mcp add supahost "https://mcp.supahost.space/mcp?project=app-one" --type http \
  --header "Authorization: Bearer $SUPAHOST_TOKEN"

Goose

Add under extensions in ~/.config/goose/config.yaml (or use goose configure and choose a remote extension). This snippet holds the token itself, so keep the file private:

extensions:
  supahost:
    type: streamable_http
    name: supahost
    uri: https://mcp.supahost.space/mcp?project=app-one
    headers:
      Authorization: Bearer <your SupaHost token>
    enabled: true
    timeout: 300

Any other client

Look for a "remote", "HTTP" or "Streamable HTTP" server option and enter the name, URL and header from the table at the top. The dashboard's client list also covers Antigravity, Warp, Devin Desktop, Grok and Kimi Code. Clients that only support local (stdio) servers or the older SSE transport can't connect directly.

Claude.ai and ChatGPT connectors

Hosted connectors (Claude.ai custom connectors, ChatGPT developer-mode connectors) sign in with OAuth rather than a token. OAuth sign-in for the SupaHost MCP server is coming soon and isn't available yet. Until then, use a desktop or CLI client with an access token.

Keeping tokens safe

  • Prefer configs that read the token from an environment variable or prompt for it. If a config holds the token itself, keep that file out of git.
  • Use one token per client and per project, so you can revoke one without breaking the others.
  • Revoke unused tokens in Dashboard → Access tokens; the table shows when each was last used.

Updated 11 November 2026 · View as Markdown · Something wrong or missing? Tell us