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

# Custom MCP

The Custom MCP connection lets you link Duvo to any system not covered by a built-in connection. You provide the URL of your own MCP-compatible server, and Duvo connects to it so your agents can use the tools that server exposes.

## Setup

Custom MCP connections require a deployed MCP server that is accessible over the internet. Follow these steps to deploy your server and connect it to Duvo.

<Note>
  Your MCP server must be accessible over the internet via a public HTTPS URL (localhost is not supported), and must support streamable HTTP transport (STDIO and HTTP/SSE are not supported).
</Note>

<Steps>
  <Step title="Deploy your MCP server" icon="server">
    Build and deploy an MCP server that implements the tools you need. The server must be reachable at a public HTTPS endpoint.

    For guidance on building an MCP server, see [Building Custom Connections](/user-guide/connections/building-custom-connections).
  </Step>

  <Step title="Add the connection in Duvo" icon="plug">
    1. Open the [Connections page](https://app.duvo.ai/integrations).
    2. Click **Add custom connection** at the bottom of the available connections list.
    3. Enter a **Connection name** that your team will recognize (for example, "Internal CRM" or "Warehouse API").
    4. Choose an **Authorization method**:
       * **None** — No authentication required. Use this for servers that handle auth at the network level or have no auth.
       * **Access token / API key** — Your server requires a static token or API key. Each teammate enters their own credentials when they connect.
       * **Custom headers** — Your server requires specific HTTP headers for authentication. Each teammate provides their own header values.
       * **OAuth** — Your server uses OAuth for authentication. See the OAuth section below for details.
    5. Enter the **Server URL** — the public HTTPS URL of your deployed MCP server (for example, `https://example.com/mcp`).
    6. Click **Create** to add the connection type to your team's catalog.
  </Step>

  <Step title="Connect your account" icon="user-check">
    After the connection type is created, each teammate clicks **Enable** on the new connection card and provides their own credentials based on the authorization method chosen in the previous step.
  </Step>
</Steps>

### OAuth setup

When you select OAuth as the authorization method and enter a server URL, Duvo automatically checks whether the server supports OAuth and **dynamic client registration (DCR)**.

* **If the server does not support OAuth:** An error message appears suggesting you use a different authorization method.
* **If DCR is supported:** No additional credentials are needed. The connection is handled automatically.
* **If DCR is not supported:** The **Advanced settings** section opens automatically with the Client ID and Secret fields marked as required. Enter your **OAuth Client ID** and **OAuth Client Secret**. This section also displays a redirect URI that you need to register in your OAuth provider.

You can also provide a Client ID and Secret manually through **Advanced settings** if you prefer to use a pre-registered OAuth app instead of automatic registration.

## Capabilities

* **Access proprietary systems** — Connect to internal tools, legacy platforms, or custom-built APIs that are not available as standard connections.
* **Call custom tools** — Use any tools your MCP server exposes directly within agent workflows.
* **Authenticate securely** — Support multiple authentication methods including API key, custom headers, and OAuth, depending on your server's requirements.
* **Extend Duvo's reach** — Add domain-specific functionality tailored to your organization's needs without waiting for a built-in connection.

## Key Benefits

* **Unlimited connection scope** — Connect to any system you can build an MCP server for, without waiting for a built-in connection to exist.
* **Full control** — You own and manage the server, so you decide what tools are available and what data is exposed.
* **Consistent workflow** — Custom tools work the same way as built-in connections. Your agents use them without special handling.
* **Secure by design** — Credentials stay within Duvo's connection setup and are not exposed in agent instructions.
* **Team-wide catalog** — Add a custom connection once and every teammate can connect with their own credentials.

## Works Well With

<CardGroup cols={3}>
  <Card title="Browser" icon="https://mintcdn.com/duvo-d8027998/O3tlM6eCuFk2uJpN/images/connections/browser-agent.svg?fit=max&auto=format&n=O3tlM6eCuFk2uJpN&q=85&s=49168ae85c39df2529060d2f33df88b2" href="/user-guide/connections/available-connections/browser" width="24" height="24" data-path="images/connections/browser-agent.svg">
    Use a custom MCP server to pull data from a proprietary system, then use the Browser connection to enter that data into a web-based downstream tool.
  </Card>

  <Card title="Gmail" icon="https://mintcdn.com/duvo-d8027998/O3tlM6eCuFk2uJpN/images/connections/gmail.svg?fit=max&auto=format&n=O3tlM6eCuFk2uJpN&q=85&s=ad4e229283f3fe2f26c0f96a49f28e13" href="/user-guide/connections/available-connections/gmail" width="88" height="66" data-path="images/connections/gmail.svg">
    Retrieve records from an internal system via custom MCP and send automated email summaries.
  </Card>

  <Card title="Microsoft Outlook" icon="https://mintcdn.com/duvo-d8027998/O3tlM6eCuFk2uJpN/images/connections/outlook.svg?fit=max&auto=format&n=O3tlM6eCuFk2uJpN&q=85&s=e29aeb65c8cffce1cd3c83b81289b71f" href="/user-guide/connections/available-connections/microsoft-outlook" width="1831" height="1703" data-path="images/connections/outlook.svg">
    Retrieve records from an internal system via custom MCP and send automated email summaries.
  </Card>

  <Card title="Snowflake" icon="https://mintcdn.com/duvo-d8027998/O3tlM6eCuFk2uJpN/images/connections/snowflake.svg?fit=max&auto=format&n=O3tlM6eCuFk2uJpN&q=85&s=42fbf1853c296d1876c3b1fc21a8779e" href="/user-guide/connections/available-connections/snowflake" width="16" height="16" data-path="images/connections/snowflake.svg">
    Fetch data from a proprietary operational system through custom MCP and combine it with warehouse queries for unified reporting.
  </Card>

  <Card title="BigQuery" icon="https://mintcdn.com/duvo-d8027998/O3tlM6eCuFk2uJpN/images/connections/bigquery.svg?fit=max&auto=format&n=O3tlM6eCuFk2uJpN&q=85&s=248c94f17e07206b3f1844ed643d0749" href="/user-guide/connections/available-connections/bigquery" width="24" height="24" data-path="images/connections/bigquery.svg">
    Fetch data from a proprietary operational system through custom MCP and combine it with warehouse queries for unified reporting.
  </Card>
</CardGroup>
