# 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.

Source: https://supahost.app/docs/ai-tools/other-clients · Updated 2026-11-11

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:

```bash
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](/docs/ai-tools/mcp).

## Codex

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

```toml
[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](/docs/ai-tools/agent-rules).

## 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:

```json
{
  "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`:

```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):

```json
{
  "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:

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

## OpenCode

Add to `opencode.json` in your project:

```json
{
  "$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)

```bash
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:

```yaml
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.

## Related

- [Connect Claude Code](/docs/ai-tools/claude-code)
- [Connect Cursor](/docs/ai-tools/cursor)
- [MCP tools reference](/docs/ai-tools/mcp-tools)
- [MCP server not connecting in your AI tool](/kb/mcp-not-connecting)
