Skip to main content

version python license mcp prs subcommands registries

简体中文 | English

⛭ mcp-pm — Homebrew for MCP Servers

A CLI package manager for the Model Context Protocol ecosystem. Install, search, serve, and manage MCP servers with a single command.

Quick Start • Features • Commands • Architecture • Comparison • Registries


https://github.com/user-attachments/assets/placeholder


✨ Quick Start

# Install
pip install mcp-pm

# Search for MCP servers across 5 registries (Smithery, npm, PyPI, built-in...)
mcp search filesystem

# Install a server
mcp install mcp-server-filesystem

# List installed servers
mcp list

# Explore the Web UI dashboard
mcp explore

# Run a server in an isolated sandbox
mcp sandbox my-server --level docker

# Start an OpenAI-compatible HTTP proxy
mcp serve

No servers installed yet? Run mcp search database to discover servers from the community registry, or mcp explore to browse them visually.


🚀 Features

Feature Description
🔍 Multi-Registry Search Search across 5 registries simultaneously — Smithery (5,000+ servers), npm, PyPI, built-in curated list
📦 One-Command Install mcp install <server> — installs from npm, pip, git, or Docker
🔒 Sandbox Isolation Run untrusted servers in isolated environments (subprocess, Docker)
🌐 Web UI Dashboard Beautiful dark-themed HTMX dashboard for visual management
⚡ OpenAI Proxy Expose all installed MCP tools as an OpenAI-compatible API
🛡️ mcp doctor Diagnostic tool that checks your entire MCP setup
🔧 12 Commands Full lifecycle management — install, uninstall, update, list, search, info, explore, serve, sandbox, config, doctor, run
🌍 Multi-language UI Web UI supports English and 中文 (Chinese), extensible to any language
📝 YAML Config Human-readable configuration at ~/.mcp-pm/config.yaml
🎨 Beautiful CLI Rich terminal output with tables, colors, and progress spinners

🎮 Commands

Command Description Example
mcp install Install an MCP server mcp install mcp-server-filesystem
mcp uninstall Remove an installed server mcp uninstall my-server
mcp update Update all installed servers mcp update
mcp list List installed servers and tools mcp list
mcp search Search across all registries mcp search database
mcp info Show detailed server info mcp info github
mcp explore Launch the Web UI dashboard mcp explore
mcp serve Start HTTP proxy server mcp serve
mcp sandbox Run server in sandbox mcp sandbox my-server --level docker
mcp config Manage configuration mcp config get servers
mcp doctor Diagnose installation health mcp doctor
mcp run Run an MCP tool directly mcp run my-server tool-name

🏗️ Architecture

┌─────────────────────────────────────────────────────────────┐
│                    User Interfaces                          │
│  ┌──────────┐  ┌────────────┐  ┌──────────┐  ┌──────────┐  │
│  │  CLI     │  │ Web UI     │  │ VS Code  │  │ CI/CD    │  │
│  │ Terminal │  │ Dashboard  │  │ Ext.     │  │ Actions  │  │
│  └────┬─────┘  └─────┬──────┘  └────┬─────┘  └────┬─────┘  │
└───────┼──────────────┼──────────────┼──────────────┼────────┘
        │              │              │              │
        ▼              ▼              ▼              ▼
┌─────────────────────────────────────────────────────────────┐
│                    CLI Core (click + rich)                   │
│  ┌─────────────────────────────────────────────────────────┐│
│  │    12 Subcommands: install · uninstall · list · search  ││
│  │    info · explore · serve · sandbox · config · update   ││
│  │    doctor · run                                          ││
│  └─────────────────────────────────────────────────────────┘│
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌─────────────┐ │
│  │ Installer│  │ Config   │  │ Sandbox  │  │ HTTP Proxy  │ │
│  │ (multi-  │  │ (YAML)   │  │ (Docker  │  │ (OpenAI     │ │
│  │  source) │  │          │  │  isol.)  │  │  Compat.)   │ │
│  └──────────┘  └──────────┘  └──────────┘  └─────────────┘ │
└───────────────────┬─────────────────────────────────────────┘
                    │
                    ▼
