User Guide/Integrations
Integrations

MCP Access

Connect AI coding agents and assistants to your Cortex workspace using MCP (Model Context Protocol).

Why Use MCP?

MCP access lets any MCP-compatible client — coding agents, desktop assistants, IDE extensions — interact with your Cortex workspace. The client auto-discovers your full API as tools from the OpenAPI spec, so project management, feed inspection, digest retrieval, and workspace mutations all happen inside the agent conversation.

Prerequisites

  • A Cortex API key — create one from the API Keys guide.
  • Python and uvx — the MCP bridge runs via uvx (part of uv). Install with brew install uv (macOS) or see the uv installation guide.

Client Setup

Each client uses the same awslabs.openapi-mcp-server bridge process and the same three values — only the config file location and JSON shape differ. Replace the API key placeholder in whichever config you use.

Note

Keep your API key in the config file's env block rather than passing it as a command-line argument to avoid exposing the token in process listings.

Claude Desktop

Add to claude_desktop_config.json (Settings → Developer → Edit Config):

{
  "mcpServers": {
    "cortex": {
      "command": "uvx",
      "args": ["awslabs.openapi-mcp-server==1.0.0"],
      "env": {
                "API_NAME": "cortex",
                "API_BASE_URL": "https://app.runcortex.io",
                "API_SPEC_URL": "https://app.runcortex.io/api/openapi.json",
                "AUTH_TYPE": "bearer",
                "AUTH_TOKEN": "ctx_your_api_key_here",
                "ENABLE_OPERATION_PROMPTS": "true",
                "LOG_LEVEL": "ERROR"
        }
    }
  }
}
Cursor

Add to .cursor/mcp.json:

{
  "mcpServers": {
    "cortex": {
      "command": "uvx",
      "args": ["awslabs.openapi-mcp-server==1.0.0"],
      "env": {
                "API_NAME": "cortex",
                "API_BASE_URL": "https://app.runcortex.io",
                "API_SPEC_URL": "https://app.runcortex.io/api/openapi.json",
                "AUTH_TYPE": "bearer",
                "AUTH_TOKEN": "ctx_your_api_key_here",
                "ENABLE_OPERATION_PROMPTS": "true",
                "LOG_LEVEL": "ERROR"
        }
    }
  }
}
VS Code Copilot

Add to .vscode/mcp.json:

{
  "servers": {
    "cortex": {
      "command": "uvx",
      "args": ["awslabs.openapi-mcp-server==1.0.0"],
      "env": {
                "API_NAME": "cortex",
                "API_BASE_URL": "https://app.runcortex.io",
                "API_SPEC_URL": "https://app.runcortex.io/api/openapi.json",
                "AUTH_TYPE": "bearer",
                "AUTH_TOKEN": "ctx_your_api_key_here",
                "ENABLE_OPERATION_PROMPTS": "true",
                "LOG_LEVEL": "ERROR"
        }
    }
  }
}
Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "cortex": {
      "command": "uvx",
      "args": ["awslabs.openapi-mcp-server==1.0.0"],
      "env": {
                "API_NAME": "cortex",
                "API_BASE_URL": "https://app.runcortex.io",
                "API_SPEC_URL": "https://app.runcortex.io/api/openapi.json",
                "AUTH_TYPE": "bearer",
                "AUTH_TOKEN": "ctx_your_api_key_here",
                "ENABLE_OPERATION_PROMPTS": "true",
                "LOG_LEVEL": "ERROR"
        }
    }
  }
}

Troubleshooting & FAQ

I updated the MCP config, but I still do not see Cortex tools.

Restart the MCP client after changing its config so it reloads the Cortex connection.

If the tools still do not appear, confirm that API_SPEC_URL points to your workspace's /api/openapi.json endpoint and that the workspace is reachable from your machine.

Why am I getting authentication errors?

Confirm that AUTH_TYPE is set to bearer and that AUTH_TOKEN is a valid Cortex API key starting with ctx_.

The key must belong to the same organization as the workspace you are connecting to and must not have been revoked.

Why are some Cortex operations missing from the MCP client?

MCP exposes the full customer-facing Cortex API. If an operation is missing, confirm your API key has the required permissions and that the MCP bridge is running the latest version.