Skip to main content
The Calseta MCP server runs on port 8001 and uses Server-Sent Events (SSE) as its transport protocol.

Prerequisites

  1. Calseta is running (docker compose up)
  2. You have an API key with the appropriate scopes
  3. The MCP server is accessible at http://localhost:8001 (or your deployment URL)

Claude Desktop

Add Calseta to your Claude Desktop configuration file: macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "calseta": {
      "url": "http://localhost:8001/sse",
      "headers": {
        "Authorization": "Bearer cai_your_api_key"
      }
    }
  }
}
Restart Claude Desktop after saving the config.

Claude Code

Add to your project’s .mcp.json or global MCP config:
{
  "mcpServers": {
    "calseta": {
      "url": "http://localhost:8001/sse",
      "headers": {
        "Authorization": "Bearer cai_your_api_key"
      }
    }
  }
}

Cursor

In Cursor settings, add a new MCP server:
  1. Open SettingsMCP
  2. Click Add Server
  3. Configure:
    • Name: calseta
    • URL: http://localhost:8001/sse
    • Headers: Authorization: Bearer cai_your_api_key

Generic MCP Client

Any MCP-compatible client can connect using:
SettingValue
TransportSSE (Server-Sent Events)
URLhttp://localhost:8001/sse
Auth headerAuthorization: Bearer cai_your_api_key

Verifying the Connection

After configuring your client, you should be able to:
  1. List resources — ask your agent to read calseta://alerts to see recent alerts
  2. Use tools — ask your agent to search alerts with search_alerts
  3. Read enrichment — ask your agent to check calseta://enrichments/ip/8.8.8.8

Required Scopes

The scopes on your API key determine what MCP resources and tools are available:
ScopeEnables
alerts:readAlert resources, search_alerts tool
alerts:writepost_alert_finding, update_alert_status tools
enrichments:readEnrichment resources, enrich_indicator tool
workflows:readWorkflow resources
workflows:executeexecute_workflow tool
Create a dedicated API key for MCP with only the scopes your agent needs. Don’t reuse your admin key.

Troubleshooting

“Connection refused” — Ensure the MCP server is running. Check docker compose ps and look for the mcp service on port 8001. “Unauthorized” — Verify your API key is correct and hasn’t expired. Check that the key prefix matches one in the database. “No resources available” — Your API key may lack the required scopes. Check the key’s scopes with GET /v1/api-keys. SSE connection drops — Some reverse proxies buffer SSE connections. Ensure your proxy configuration supports streaming responses (disable buffering for the MCP endpoint).