Skip to content
Sire Docs

Sire MCP Server

Let AI assistants interact with your Sire account through the Model Context Protocol.

The Sire MCP server lets AI assistants interact with your Sire account---list workflows, create new ones, trigger executions, and check status---all through the Model Context Protocol.

Available Tools

ToolDescription
list_workflowsList workflows with search and pagination
get_workflowGet workflow details by ID
create_workflowCreate a workflow with steps and edges
execute_workflowStart a workflow execution
get_executionGet execution status and results
list_executionsList executions with filters
resume_executionResume a suspended execution
list_templatesBrowse workflow templates
get_billing_usageCheck subscription and usage
list_fleetView fleet health summary
docs_searchSearch Sire product documentation
list_integrationsList registered MCP server integrations
register_integrationRegister a new MCP server integration
search_integrationsSearch the MCP server catalog
remove_integrationRemove a registered MCP server integration

All read tools support a _fields parameter (comma-separated) to limit which fields are returned.

Authentication

Set the SIRE_API_TOKEN environment variable to your Sire API token. Generate one from Mission Control > Settings > API Tokens.

Claude Desktop (SSE Mode)

Add the following to your claude_desktop_config.json:

{
  "mcpServers": {
    "sire": {
      "url": "https://mcp.sire.run/sse",
      "headers": {
        "Authorization": "Bearer YOUR_SIRE_API_TOKEN"
      }
    }
  }
}

Config file location:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Restart Claude Desktop after saving.

Cursor

Open Settings > MCP and add a new server:

  • Name: sire
  • Type: sse
  • URL: https://mcp.sire.run/sse

Then set the environment variable in your Cursor settings or shell profile:

export SIRE_API_TOKEN="your-token-here"

Alternatively, add to .cursor/mcp.json in your project:

{
  "mcpServers": {
    "sire": {
      "url": "https://mcp.sire.run/sse",
      "headers": {
        "Authorization": "Bearer YOUR_SIRE_API_TOKEN"
      }
    }
  }
}

Claude Code Integration (Stdio Mode)

The project includes a .mcp.json at the repository root that automatically configures the Sire MCP server for Claude Code using stdio transport.

Setup

  1. Generate an API token from Mission Control > Settings > API Tokens.

  2. Set the token in your shell profile (e.g. ~/.zshrc or ~/.bashrc):

export SIRE_API_TOKEN="your-token-here"

Reload your shell or run source ~/.zshrc so the variable is available before launching Claude Code.

  1. Start Claude Code from the project root:
cd sirerun
claude

Claude Code reads .mcp.json and starts the Sire MCP server via stdio transport automatically.

  1. Verify the server is available:
claude mcp list

You should see sire listed as an available server.

Configuration

