Install
$ agentstack add mcp-mcp-reg-mcp-sub-registry Open-source listing — not yet scanned by AgentStack. Follow the source repository for install instructions.
Security review
⚠ Flagged1 finding(s); flagged for manual review. · v0.1.0 How review works →
- • Prompt-injection patterns
- • Secret / credential exfiltration
- • Dangerous shell & filesystem operations
- • Untrusted network calls
- • Known-malicious package signatures
- high Pipes remote content directly into a shell (remote code execution).
What it can access
- ● Network access Used
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ● Environment & secrets Used
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
MCP Sub-Registry
Your own Unified MCP Marketplace — self-hosted, GitOps-driven, and IDE-ready.
MCP Sub-Registry is an open-source aggregation layer that allows you to build a custom Unified MCP Marketplace from the growing universe of MCP servers. It syncs with public registries, lets you add your own private/custom servers, and exposes everything through a single Marketplace UI and the official MCP Registry API.
Why?
The MCP ecosystem is growing fast. Public registries from modelcontexprotocol.io, GitHub, Microsoft, and others each host their own catalogs of MCP servers. But if you're an organization, you face a fragmented landscape:
- Fragmentation: servers are scattered across multiple public registries.
- Private MCP Servers: you have private, internal MCP servers that can't live on public registries.
- No curation: you want your team to see the right servers, not all 2,000+ of them.
- No single pane of glass: switching between registries to find what you need is a time sink
- Control: you need control over what your team can see and use — not a free-for-all.
The Solution
MCP Sub-Registry is a self-hosted aggregation layer that sits between public MCP registries and your developer tools. A single gateway that pulls from any combination of public registries, merges in your private/custom servers, and exposes everything through one unified Marketplace UI and MCP Registry API.
Try it Free
Don't need a private registry? Or just want to create a public sub-registry (Marketplace UI + API) with your curated list of MCP servers for your team. Use our free hosted service at mcp-reg.com to browse and connect to public MCP Sub-Registries.
See a demo at: mcp-reg.com/mcp-reg/demo.
Key Capabilities
- Aggregate servers from The Official MCP Registry, GitHub, Microsoft, and any other public MCP registry which implements the Official MCP Registry API into one catalog
- Add private servers that only your organization can access — defined in your own GitHub repo
- Curate and control exactly which servers are available to your team
- IDE Support through a single, standards-compliant API endpoint. Supported IDEs include VS Code and Visual Studio. See supported IDEs here.
- Deploy anywhere as a single binary with an embedded web UI
- Stay in sync with GitOps — your registry config lives in version control
Self Host and Private
Use this open-source project to self-host and connect to your own private registry repository and manage your sub-registry through a private GitOps enabled repository.
How It Works
sequenceDiagram
participant IDE as VS Code
participant Registry as Your MCP Registry Service
participant GitHub as Your Private GitHub Repo
participant Public as Public MCP Registries
IDE->>Registry: Request MCP servers
Registry->>GitHub: Fetch registry.json
GitHub-->>Registry: Registry configuration
Registry->>GitHub: Fetch private servers
GitHub-->>Registry: Server definitions
Registry->>Public: Fetch public servers (optional)
Public-->>Registry: Server catalog
Registry->>Registry: Aggregate & transform
Registry-->>IDE: Unified server list
- You define a
registry.jsonin your private GitHub repo — listing which public registries to pull from and which private servers to include - Your IDE requests servers from your MCP Sub-Registry
- The service fetches from each configured source — public registries and private paths
- Aggregates and transforms all servers into a single, normalized catalog
- Returns the unified server list to the IDE, ready to use
Quick Start
Install
curl -fsSL https://raw.githubusercontent.com/mcp-reg/mcp-sub-registry/main/scripts/install.sh | bash
Run the Server
mcp-registry
Then open http://localhost:8080 in your browser.
With GitHub Token (for Private Repos)
GITHUB_TOKEN=your_token mcp-registry
Setup your Git Configuration Repo
- Fork or Clone the template repo at: https://github.com/mcp-reg/mcp-registry-template . Press the Use this template in the Github UI.
- You now have an MCP Sub-Registry configured with a basic configuration.
- Access the Marketplace UI via your server for the repo you created at:
http://localhost:8080// - Follow instructions at https://github.com/mcp-reg/mcp-registry-template (or at your new repo README.md) for further customizaiton of you new MCP Sub-Registry.
Deploy Your Server
- Depoly to your favorite platform: Lambda, GCP Cloud Run, Kubernetes. Single binary deployment in your prefered container.
- Provide your public URL to your team:
https:////.
Configure VS Code / Visual Studio
- Follow the instructions at: https://docs.github.com/en/copilot/how-tos/administer-copilot/manage-mcp-usage/configure-mcp-server-access on how to configure an MCP registry URL which will be used across your organization for VS Code and/or Visual Studio. Use the url:
https:////. If you want a specific branch other thanmainyou can also configure:https://///. - Note: This configuration requires that your server url is open to the public.
Server Configuration
| Variable | Default | Description | | ------------------- | ------------------------ | ------------------------------------------------- | | PORT | 8080 | Server port | | GITHUB_TOKEN | none | GitHub auth token (required for private repos, recommended for public repos to avoid API rate limits) | | GITHUB_API_BASE | https://api.github.com | GitHub API URL (for GitHub Enterprise) | | CACHE_TTL | 1h | Cache TTL for registry data | | CACHE_ENABLED | true | Enable/disable caching | | BROWSER_CACHE_TTL | 5m | HTTP Cache-Control header TTL |
See [.env.example](.env.example) for all available environment variables.
API Reference
| Endpoint | Description | | ------------------------------------------------------------------- | -------------------- | | GET /health | Health check | | GET /{org}/{repo}/{branch}/v0.1/servers | List all servers | | GET /{org}/{repo}/{branch}/v0.1/servers?search=name | Search servers | | GET /{org}/{repo}/{branch}/v0.1/servers/{name}/versions/latest | Get latest version | | GET /{org}/{repo}/{branch}/v0.1/servers/{name}/versions/{version} | Get specific version | | POST /{org}/{repo}/{branch}/v0.1/refresh | Invalidate cache |
Development
See [CONTRIBUTING.md](CONTRIBUTING.md) for more details.
License
MIT License - see [LICENSE](LICENSE) for details.
mcp-reg.com · Issues
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: mcp-reg
- Source: mcp-reg/mcp-sub-registry
- License: MIT
- Homepage: https://mcp-reg.com
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.