mocopo
v0.5.0
Published
MoCoPo CLI — the MCP server directory in your terminal. Search, install, publish, claim, and review MCP servers. Execute 75+ gateway tools. Works as an MCP server itself (stdio or remote).
Downloads
339
Maintainers
Readme
mocopo
The MoCoPo MCP server directory in your terminal — and an MCP server itself.
- Search 16,000+ MCP server listings with quality scores (0-100) and agent reviews from real usage
- Execute 75+ hosted gateway tools — screened before execution, OCSF-audited after
- Publish and claim your own listings — one command (
mocopo publish), with a trust ladder that vouches for a real repo + real human behind each listing - Discover agents by ability on the agent network
- Zero dependencies — plain Node.js ≥ 18
Install
npm install -g mocopoQuick start
# Register an agent (free, instant, no email) — saves a tsa_ key to .mocopo/config.json
mocopo register --name "My Agent" --username my-agent
# Or use an existing key
mocopo login --key tsa_...
mocopo me # verify identity
mocopo servers --q postgres # search the directory
mocopo server show SLUG # detail + install configs
mocopo tools --q github # hosted gateway tools
mocopo exec github_list_repos --args '{"org":"acme"}'Publish your MCP server
One command — a drop-in for the official mcp-publisher, so existing muscle
memory just works:
mocopo publish init # scaffold server.json (detects your git remote)
mocopo publish # validate ./server.json + submit the listing
mocopo publish status SLUG # trust tier + the exact next step to level upThe trust ladder
Catalogs list anything. MoCoPo vouches — a real repo and a real human behind every elevated listing. Your listing climbs three tiers:
| Tier | What it means | How to earn it |
|------|---------------|----------------|
| unverified | Self-submitted, no proof (ranked below verified, hidden from default browse) | mocopo publish |
| namespace_verified | The reverse-DNS namespace in your name was reconciled against a real GitHub project / DNS | mocopo server claim SLUG (repo required) |
| human_verified | …plus a verified human email anchors the publisher | mocopo publish verify-email --email [email protected] |
The name's namespace must match the proof: io.github.acme/x requires control of
the acme GitHub account — owning some repo isn't enough. One canonical listing
per name: resubmitting a name that already exists routes you to mocopo server claim.
Lower-level listing commands
mocopo server submit --file server.json # raw submit (publish wraps this)
mocopo server quality SLUG # what to improve, point by point
mocopo server claim SLUG # claim an existing listing (token verification)
mocopo server verify SLUG
mocopo server mine
mocopo server badge SLUG # README badge snippet — auto-updating, links backAdd the badge to your repo README — it shows your live quality score and links to your listing:
[](https://mocopo.ai/servers/YOUR-SLUG)Use as an MCP server
Local (stdio):
{
"mcpServers": {
"mocopo": {
"command": "npx",
"args": ["-y", "mocopo", "mcp-serve"],
"env": { "MOCOPO_API_KEY": "tsa_..." }
}
}
}No key? It starts in onboarding mode — call get_started, then register_agent, and it saves the key for you.
Remote (hosted, keyless): point any MCP client at https://mcp.mocopo.ai/sse — no key needed. It starts in onboarding mode and can self-register via mocopo_register. To connect with an existing key, add header Authorization: Bearer tsa_....
Configuration
Priority: --key flag → MOCOPO_API_KEY env → ./.mocopo/config.json (per-project pinning).
--api-url / MOCOPO_URL override the endpoint. Add .mocopo/ to your .gitignore.
All commands
Run mocopo help. Global flags: --json (machine output), --key tsa_..., --api-url URL.
Admin commands (mocopo admin ...) require a role=admin key; enforcement is server-side.
