> ## Documentation Index
> Fetch the complete documentation index at: https://docs.jelou.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Workflows as MCP

> Expose your project's workflows as MCP tools so external AI agents can discover and invoke them.

**MCP** (Model Context Protocol) is the open standard that clients like Claude Desktop, Cursor and modern AI agents use to discover and invoke external tools. With **Workflows as MCP**, every Brain Studio project becomes an MCP server: the agent reads the workflows you enabled, invokes them when it needs them and receives the response in real time.

It's execution only. You still build and publish workflows in Brain Studio as always — MCP just exposes them so other agents can consume them, without writing a custom integration for each client.

<Note>
  This capability is enabled at the organization level. If you don't see the **Enable MCP** toggle on the **Start** node, reach out to your account team to turn it on.
</Note>

## How it works

| Step | What happens |
| - | - |
| **1. Configuration** | You turn on the **Enable MCP** toggle on the **Start** node of each workflow you want to expose. |
| **2. Connection** | The MCP client authenticates against the project with an API key and opens a session isolated per project. |
| **3. Discovery** | The agent calls `skill_list` and gets the enabled workflows back as tools, each with its name, description and inputs. |
| **4. Execution** | The agent calls `skill_execute` with the user context. The server keeps the thread alive and streams messages as they come. |
| **5. State** | `execution_status` and `execution_cancel` close the loop when you need to check on or cancel a running execution. |

## Enable a workflow as MCP

<Steps>
  <Step title="Open the Start node">
    On the workflow canvas, click the **Start** node to open its configuration panel.
  </Step>

  <Step title="Go to the Advanced tab">
    Select the **Advanced** tab. **Enable MCP** sits right below **Hide workflow**.

    <Frame caption="Enable MCP toggle in the Advanced tab of the Start node">
      <img src="https://mintcdn.com/jelouai/xWe4Wm2xc0_r-bwr/assets/images/mcp/workflow_as_mcp_en.png?fit=max&auto=format&n=xWe4Wm2xc0_r-bwr&q=85&s=ec46cca851075090733b1d476a17f041" alt="Start node configuration panel with the Advanced tab open and the Enable MCP toggle highlighted" width="2704" height="1286" data-path="assets/images/mcp/workflow_as_mcp_en.png" />
    </Frame>
  </Step>

  <Step title="Turn the toggle on">
    Switch on **Enable MCP**. The workflow is now exposed as an MCP tool and will show up in the `skill_list` of any agent connected to the project.
  </Step>

  <Step title="Copy the server URL">
    Click the gear icon to open **MCP configuration**. There you'll find the project's **MCP server URL**, a cURL usage example and a direct link to your API keys.
  </Step>

  <Step title="Publish the project">
    External agents only see published workflows. Publish a new version so the change reaches production.
  </Step>
</Steps>

<Tip>
  Only enable MCP on the workflows you actually want to offer externally. Every enabled workflow shows up in the agent's catalog and competes for its attention when it picks a tool.
</Tip>

## Connect an MCP client

The MCP server lives at the project level. Its URL follows this format:

```bash theme={null}
https://gateway.jelou.ai/workflows/mcp/{projectId}
```

Authentication uses one of your company's API keys, sent in the `x-api-key` header. Create it under **Settings** > **API Keys**.

```bash title="List the available tools" theme={null}
curl -X POST 'https://gateway.jelou.ai/workflows/mcp/{projectId}' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -H 'x-api-key: YOUR_API_KEY' \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/list",
    "params": {}
  }'
```

Any MCP-compatible client — Claude Desktop, Cursor or your own agent on OpenAI, Bedrock or an internal framework — connects with that URL and that key.

<Warning>
  The API key grants access to execute every MCP-enabled workflow in the project. Store it as a secret and rotate it if you suspect it was exposed.
</Warning>

## Server tools

| Tool | What it does |
| - | - |
| `skill_list` | Returns the published workflows with MCP enabled, each with its name, description and inputs. |
| `skill_execute` | Runs a workflow with the user context and streams messages as it progresses. |
| `execution_status` | Checks the state of a running execution. |
| `execution_cancel` | Cancels a running execution. |

<Note>
  MCP only executes workflows that are already published. Creating, editing or publishing workflows stays in the Brain Studio interface — the external agent can't modify them.
</Note>

## The workflow description matters more

With MCP, the description you wrote for AI Routing gains a new reader: the client's LLM. It's the only input it has when deciding whether to invoke your workflow, so a vague description degrades tool selection the same way it degrades internal routing.

<Tip>
  A good description states which requests the workflow handles, what it solves and in which contexts it should run. The same effort pays off twice: better AI Routing inside the project, and better tool selection outside it.
</Tip>

## Unsupported nodes

When an external agent invokes the workflow over MCP, components that depend on WhatsApp's native channel don't render the same way. What the end user sees depends on the MCP client orchestrating the conversation: in Claude Desktop, Cursor or a custom agent, those elements arrive as text or as a generic structure, not as native widgets.

With MCP enabled, the canvas flags these nodes with a **Not supported as MCP** label:

| Category | Nodes and components |
| - | - |
| **WhatsApp** | `WhatsApp Flows`, `HSM`, `Webview`, `Message with URL`, `Call to action` |
| **Human handoff** | `Jelou` (Inbox), `HubSpot`, `Genesys` |
| **Messages** | `Contact`, `Location` |
| **Other** | `Marketplace`, `Usage` |

<Warning>
  These nodes don't run when the workflow is used as an MCP tool. If your workflow depends on any of them, design an alternative path before exposing it.
</Warning>

<Note>
  WhatsApp is the only supported source channel for now. Other channels will be added based on demand.
</Note>

## Use cases

<AccordionGroup>
  <Accordion title="A custom agent that needs biometrics and KYC">
    A technical team running an agent on OpenAI or Bedrock that isn't migrating its stack: they enable the project's identity verification workflows as MCP and their agent invokes them whenever it detects it needs to validate a user — no proprietary APIs, no custom client to maintain.
  </Accordion>

  <Accordion title="An integration partner orchestrating several tools">
    A partner builds a vertical agent that combines CRM, email and Jelou capabilities: they expose the onboarding and validation workflows as MCP and orchestrate them from a single client, alongside the rest of their tools.
  </Accordion>

  <Accordion title="Demoing the project from Claude Desktop or Cursor">
    A sales team connects Claude Desktop to the project's MCP URL and walks a prospect through the channel's capabilities without opening Brain Studio or setting up a test environment.
  </Accordion>

  <Accordion title="Capabilities shared across several consumers">
    An order status workflow serves WhatsApp users and, with MCP enabled, also the internal agent the support team uses. One implementation, two consumers, the same business logic.
  </Accordion>
</AccordionGroup>

<CardGroup cols={2}>
  <Card title="AI Routing" icon="route" href="/en/guides/getting-started/ai-routing">
    Write the descriptions that the AI Router and MCP agents use to pick a workflow.
  </Card>

  <Card title="API Keys" icon="key" href="/en/guides/configuracion/claves-api">
    Create and rotate the API key the MCP client authenticates with.
  </Card>

  <Card title="Publish versions" icon="upload" href="/en/guides/getting-started/publicar-versiones">
    Publish the project so enabled workflows reach external agents.
  </Card>

  <Card title="Workflow executions" icon="play" href="/en/guides/getting-started/ejecuciones-workflow">
    Monitor the executions coming in from MCP clients.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.