┌─────────────────────────────────────────────────────────────┐
│                  Registry Integrations                       │
│  ┌────────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐  │
│  │ Smithery   │  │ npm      │  │ PyPI     │  │ Built-in │  │
│  │ 5,000+ srvs│  │ Registry │  │ Registry │  │ 27 srvs  │  │
│  └────────────┘  └──────────┘  └──────────┘  └──────────┘  │
└───────────────────┬─────────────────────────────────────────┘
                    │
                    ▼
┌─────────────────────────────────────────────────────────────┐
│                  Execution Environment                       │
│  ┌──────────────┐  ┌──────────────┐  ┌───────────────────┐  │
│  │ Subprocess   │  │ Docker       │  │ OpenAI API Proxy  │  │
│  │ Direct Spawn │  │ Sandbox      │  │ MCP → OpenAI     │  │
│  └──────────────┘  └──────────────┘  └───────────────────┘  │
└─────────────────────────────────────────────────────────────┘

📦 Registry Backends

mcp-pm aggregates servers from 5 registries simultaneously:

Registry Status Servers Type
Built-in ✅ Always available 27 curated Offline
Smithery (smithery.ai) ✅ Online 5,000+ API
npm (npmjs.com) ✅ Online All mcp-server packages API
PyPI (pypi.org) ✅ Online All MCP Python packages API
MCP.so ⚠️ Deprecated (API retired) — Graceful fallback
GitHub Registry ⚠️ Temporarily unavailable — Graceful fallback

All backends are queried in parallel with a 3-second timeout — you always get results fast.


🔄 Comparison

Feature mcp-pm MCP.so Smithery GitHub Registry
CLI-first ✅ ❌ ❌ ❌
Offline mode (built-in index) ✅ ❌ ❌ ❌
Sandbox isolation ✅ ❌ ❌ ❌
Interactive TUI ✅ ❌ ❌ ❌
Multi-registry search ✅ ❌ ❌ ❌
Web UI dashboard ✅ ✅ ✅ ✅
Auto-config generation ✅ ❌ ❌ ❌
Open-source + self-hostable ✅ ❌ ❌ ✅
OpenAI-compatible proxy ✅ ❌ ❌ ❌
12 subcommands ✅ — — —

🛠️ Development

# Clone and set up
git clone https://github.com/weinotes/mcp-pm.git
cd mcp-pm
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev,web]"

# Run tests
python -m pytest tests/ -v --tb=short

# Start Web UI
mcp explore

# Lint
ruff check .
ruff format --check .

🤝 Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines.


📄 License

MIT License — Copyright (c) 2025-2026 Davey Wong wgwcko@gmail.com


Made with ❤️ by Davey Wong

Metadata

Release files for mcp-pm 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mcp-pm 0.1.0
File Size Uploaded Provenance Actions
mcp_pm-0.1.0.tar.gz 50.2 kB Without provenance Details for mcp_pm-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for mcp-pm 0.1.0
File Interpreter ABI Platform Actions
mcp_pm-0.1.0-py3-none-any.whl Python 3 none any Details for mcp_pm-0.1.0-py3-none-any.whl

Total release size: 99.1 kB

Release files / mcp_pm-0.1.0.tar.gz

Download URL mcp_pm-0.1.0.tar.gz
Size 50.2 kB
Tags Source
SHA-256 checksum
How to use checksums
c25d4091396db5bd7f605c27b13d4e4c49ad6fe37879623b9e1e7c71527abea6
BLAKE2b-256 checksum
How to use checksums
76b308890305c9e56c1d042d7fbd2804b50ba0cb139575e782f536f1735a2fe6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.13

Release files / mcp_pm-0.1.0-py3-none-any.whl

Download URL mcp_pm-0.1.0-py3-none-any.whl
Size 48.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
65c8addcd8a9845341f90d7880e8a4b3372de256677d5666b78596faf1e2bb3e
BLAKE2b-256 checksum
How to use checksums
c6f9e4671dbb67a18f2fb00c5404989b82c143d93d57418c7f07d5445a4dc7ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.13

Security for mcp-pm 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page