MCP Compose
MCP Compose is a unified control plane for multiple Model Context Protocol (MCP) servers. It exposes a single MCP endpoint, a REST API, and a modern Web UI for orchestration, monitoring, and tool invocation.
What you can do with MCP Compose
- Compose multiple MCP servers into one unified interface
- Discover and invoke tools across servers with conflict resolution
- Manage server lifecycles (start/stop/restart) from UI, CLI, or API
- Translate protocols between STDIO and Streamable HTTP (SSE deprecated)
- Observe in real time with metrics, logs, and health checks
Quick start
Create a minimal configuration file:
[composer]
name = "my-composer"
conflict_resolution = "prefix"
[[servers]]
name = "filesystem"
command = "python"
args = ["-m", "mcp_server_filesystem", "/data"]
transport = "stdio"
[[servers]]
name = "calculator"
command = "python"
args = ["-m", "mcp_server_calculator"]
transport = "stdio"
Start the server:
mcp-compose serve --config mcp_compose.toml
Open the Web UI at http://localhost:8000 and the REST API at http://localhost:8000/api/v1.
Documentation
📄️ MCP Compose
MCP Compose is a unified control plane for multiple Model Context Protocol (MCP) servers. It exposes a single MCP endpoint, a REST API, and a modern Web UI for orchestration, monitoring, and tool invocation.
📄️ Architecture
MCP Compose acts as a facade for multiple managed MCP servers. It aggregates tools, prompts, and resources into a single unified server and exposes that aggregation through MCP transports, a REST API, and a Web UI.
📄️ Clients
MCP Compose can be used with any MCP-compatible client. This guide covers configuration for the two most popular clients: Claude Desktop and VS Code.
📄️ Configuration
MCP Compose is configured using a TOML file, typically named mcp_compose.toml. This page covers all configuration options and best practices.
📄️ Getting Started
This guide walks through installing MCP Compose, creating a configuration, and launching the server with Web UI and REST API.
📄️ Tool Discovery
MCP Compose aggregates tools across all managed MCP servers and exposes them through CLI, REST API, and the Web UI.
📄️ Operation
This section covers runtime operations: starting/stopping servers, invoking tools, and monitoring the system.
📄️ Examples
Below are practical examples for composing and proxying MCP servers. Use them as templates for your own configurations.
📄️ Integrations
MCP Compose integrates with applications and agent frameworks via three main interfaces:
📄️ Deployment
This guide covers Docker, docker-compose, and Kubernetes deployment patterns for MCP Compose.
📄️ API Reference
This page summarizes the MCP Compose REST and WebSocket APIs. All endpoints are prefixed by /api/v1 unless configured otherwise.
📄️ Contributing
Thank you for contributing to MCP Compose. This page summarizes the workflow and standards for changes.