The Calseta MCP server runs on port 8001 and uses Server-Sent Events (SSE) as its transport protocol.
Prerequisites
- Calseta is running (
docker compose up)
- You have an API key with the appropriate scopes
- 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
Restart Claude Desktop after saving the config.
Claude Code
Add to your project’s .mcp.json or global MCP config:
Cursor
In Cursor settings, add a new MCP server:
- Open Settings → MCP
- Click Add Server
- 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:
Verifying the Connection
After configuring your client, you should be able to:
- List resources — ask your agent to read
calseta://alerts to see recent alerts
- Use tools — ask your agent to search alerts with
search_alerts
- 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:
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).