Skip to main content

MCP Client Config

The SDK’s getMcpConfig() generates a URL + headers that work with any MCP client supporting HTTP transport.

SDK Usage (Programmatic)

For apps that create MCP connections dynamically:
import { Igris } from "@igris/sdk";

const igris = new Igris({ apiKey: process.env.IGRIS_API_KEY! });

const config = igris.getMcpConfig("vk_github_prod", {
  user: currentUser.email,
  metadata: { role: currentUser.role },
});

// Use with any MCP client library
const client = new McpClient({
  transport: new StreamableHttpTransport(config.url, {
    headers: config.headers,
  }),
});

const tools = await client.listTools();
const result = await client.callTool("create_branch", { name: "feat/new" });

Claude Desktop

Add to your Claude Desktop config (~/.claude/claude_desktop_config.json):
{
  "mcpServers": {
    "github": {
      "url": "https://gateway.igris.dev/v1/mcp/vk_github_prod",
      "headers": {
        "Authorization": "Bearer ig_your_api_key",
        "X-Igris-User": "alice@company.com",
        "X-Igris-Metadata": "{\"role\":\"developer\"}"
      }
    }
  }
}

Cursor

Add to .cursor/mcp.json in your project:
{
  "mcpServers": {
    "github": {
      "url": "https://gateway.igris.dev/v1/mcp/vk_github_prod",
      "headers": {
        "Authorization": "Bearer ig_your_api_key"
      }
    }
  }
}

Claude Code

Add to ~/.claude.json or .mcp.json:
{
  "mcpServers": {
    "github": {
      "type": "url",
      "url": "https://gateway.igris.dev/v1/mcp/vk_github_prod",
      "headers": {
        "Authorization": "Bearer ig_your_api_key"
      }
    }
  }
}

VS Code

Add to .vscode/mcp.json:
{
  "servers": {
    "github": {
      "type": "sse",
      "url": "https://gateway.igris.dev/v1/mcp/vk_github_prod",
      "headers": {
        "Authorization": "Bearer ig_your_api_key"
      }
    }
  }
}

Multiple Connections

You can use multiple connections — each points to a different upstream MCP server:
const github = igris.getMcpConfig("vk_github_prod", { user: "alice" });
const slack = igris.getMcpConfig("vk_slack_prod", { user: "alice" });
const notion = igris.getMcpConfig("vk_notion_prod", { user: "alice" });
Each gets its own gateway URL, policies, and audit trail.

Self-Hosted

For self-hosted Igris deployments, set the baseUrl:
const igris = new Igris({
  apiKey: "ig_...",
  baseUrl: "https://igris.your-company.internal",
});
The gateway URL will use your domain: https://igris.your-company.internal/v1/mcp/vk_github_prod