mcpo/README.md
Timothy Jaeryang Baek 15811b0eff Update README.md
2025-03-30 20:33:22 -07:00

1.6 KiB
Raw Blame History

mcpo

Expose any MCP tool as an OpenAPI-compatible HTTP server—instantly.

mcpo is a dead-simple proxy that takes an MCP server command and makes it accessible via standard RESTful OpenAPI, so your tools "just work" with LLM agents and apps expecting OpenAPI servers.

No custom protocol. No glue code. No hassle.

🚀 Quick Usage

We recommend using uv for lightning-fast startup and zero config.

uvx mcpo --port 8000 -- your_mcp_server_command

Or, if youre using Python:

pip install mcpo
mcpo --port 8000 -- your_mcp_server_command

Example:

uvx mcpo --port 8000 -- uvx mcp-server-time --local-timezone=America/New_York

Thats it. Your MCP tool is now available at http://localhost:8000 with a generated OpenAPI schema.

🔄 Using a Config File

You can serve multiple MCP tools via a single config file that follows the Claude Desktop format:

Start via:

mcpo --config /path/to/config.json

Example config.json:

{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-memory"]
    },
    "time": {
      "command": "uvx",
      "args": ["mcp-server-time", "--local-timezone=America/New_York"]
    }
  }
}

Each tool will be accessible under its own unique route, e.g.:

Each with a dedicated OpenAPI schema and proxy handler.

🔧 Requirements

  • Python 3.8+
  • uv (optional, but highly recommended for performance + packaging)

🪪 License

MIT