MCP Registry Manager π
Centralized discovery and quality scoring for the exploding MCP (Model Context Protocol) ecosystem.
What It Does
The MCP ecosystem is growing fast β awesome-mcp-servers, AllInOneMCP, GitHub β but no unified discovery or quality checks.
MCP Registry Manager provides:
- Unified discovery β Aggregate servers from multiple sources
- Quality scoring β Test coverage, documentation, maintenance status
- Semantic search β "Find servers for file operations" (not just keyword search)
- Install management β Install/uninstall with dependency resolution
- Categorization β Organize by domain (files, databases, APIs, dev tools)
Problem It Solves
MCP is becoming the "USB-C of agent tools" but:
- Discovery is fragmented (GitHub repos, lists, registries)
- No quality signals (which servers are production-ready?)
- No semantic search (can't find "what does this do?")
- No unified management
Usage
# Discover all MCP servers from GitHub
python3 scripts/mcp-registry.py --discover
# Discover local MCP servers from config files
python3 scripts/mcp-registry.py --discover-local
# Search semantically
python3 scripts/mcp-registry.py --search "file system operations"
# Get quality report for a server
python3 scripts/mcp-registry.py --score @modelcontext/official-filesystem
# Install a server
python3 scripts/mcp-registry.py --install @modelcontext/official-filesystem
# List installed servers
python3 scripts/mcp-registry.py --list
# List only installed servers
python3 scripts/mcp-registry.py --list --installed
# Check health of a specific server
python3 scripts/mcp-registry.py --health-check local/filesystem
# Check health of all installed servers
python3 scripts/mcp-registry.py --health-all
# Export registry to JSON
python3 scripts/mcp-registry.py --export registry.json
Quality Score Formula
Quality = (0.4 * TestCoverage) + (0.3 * Documentation) + (0.2 * Maintenance) + (0.1 * Community)
Where:
- TestCoverage = % of code covered by tests
- Documentation = README completeness, API docs, examples
- Maintenance = Recent commits, responsive issues
- Community = Stars, forks, contributors
Data Sources
| Source | Type | Coverage |
|---|---|---|
| awesome-mcp-servers | Curated list | Manual discovery |
| GitHub Search | Repos with mcp-server topic |
Fresh discoveries |
| AllInOneMCP | API registry | Centralized metadata |
| Klavis AI | MCP integrations | Production services |
| Local Configs | Config files | Discovered servers |
Local Discovery Scans These Paths
The --discover-local flag scans for MCP server configs in these locations:
~/.config/claude/mcp_servers.json~/.config/mcp/servers.json~/.openclaw/config/mcp_servers.json~/.claude/mcp_servers.json
Local servers are automatically:
- Tagged with category
local - Given maximum quality score (1.0)
- Stored with their config path for reference
Categories
- Files β Filesystem, storage, S3
- Databases β PostgreSQL, MongoDB, Redis, SQLite
- APIs β HTTP, GraphQL, REST
- Dev Tools β Git, Docker, CI/CD
- Media β Image processing, video, audio
- Communication β Email, Slack, Discord
- Utilities β Time, crypto, encryption
Architecture
βββββββββββββββββββ
β Discovery β β awesome-mcp, GitHub, AllInOneMCP
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β Registry DB β β SQLite/PostgreSQL with metadata
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β Quality Scorer β β Test coverage, docs, maintenance
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β Semantic Searchβ β Embeddings + vector search
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β CLI Interface β β Install/uninstall/update
βββββββββββββββββββ
Requirements
- Python 3.9+
- requests (for GitHub API)
- sentence-transformers (for semantic search)
- numpy/pandas (for scoring)
Installation
# Clone repo
git clone https://github.com/orosha-ai/mcp-registry-manager
# Install dependencies
pip install requests sentence-transformers numpy pandas
# Run discovery
python3 scripts/mcp-registry.py --discover
# Discover local servers
python3 scripts/mcp-registry.py --discover-local
Health Checks
Monitor the status of your installed MCP servers with built-in health checks:
Single server:
python3 scripts/mcp-registry.py --health-check local/filesystem
All installed servers:
python3 scripts/mcp-registry.py --health-all
Health checks include:
url_validβ URL exists and is properly formattedurl_typeβ Transport type (stdio, sse, http/ws)config_validβ Has required config fields (command or url)has_descriptionβ Server has a description
Status levels:
- healthy β All checks pass
- degraded β Some checks pass, config is valid
- unhealthy β Critical checks fail
Inspiration
- MCP Server Stack guide β Essential servers list
- awesome-mcp-servers β Community-curated directory
- AllInOneMCP β Remote MCP registry
- Klavis AI β MCP integration platform
Local-Only Promise
- Registry metadata is cached locally
- Install operations run locally
- No telemetry or data sent to external services
Version History
- v0.2 β Local MCP discovery + health checks
- v0.1 β MVP: Discovery, quality scoring, semantic search
- Roadmap: GitHub integration, CI tests, auto-updates