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
- 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.
- 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. - Teammates type
@github find issuesin chat. The AI sees the tool result inside its prompt and writes a reply that references it.
Connect GitHub
- Open Settings → MCP and click Connect GitHub.
- Authorise the Switchy GitHub app. Scopes:
read:org repo read:user. - You land back on Switchy with a green confirmation. The connector now appears as
@github. - Open a Space, go to Space settings → MCP integrations, and toggle
@githubon.
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
- Open Settings → MCP and click Connect Notion.
- Pick the Notion workspace + the pages/databases you want Switchy to read.
- Toggle
@notionon 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.
- Open Settings → MCP and scroll to Add a custom MCP.
- Fill in: display name, mention slug (e.g.
internal_search), HTTPS endpoint URL, auth type, and the secret (Bearer token orHeaderName:valuefor API-key auth). - Click Connect MCP. The credential is stored in Google Secret Manager. Switchy never logs it.
- Use the Test button on the row to confirm the upstream responds.
- 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.