Integrations

Preview — the MCP Gateway is in private beta; the config below is the intended setup. Join the waitlist →

Point any MCP client at the Gateway once, then discover and connect servers through it.

Cursor

Add to .cursor/mcp.json in your project (or your global Cursor MCP settings):

{
  "mcpServers": {
    "mcprating": { "command": "npx", "args": ["-y", "@mcprating/gateway"] }
  }
}

Claude Desktop

Add to claude_desktop_config.json, then restart Claude Desktop:

{
  "mcpServers": {
    "mcprating": { "command": "npx", "args": ["-y", "@mcprating/gateway"] }
  }
}

The Gateway's meta-tools (mcp_discover, mcp_connect, …) become available in the client.

API — TypeScript

import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";

const transport = new StdioClientTransport({
  command: "npx",
  args: ["-y", "@mcprating/gateway"],
});
const agent = new Client({ name: "my-agent", version: "1.0.0" });
await agent.connect(transport);

await agent.callTool({ name: "mcp_connect", arguments: { slug: "github-mcp-server", confirmed: true } });
const res = await agent.callTool({
  name: "github-mcp-server__search_repositories",
  arguments: { query: "model context protocol" },
});

API — Python

from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client

params = StdioServerParameters(command="npx", args=["-y", "@mcprating/gateway"])

async with stdio_client(params) as (read, write):
    async with ClientSession(read, write) as session:
        await session.initialize()
        await session.call_tool("mcp_connect", {"slug": "github-mcp-server", "confirmed": True})
        res = await session.call_tool(
            "github-mcp-server__search_repositories",
            {"query": "model context protocol"},
        )

For a guided walkthrough, see the Quickstart.