Skip to main content

Overview

Felix exposes an MCP (Model Context Protocol) server that lets AI assistants create, manage, and run workflows on your behalf. Any MCP-compatible client — Claude Code, Claude Desktop, Cursor, or custom agents — can connect to it. The MCP server provides the same capabilities as the REST API, packaged as tool calls that AI models can invoke directly.

Endpoint

Authentication uses the same x-api-key header as the REST API.

Connecting from Claude Code

Get your API key from Profile. Once connected, Claude Code can use Felix tools directly in conversation:

Connecting from Claude Desktop

Add to your Claude Desktop config file (~/Library/Application Support/Claude/claude_desktop_config.json on Mac):
Restart Claude Desktop after saving.

Available Tools

create_workflow

Creates a new workflow and starts the planning agent to design it based on your prompt. Parameters: Returns: Workflow ID, name, URL to view in the UI, and status "planning".

run_workflow

Executes a workflow and waits for it to complete (up to 10 minutes). Returns execution metadata (status, IDs, output filenames, and presigned URLs). Use get_execution to fetch inline file content when needed, or pass include_outputs: true to get it in the same call. If the workflow has an input schema (human checkpoint on step 1), you must provide matching input data. Parameters: Returns: Execution ID, workflow ID, workflow name, final status, URL, and results array with filenames and presigned URLs. When include_outputs is true, text-based files also include inline content.

get_execution

Retrieves the current status of an execution. When status is finished, includes result files with inline text content and presigned download URLs (valid for 1 hour) by default. Parameters:

list_workflows / list_executions

Both support pagination via limit (1-100) and cursor parameters.

get_workflow

Returns workflow details including input_schema (JSON Schema) if the workflow’s first step is a human checkpoint, and required_integrations listing any external services the workflow needs.

Example: End-to-End with Claude Code

Since run_workflow waits for completion by default, the AI assistant gets the results in a single step — no polling loop needed.