> For a complete page index, fetch https://docs.synthflow.ai/llms.txt. For full documentation content, fetch https://docs.synthflow.ai/llms-full.txt.

# MCP Connectors

> Learn how to connect your Synthflow agent to an MCP (Model Context Protocol) server, giving it access to external tools the LLM can invoke during calls.

MCP actions connect your Synthflow agent to an external [MCP server](https://modelcontextprotocol.io/), giving the LLM access to tools hosted on that server. During a call, the agent decides when to invoke these tools based on the conversation context, similar to [custom actions](/about-custom-actions), but using the open MCP standard instead of a hand-configured HTTP request.

You can configure MCP servers in the UI or manage them through the [MCP configuration API](/api-reference/platform-api/mcp-servers/set-workspace-mcp-config).

![MCP action configuration in Synthflow](https://storage.googleapis.com/granular-changelog/doc-images/mcp_1.png)

> **Note**
>
> MCP actions are currently supported on [**Prompt Builder agents**](/the-agent-editor#prompt-builder-agents). Flow Designer support is not yet available.

> **Note**
>
> This page covers connecting your **voice agent** to **external** MCP servers during calls. To manage Synthflow from an AI tool instead, see the [Claude Code](/anthropic) or [Codex](/openai) connectors.

## How it works

1. You create an MCP server in your workspace with its URL and credentials, then discover its tools.
2. You attach the MCP server to an agent and select which tools the agent can use.
3. During a call, the LLM sees the selected tools and invokes them when the conversation calls for it.

Each workspace can register multiple MCP servers.

## Step 1: Create an MCP server

![MCP server headers and query parameters](https://storage.googleapis.com/granular-changelog/doc-images/mcp_servers_headers.png)

1. Go to **Actions** in the sidebar.
2. Select **MCP Connectors** and create a new one.
3. Enter the **Server URL**, the HTTPS endpoint of your MCP server.
4. Optionally add **Headers** and **Query parameters** as key-value pairs for values your server expects on every request, such as API keys, tenant IDs, or version flags.
5. Choose an authentication method, **No Auth** or **Bearer Token**, and provide the credentials.
6. Click **Discover Tools**. Synthflow connects to the server and lists the available tools.

> **Warning**
>
> The server URL must use HTTPS. Plain HTTP endpoints are rejected.

> **Note**
>
> Tools are not synced automatically. If your MCP server adds, removes, or updates tools, click **Discover Tools** again.

## Step 2: Attach to an agent

1. Open your agent and go to the **Actions** tab.
2. Click **Add Action** during the call and select your MCP server.
3. Select which tools the agent should have access to. Fewer tools means a smaller context window and better LLM performance.

The agent now has access to the selected MCP tools. During calls, the LLM will invoke them based on the conversation context.

> **Tip**
>
> If your MCP server exposes many tools, only select the ones relevant to this agent's purpose. Large tool lists can degrade response quality and increase latency.

## Play audio while an MCP tool runs

Action audio gives callers feedback while an MCP tool is working. When the LLM invokes a tool during a live voice call, the selected sound loops until the tool returns or fails.

To configure action audio:

1. Open your agent and go to the **Actions** tab.
2. Open the attached MCP connector.
3. Enable the tool you want the agent to use.
4. Under that tool, set **Action Audio** to **None**, **Typing**, **Ambient**, **Modern Jazz**, or **Classical**.

Action audio is configured separately for each enabled tool, not once for the MCP connector. This lets you use different sounds for different tools. **None** is the default and plays no background audio.

## Error handling

| Scenario                   | Behavior                                                                                 |
| -------------------------- | ---------------------------------------------------------------------------------------- |
| **MCP server unreachable** | Action is skipped for this call. The agent continues without the tools.                  |
| **Tool call times out**    | The LLM handles the timeout and continues the conversation.                              |
| **Non-success response**   | The error is logged in call records. The LLM continues the conversation.                 |
| **Invalid credentials**    | Tool discovery fails with an authorization error. Check your server URL and credentials. |

> **Note**
>
> Synthflow cannot guarantee the response time of your MCP server. If your tools involve slow operations, such as database queries or third-party API chains, the LLM will handle the wait and continue the conversation.

## Limitations

* MCP actions are supported on **Prompt Builder agents** only. Flow Designer agent support is planned.
* **Streamable HTTP** is the preferred transport. **SSE (Server-Sent Events)** is supported as a fallback for backward compatibility. stdio-based MCP servers are not compatible.

## FAQ

#### Can I use MCP actions with Flow Designer agents?

No. MCP actions are currently supported on [Prompt Builder agents](/the-agent-editor#prompt-builder-agents) only. Flow Designer support is planned.

#### Are MCP tools synced automatically?

No. If your MCP server adds, removes, or updates tools, open the MCP action and click **Discover Tools** again.

#### Can I configure MCP servers through the API?

Yes. Use the [MCP configuration API](/api-reference/platform-api/mcp-servers/set-workspace-mcp-config) to manage workspace MCP servers programmatically.

#### How is this different from the Claude Code and Codex connectors?

MCP Connectors let your **voice agent** call tools on an **external** MCP server during a live call. The [Claude Code](/anthropic) and [Codex](/openai) connectors are the opposite direction: an **AI tool you work in** calls tools to manage **your Synthflow workspace**.

#### Can each MCP tool use different action audio?

Yes. Configure **Action Audio** separately for each enabled tool. A tool set to **None** runs without background audio.