{"schema_version":"ag-ecosystem-map/1","updated_at":"2026-09-10T23:31:27.578897+00:00","ecosystems":[{"id":"mcp_registry_official","name":"Official MCP Registry","protocol":"mcp","registration_method":"server.json + GitHub OIDC workflow (.github/workflows/publish-mcp.yml) — automated, permitted","search_method":"GET https://registry.modelcontextprotocol.io/v0/servers?search=<q>","capability_taxonomy":"free-text description + tool list","auth":"none for read","rate_limits":"public API, be polite (verifier: <=2 req/tick)","terms":"public registry; publication via own-namespace server.json only","ag_coverage":"published (io.github.AgentTanuki/agent-guild)","verify_urls":["https://registry.modelcontextprotocol.io/v0/servers?search=agent-guild"],"demand_signals":"search volume not exposed; coverage check only","last_verified":null,"adapter_health":"unverified"},{"id":"glama","name":"Glama MCP directory","protocol":"mcp","registration_method":"/.well-known/glama.json + repo auto-index","search_method":"https://glama.ai/mcp/servers (HTML + API)","capability_taxonomy":"tool list, auto-extracted","auth":"none for read","rate_limits":"public site; verifier: 1 req/tick","terms":"listing via published ownership file — permitted","ag_coverage":"published","verify_urls":["https://glama.ai/mcp/servers/@AgentTanuki/agent-guild"],"demand_signals":"none exposed","last_verified":null,"adapter_health":"unverified"},{"id":"smithery","name":"Smithery","protocol":"mcp","registration_method":"manual listing (done); NOTE trailing-slash /mcp/ URL","search_method":"https://smithery.ai/search","capability_taxonomy":"tool list","auth":"none for read","rate_limits":"public site; verifier: 1 req/tick","terms":"listed — permitted","ag_coverage":"published (agent-tanuki/agent-guild)","verify_urls":["https://smithery.ai/server/agent-tanuki/agent-guild"],"demand_signals":"usage counter on listing page","last_verified":null,"adapter_health":"unverified"},{"id":"a2a_wellknown","name":"A2A well-known discovery (self-hosted)","protocol":"a2a","registration_method":"serve /.well-known/agent-card.json (done)","search_method":"crawlers (a2aregistry, AgentExchange, Agentry) fetch it","capability_taxonomy":"AgentCard skills[]","auth":"none","rate_limits":"n/a (our own surface)","terms":"A2A spec well-known path — permitted","ag_coverage":"published; swarm skills added in Pilot A","verify_urls":[],"demand_signals":"inbound a2a_message events (see /instrumentation)","last_verified":null,"adapter_health":"unverified"},{"id":"agentry","name":"Agentry directory (Nostr-based)","protocol":"a2a/nostr","registration_method":"Nostr identity (registered; live/secrets/agentry_credentials.json)","search_method":"directory crawl of agent cards","capability_taxonomy":"profile categories","auth":"nostr keypair","rate_limits":"unknown — treat conservatively","terms":"identity registered; profile updates only via documented flow","ag_coverage":"identity registered","verify_urls":[],"demand_signals":"AgenstryBot crawls our /a2a (seen in telemetry)","last_verified":null,"adapter_health":"unverified"},{"id":"pulsemcp","name":"PulseMCP","protocol":"mcp","registration_method":"human submission form","search_method":"public directory","capability_taxonomy":"tool list","auth":"none for read","rate_limits":"public site","terms":"needs_human — submission prepared in live/outreach, NOT auto-sent","ag_coverage":"not listed (blocked_needs_human)","verify_urls":[],"demand_signals":"none","last_verified":null,"adapter_health":"unverified"},{"id":"mcp_so","name":"mcp.so","protocol":"mcp","registration_method":"human submission","search_method":"public directory","capability_taxonomy":"tags","auth":"none for read","rate_limits":"public site","terms":"needs_human — draft-only","ag_coverage":"not listed (blocked_needs_human)","verify_urls":[],"demand_signals":"none","last_verified":null,"adapter_health":"unverified"}]}