mcpd
¶
Run your agents, not your infrastructure.
mcpd is a toolchain and runtime developed by Mozilla AI that simplifies the configuration,
execution and integration of Model Context Protocol (MCP) servers with your agentic application.
It is intended to provide the same experience across local, development and production environments.
It removes the friction of cross-language server orchestration, secrets management, version pinning, and lifecycle control.
Why mcpd?¶
Traditional agent frameworks often embed complex subprocess logic, brittle startup scripts, and ad-hoc 'desktop style' config.
mcpd replaces this with:
Zero-Config Tool Setup
No cloning repos or manual per-server setup. Install the runtime your chosen server uses, then mcpd add and mcpd daemon handle the rest.
Language-Agnostic Tooling
Use MCP servers written in Python (uvx), JavaScript/TypeScript (npx) in your code via a HTTP REST API that supports routing to MCP Servers.
Declarative Tool Management
Define version-pinned MCP servers and tools in .mcpd.toml. Reproducible, consistent, and CI-friendly.
Project config separated from runtime variables
Exportable args and environment variables per server e.g. ~/.config/mcpd/secrets.dev.toml.
Never commit dev specific vars to Git again.
Unified Dev Experience
One command: mcpd daemon. Starts and manages all servers behind the scenes.
Intuitive SDK Integration
The Python mcpd_sdk makes calling tools feel like native function calls; no HTTP, STDIO, or SSE boilerplate.
Even easier for users of any-agent via .agent_tools().
Seamless Local-to-Prod Transition
The same .mcpd.toml and agent code work in dev, CI, and cloud environments without modification.
Built for Dev & Infra¶
| Feature | Dev Workflow | Production Benefit |
|---|---|---|
.mcpd.toml |
Version-controlled agent tool spec | Declarative IaC for tools |
mcpd daemon |
Run everything locally | Run in container alongside your agentic app |
mcpd config export |
Discover required vars | Populate CI/CD pipelines |
| Secure secrets store | Local overrides per dev | Injected via Control Plane |
| Same binary | Local builds | Cloud deployment |
| SDKs for Python | Iterate locally | Plug into prod orchestrators |
Deploy Anywhere¶
mcpd is runtime-flexible and infrastructure-agnostic:
- โ๏ธ Works in any container or host where the runtimes required by your configured servers are available (
uv,npx, and/or Docker) - โ๏ธ Multi-cloud ready (AWS, GCP, Azure, on-prem)
- โป๏ธ Low resource overhead via in-process server management
๐ฆ Install¶
Homebrew¶
Add the Mozilla.ai tap:
brew tap mozilla-ai/tap
Then install mcpd:
brew install mcpd
Or install directly from the cask in a single command:
brew install --cask mozilla-ai/tap/mcpd
Installation methods
Please see our Installation page for additional ways to install and run mcpd.
Runtime prerequisites
Installing the mcpd binary is separate from installing MCP server runtimes.
Install only the runtime(s) your configured servers use:
uv for uvx::..., npx for npx::..., and Docker for docker::....
The tutorial and most examples on this site use uvx, so uv is the most common first requirement.
๐ Explore the Docs¶
Use the sidebar to explore:
- โ Requirements
- โ๏ธ Configuration
- ๐งญ CLI Reference
- ๐งต Execution context and secrets
- ๐ฉบ Troubleshooting
- ๐ ๏ธ Makefile and tooling
- ๐ Tutorial
About Mozilla.ai¶
This project is built and maintained by Mozilla.ai, a mission-driven organization reimagining AI for the public good.
Have ideas or feedback? Contributions welcome via GitHub.