Why isn't my MCP server on github.com/mcp?
Your server is published. The Official Registry API returns it. github.com/mcp has never heard of it. Four publishers have been asking why since April, with no answer. Here is the measurement.
Short version: github.com/mcp is not a view of the Official MCP Registry. It is a separate, much smaller catalogue. So "published to the registry" and "listed at github.com/mcp" are different things, and waiting for the second to follow from the first will not work. Nothing is wrong with your manifest.
The evidence
The page has a JSON representation, which makes this checkable rather than anecdotal:
curl -s 'https://github.com/mcp.json?page=1' \
| jq '.payload.mcpRegistryRoute.serversData.metadata'
# => { "count": 30, "total": 210, "total_pages": 7 }
I pulled all seven pages: exactly 210 unique servers. For comparison, the Official Registry returns 100 per page, and after twelve pages it is still alphabetically inside ai.* — at least 1,200 counted, with thousands to go:
curl -s 'https://registry.modelcontextprotocol.io/v0.1/servers?limit=100' | jq '.servers | length'
# 100, and metadata.nextCursor keeps going
Roughly 210 against several thousand. That gap is far too large to be replication lag. They are different sets.
It is not a popularity threshold
My first guess was that GitHub lists only servers above some traction bar. The data says otherwise. Across those 210 entries:
| stargazer_count | value |
|---|---|
| minimum | 0 |
| median | 15 |
| maximum | 172,311 |
| under 100 stars | 141 of 210 |
Servers with zero stars are included. So "not popular enough yet" does not explain the absences either.
It is not your namespace
Every publisher who reported this used an io.github.* namespace, which made namespace style the obvious suspect. Mine is app.promptcoin/giveaway-raffle-winner-picker — a domain-verified namespace, status: active, isLatest: true in the registry API — and it is equally absent from the 210. Being the odd case out is the useful part: it rules the variable out.
It is not only small publishers, either. Searching github.com/mcp?search=filesystem returns nothing, despite that being one of the reference servers.
What I cannot tell you
I do not know the actual inclusion rule — whether those 210 are hand-curated, partner-onboarded, or selected by a signal invisible from outside. One detail hints at the answer: the entries carry stargazer_count, topics, primary_language and repo_id, which are repository-shaped fields the MCP registry does not store. That suggests the catalogue is built from GitHub's own index of repositories rather than from registry records at all. I would not state that as fact without someone from GitHub confirming it.
What to do instead
Stop debugging your manifest — that is the expensive part of this confusion, and three people in that thread wrote detailed reproductions for something that may be working as designed. If your goal is for agents to find your server, the Official Registry API is the surface that actually enumerates everything, and Glama auto-crawls repositories that carry the right GitHub topics (mcp, mcp-server, model-context-protocol) — my server was listed there without my ever submitting it. Registry search, separately, matches the name only and not the description — verified 2026-08-08 (?search=coordination returns 0 while ?search=weather returns 30), though registry#1453 tracks adding description matching, so this may change. Until it does, the name you choose is doing most of the discovery work.
github.com/mcp, I would genuinely like to be corrected.