The .mcp.json runs go run . with cwd set to api/sire-mcp-servers/sire. By default it points to the staging API (https://api.sire-staging.run). To target production, set SIRE_API_URL=https://api.sire.run in your environment before launching Claude Code, or edit the value directly in .mcp.json.

Tool Reference

The server exposes the following tools. All read tools accept an optional _fields parameter (comma-separated) to limit which fields are returned in the response.

Workflow Management

ToolDescriptionRequired Params
list_workflowsList workflows for the authenticated user. Supports search and pagination.--
get_workflowGet workflow details by ID, including steps and edges.id
create_workflowCreate a new workflow. Provide name, steps (nodes), and edges (connections between steps).name

Execution Management

ToolDescriptionRequired Params
execute_workflowStart a workflow execution. Returns execution ID and initial status.id
get_executionGet execution status, step states, and results by execution ID.id
list_executionsList recent workflow executions. Filter by status or workflow ID.--
resume_executionResume a suspended execution by providing the required input data.id

Templates, Billing, and Fleet

ToolDescriptionRequired Params
list_templatesList available workflow templates that can be deployed as live workflows.--
get_billing_usageGet current billing period subscription status and usage.--
list_fleetGet fleet-wide summary including active workers, execution counts, and health status.--

Documentation

ToolDescriptionRequired Params
docs_searchSearch Sire product documentation. Returns relevant documentation chunks for answering questions about features, setup, and troubleshooting.query

Integration Management

ToolDescriptionRequired Params
list_integrationsList all registered MCP server integrations for your account. Returns server name, URL, and registration date.--
register_integrationRegister a new MCP server integration. The server becomes available for use in workflows.name, url
search_integrationsSearch the Sire MCP server catalog for published integrations. Filter by keyword or category.--
remove_integrationRemove a registered MCP server integration by name.name

Resources

Resources provide read-only snapshots that Claude Code can attach to its context:

URIDescription
sire://workflowsTop 20 workflow summaries (ID, name, step count, last executed)
sire://executions/recentLast 10 executions (ID, workflow name, status, duration)
sire://templatesAll available workflow templates
sire://billing/usageCurrent period compute unit usage, limit, and plan name

Prompts

Prompts are guided workflows that the assistant can use:

PromptDescriptionRequired Params
create-workflowGuide for creating a new Sire workflow based on a goalgoal
debug-executionAnalyze a workflow execution to identify failures and suggest fixesexecution_id
optimize-workflowAnalyze a workflow and suggest performance, reliability, and cost improvementsworkflow_id

Example Usage

Once connected, ask Claude Code to interact with your Sire account:

  • "List my workflows" -- calls list_workflows
  • "Create a workflow called Daily Report with an HTTP step" -- calls create_workflow
  • "Execute workflow wf-abc123" -- calls execute_workflow
  • "Show me all failed executions from the last hour" -- calls list_executions with status and since filters
  • "Resume execution e-xyz789 with approved=true" -- calls resume_execution
  • "What templates are available?" -- calls list_templates
  • "Check my billing usage" -- calls get_billing_usage
  • "Search the docs for human-in-the-loop" -- calls docs_search
  • "List my integrations" -- calls list_integrations
  • "Register a new MCP server called github at https://github-mcp.example.com/rpc" -- calls register_integration
  • "Search the catalog for database integrations" -- calls search_integrations
  • "Remove the github integration" -- calls remove_integration

Generic MCP Client

Connect any MCP-compatible client using the SSE transport:

  • Endpoint: https://mcp.sire.run/sse
  • Auth header: Authorization: Bearer YOUR_SIRE_API_TOKEN

Local Development (Stdio Mode)

Build and run the server locally for development or testing:

cd sire/sire-mcp-servers/sire
go build -o sire-mcp .

Run in stdio mode (default):

export SIRE_API_TOKEN="your-token-here"
./sire-mcp

Run in SSE mode on a custom port:

./sire-mcp -transport sse -port 9090

Override the API base URL for local backend development:

./sire-mcp -base-url http://localhost:8080

Using with Claude Desktop (Local Stdio)

{
  "mcpServers": {
    "sire": {
      "command": "/path/to/sire-mcp",
      "env": {
        "SIRE_API_TOKEN": "your-token-here"
      }
    }
  }
}

Example Workflows

Create and execute a workflow

Ask your AI assistant:

"Create a Sire workflow called 'Daily Report' with a single HTTP step that fetches https://api.example.com/stats, then execute it."

Behind the scenes the assistant will:

  1. Call create_workflow with the name and step definition
  2. Call execute_workflow with the returned workflow ID
  3. Call get_execution to poll for results

Check execution status

"Show me all running executions for the past hour."

The assistant calls list_executions with status: "running" and since set to one hour ago.

Resume a human-in-the-loop execution

"Execution e-abc123 is waiting for approval. Resume it with approved=true."

The assistant calls resume_execution with the execution ID and the required inputs.

Browse templates

"What workflow templates are available? Show me the most popular ones."

The assistant calls list_templates with sort: "popular".

Was this helpful?
Edit on GitHub