# Building Custom Connections

Custom connections let you integrate systems that Duvo does not support out of the box, so you can automate work across proprietary tools.

> **Note:** Building custom connections requires software development and deployment experience.

***

## What are Custom Connections?

Custom connections allow you to connect Duvo to systems that aren't covered by a standard Duvo connection. Think of them as custom-built bridges between Duvo and your proprietary or specialized software.

***

## Building A Custom Connection

Duvo uses the Model Context Protocol (MCP) open standard to connect with external systems—it's not a Duvo product. To build your own MCP server to create custom tools for your assignments, you'll need technical expertise in software development.

If you're not familiar with MCP, visit the [official MCP documentation](https://modelcontextprotocol.io/docs/getting-started/intro). This resource provides documentation, tutorials, and examples for building MCP servers in various programming languages.

Once you have built, tested, and deployed an MCP server, you can connect it to Duvo using the steps outlined in [How to Add a Connection](/connections/how-to-add-connection.md).

***

## Requirements for Custom Connections

For your MCP server to connect to Duvo, it must meet these technical requirements:

* **Cloud accessibility**: The MCP server must be accessible via the internet (cloud-hosted). Duvo needs to reach it over the web to communicate.
* **Streamable HTTP**: The MCP server must support streamable HTTP communication. MCP servers that only support STDIO (standard input/output) or HTTP/SSE won't be able to connect to Duvo's assignments.

***

## Setting Up OAuth for Custom MCP Connections

If your MCP server requires OAuth authentication, Duvo automatically detects whether the server supports **dynamic client registration (DCR)**. When DCR is supported, no Client ID or Secret is needed — the connection is handled automatically.

If the server does not support DCR, or if you prefer to use your own pre-registered OAuth app, expand the **Advanced settings** section when adding the connection. There you will find the **How to set up your OAuth app** guide, which provides step-by-step guidance and a one-click copy button for the redirect URI you need to register.

**Steps (when providing your own OAuth credentials):**

1. Register an OAuth app with your MCP provider (refer to the provider's developer documentation).
2. Add Duvo's redirect URI as an allowed redirect URI in your OAuth app settings. The redirect URI is `https://platform.duvo.ai/v1/oauth/mcp/callback` (also displayed in the **Advanced settings** section with a copy button).
3. Enter your Client ID and Client Secret in the **Advanced settings** fields and complete the connection setup.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.duvo.ai/connections/building-custom-connections.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
