universal-tool-calling-protocol

UTCP-MCP Bridge

Updated

All-in-one MCP server that can connect your AI agents to any native endpoint, powered by UTCP

UTCP-MCP Bridge

Overview

The last MCP server you'll ever need.

UTCP-MCP Bridge is a universal, all-in-one MCP server that brings the full power of the Universal Tool Calling Protocol (UTCP) to the MCP ecosystem. With this project, you can:

  • Use UTCP as a proxy: Instantly expose all tools registered via UTCP as MCP-compatible tools, making them available to any MCP client.
  • Use the UTCP client directly: Register and deregister providers, search and call tools — unlocking the main functions of the UTCP client from a single place.
  • Web interface: Easily manage your tools and providers through a user-friendly web UI. Register and deregister providers, enable and disable tools, and much more — all with just a few clicks. More features are coming soon!

With UTCP-MCP Bridge, you only need to install one MCP server to access, manage, and extend your tool ecosystem—no matter how you want to use it.

Getting Started

You can run the UTCP-MCP Bridge in two ways: using Docker or a local bash script.

1.1 Run with Docker

Ensure you have Docker and Docker Compose installed.

docker-compose up --build

1.2 Run with Bash Script

Ensure you have Python 3 installed.

./run.sh

1.3 Run with PowerShell Script

Ensure you have Python 3 installed.

./run.ps1

This will:

  • Set up a Python virtual environment with all dependencies or build the Docker image
  • Start the MCP servers and WEB server
  • Expose the following ports:
    • 8776 (UTCP Client MCP)
    • 8777 (UTCP Proxy MCP)
    • 8778 (FastAPI web server)

2 Connect with your MCP Client of choice

To connect your MCP client to the UTCP-MCP Bridge, add the following entries to your client's mcp.json (or equivalent configuration file):

Cursor example:
{
  "mcpServers": {
    // any other mcp servers
    "utcp-proxy-mcp-local": {
      "url": "http://localhost:8777/utcp-proxy"
    },
    "utcp-client-mcp-local": {
      "url": "http://localhost:8776/utcp-client"
    }
  }
}
VS Code example:
{
	"servers": {
    // any other mcp servers
		"utcp-proxy-mcp-local": {
			"url": "http://localhost:8777/utcp-proxy",
			"type": "http"
		},
		"utcp-client-mcp-local": {
			"url": "http://localhost:8776/utcp-client",
			"type": "http"
		}
	},
	"inputs": []
}
  • utcp-proxy-mcp-local connects to the UTCP Proxy MCP server (port 8777)
  • utcp-client-mcp-local connects to the UTCP Client MCP server (port 8776)

Adjust the URLs if you are running the server on a different host or port.

3 UI Interface

Web Interface to view and manage providers and tools is accessible in any browser at http://localhost:8778/

Configuration

  • Provider and tool definitions are loaded from the data/ directory (e.g., data/providers.json).
  • Environment variables can be set in Docker Compose or your shell to customize ports and paths.

API Endpoints

  • / – Web UI
  • /health – Health check and status
  • /tools – List available tools
  • /providers – List available providers

Dependencies

  • utcp
  • fastmcp
  • fastapi
  • python-dotenv

All dependencies are installed automatically by the Docker image or the bash script.

MCP Server · Populars

MCP Server · New

    SchmidtDSE

    MCP Data Server

    Duckdb-based MCP server for datasets

    Community SchmidtDSE
    qubrics

    Sendmux SDKs

    Official monorepo of SDKs, CLI, and MCP servers for Sendmux email APIs across TypeScript, Python, Go, PHP, Rust, and Ruby.

    Community qubrics
    onehumanbeing

    ESP32 iPhone Agent

    Let an AI model use a real iPhone with a $7 ESP32: AirPlay eyes, USB HID hands, any OpenAI-compatible vision model. No Mac, no developer account, no jailbreak.

    Community onehumanbeing
    qubrics

    Email Inbox API + Sending by Sendmux

    Official monorepo of SDKs, CLI, and MCP servers for Sendmux email APIs across TypeScript, Python, Go, PHP, Rust, and Ruby.

    Community qubrics
    Twigpine

    openrecall

    Open-source, self-hostable, zero-knowledge memory for AI agents. End-to-end encrypted — the server stores only ciphertext and can't read your agent's memory. Works with any MCP agent .

    Community Twigpine