MCP Gateway
Connect your AI agent to any remote service via the Model Context Protocol.
Looking to connect Claude, Cursor, or VS Code to your workspace? That's the MCP Server, the reverse direction. This page covers connecting your Sois AI agent out to external MCP servers.
The MCP Gateway lets you plug external MCP-compatible servers into your Sois AI workspace. Once connected, your SOIS agent can discover and call tools on those servers: search GitHub issues, query a Notion database, send a Slack message, all through natural language. No custom integration code. No middleware. Just a connection and a conversation.
How it works
You: "Search GitHub for open issues labelled 'bug' in the acme/backend repo"
Agent: ✓ Found 7 open issues labelled 'bug'. Here's the list …
The agent resolves the right MCP server, picks the right tool, passes the right arguments, handles authentication, and returns the result. You just ask.
Setting up a server
Navigate to MCP Gateway in the sidebar and click Add Server.
Quick-start presets
Pick a preset to auto-fill the connection details. You just add your credentials.
| Preset | What it connects | Auth type |
|---|---|---|
| GitHub | Repositories, issues, PRs, code search | Bearer token |
| Brave Search | Web search, news, images | API key |
| Slack | Channels, messages, users | Bearer token |
| Notion | Pages, databases, blocks | Bearer token |
| Linear | Issues, projects, cycles | Bearer token |
Or choose Custom Server and configure everything manually.
Server configuration
| Field | Description |
|---|---|
| Name | A label for this server (e.g. "Production GitHub") |
| Endpoint URL | The server's MCP endpoint (e.g. https://api.github.com/mcp) |
| Transport | Streamable HTTP or Server-Sent Events (SSE) |
Authentication
Each server can use one of five auth methods. Credentials for API Key, Bearer Token, and Basic Auth are stored securely in your Password Vault, so the gateway never sees raw secrets directly.
None
For public or unauthenticated servers. No credentials needed.
API Key
Link a Password Vault entry containing the API key. The gateway injects it into requests automatically.
Bearer Token
Link a Password Vault entry with a bearer token. Sent as Authorization: Bearer <token> on every request.
Basic Auth
Link a Password Vault entry with a username and password. Sent as standard HTTP Basic authentication.
OAuth 2.0 + PKCE
Full OAuth flow for services that require it. Configure:
| Field | Description |
|---|---|
| Authorization Endpoint | The provider's authorize URL (e.g. https://provider.com/oauth/authorize) |
| Token Endpoint | The provider's token URL (e.g. https://provider.com/oauth/token) |
| Client ID | Your OAuth application's client ID |
| Client Secret | Your OAuth application's client secret |
| Scopes | Space-separated list of OAuth scopes |
Click Connect with OAuth to initiate the PKCE flow. A browser window opens, you authorise, and the gateway stores the token. Tokens auto-refresh with a 5-minute buffer before expiry, so no manual intervention is needed.
Using MCP tools via the agent
Once a server is connected and tools are discovered, your AI agent can call them automatically.
Explicit targeting: Use @mcp in the chat to tell the agent to use MCP tools.
@mcp Search for open pull requests on acme/frontend
Implicit routing: The agent's router detects MCP-related intent from keywords like "GitHub", "Slack", "Notion", or "MCP" and selects the right tools automatically.
Viewing available tools
Open any server in the MCP Gateway and switch to the Available Tools section. Each tool shows:
- Name: the tool identifier on the remote server
- Description: what it does
- Input Schema: the parameters it accepts (JSON Schema)
Resources exposed by the server (database records, files, API responses) appear under Available Resources.
Tool call history
Every tool execution is logged. Open a server and switch to the History tab to see:
| Column | Description |
|---|---|
| Tool | Name of the tool that was called |
| Status | Success or failure |
| Duration | How long the call took |
| Called By | Which user or agent triggered it |
| Time | When the call was made |
Health monitoring
Servers are automatically health-checked every 10 minutes. If an active server becomes unreachable, its status changes to Error in the sidebar explorer.
| Status | Meaning |
|---|---|
| Active | Connected and healthy |
| Inactive | Manually disabled |
| Error | Unreachable or authentication failure |
You can trigger a manual check anytime with the Test Connection button.
Agent tool reference
The MCP Gateway exposes five tools to the AI agent, organised into three focused kits:
Examine kit
| Tool | Description |
|---|---|
getMcpGatewayOverview |
Summary of all configured servers: total count, active/inactive/error breakdown, recently connected servers. The agent calls this first to understand what's available. |
List kit
| Tool | Description |
|---|---|
mcpListServers |
List all configured servers with status, transport type, and tool count. Optionally filter by status (active, inactive, error). |
mcpDiscoverTools |
Connect to a server and fetch its tools and resources. Returns names, descriptions, and input schemas. |
Execute kit
| Tool | Description |
|---|---|
mcpCallTool |
Execute a tool on a remote server. Requires server_id and tool_name. Arguments are passed through to the remote tool. Credentials resolve automatically. Gated, so it requires confirmation before execution. |
mcpReadResource |
Read a resource from a server by URI (e.g. file:///path or db://table/id). |
Examples
Discover what's available:
What MCP servers do I have connected?
Search GitHub:
@mcp Find all open issues assigned to me on acme/backend
Query Notion:
@mcp Search my Notion workspace for pages about Q1 planning
Send a Slack message:
@mcp Post a message in #engineering saying the deploy is complete
Chain with workspace data:
Find the Q1 report in my documents and post a summary to the #leadership Slack channel
The agent combines MCP tools with built-in workspace tools in a single conversation. No orchestration required.
Permissions
Access to the MCP Gateway is controlled by your workspace role:
| Permission | Description |
|---|---|
| View MCP servers | See the list of configured servers |
| View server details | See a server's tools, resources, and history |
| Create MCP servers | Add new server connections |
| Update MCP servers | Edit server configuration |
| Delete MCP servers | Remove server connections |
| Execute remote tools | Call tools on remote servers via the agent |
Admins can assign these permissions per role from Settings > Permissions.
Want external AI clients to connect to your workspace instead? See the MCP Server for inbound connections from Claude Desktop, Cursor, VS Code, and any MCP-compatible client.