Docs

Connect external tools to Switchy

Switchy connects to GitHub, Notion, and any HTTPS MCP server. Once a connector is bound to a Space, teammates can call its tools by @mention in chat. The AI agent in that turn picks the result up automatically and uses it in its reply.

How it works

  1. An org admin connects a tool from Settings → MCP. GitHub and Notion are one-click OAuth; custom MCPs take a URL plus a bearer or API-key secret.
  2. A Space admin (Project OWNER/EDITOR or org OWNER/ADMIN) binds the connector to the Spaces that should be able to use it, from /spaces/[slug]/settings/mcps.
  3. Teammates type @github find issues in chat. The AI sees the tool result inside its prompt and writes a reply that references it.

Connect GitHub

  1. Open Settings → MCP and click Connect GitHub.
  2. Authorise the Switchy GitHub app. Scopes: read:org repo read:user.
  3. You land back on Switchy with a green confirmation. The connector now appears as @github.
  4. Open a Space, go to Space settings → MCP integrations, and toggle @github on.

Tools available in PR 1: search_repos, search_issues, get_repo, list_my_pull_requests. The AI picks the tool automatically based on the question.

Connect Notion

  1. Open Settings → MCP and click Connect Notion.
  2. Pick the Notion workspace + the pages/databases you want Switchy to read.
  3. Toggle @notion on for the Spaces that should use it.

Tools: search (workspace-wide), get_page, get_page_blocks (page text content, truncated to 20 KB by default).

Add a custom MCP

Switchy speaks JSON-RPC 2.0 over HTTPS. Any MCP server you run (or a third-party MCP not listed above) can be added by URL.

  1. Open Settings → MCP and scroll to Add a custom MCP.
  2. Fill in: display name, mention slug (e.g. internal_search), HTTPS endpoint URL, auth type, and the secret (Bearer token or HeaderName:value for API-key auth).
  3. Click Connect MCP. The credential is stored in Google Secret Manager. Switchy never logs it.
  4. Use the Test button on the row to confirm the upstream responds.
  5. Bind it to a Space the same way as the one-click connectors.

Network safety

We reject HTTP, private IP ranges (RFC1918, loopback, link-local, the GCP metadata server), and any hostname that DNS-resolves to a non-routable address. The check runs at registration AND on every call (DNS rebinding defence).

Health checks + outage notifications

Switchy probes every active integration every 10 minutes. The composer's @mention menu shows the current status:

  • Healthy — last probe under 5s.
  • Slow — between 5 and 30s. Likely upstream is rate-limited.
  • Offline — over 30s or a non-2xx. Mentioned offline tools still work (they may recover) but render at half opacity.

When an integration first transitions to Offline, we email org OWNERS once for the day. Common causes: provider outage, OAuth token revoked, custom-MCP endpoint URL changed. The email links straight to Settings → MCP for re-test or reconnect.

Limits

  • Up to 3 MCP calls per chat message. Mention more and the rest are dropped.
  • Each tool result is truncated to 50 KB before the AI sees it; the total across all results in one message is 150 KB.
  • Per-call timeout: 10s for tool calls, 30s for the protocol handshake.
  • Outbound HTTP from Switchy is HTTPS-only and never follows redirects.
Looking for the other side of MCP — calling Switchy from Claude Desktop or Cursor? Install Switchy as an MCP server →