A full-catalog data analysis of the MCP server and agent-skill ecosystem — snapshot: October 17, 2026
We crawled public GitHub data for every MCP server and agent skill we could find, classified it, and measured what the ecosystem actually looks like — not what the launch posts say it looks like. The catalog held 13,598 published entries at snapshot time; this analysis covers the 12,534 deduplicated entries we could pull and verify (5,945 MCP servers, 6,589 agent skills) — about 92% coverage.
The picture that emerges is not a healthy long tail. It is a very tall, very narrow head, a wide lukewarm plain, and a ravine in between.
Three findings up front:
- The head is far narrower than most people assume. The top 1% of repositories by stars hold 47.5% of all server-side stars (41.7% on the skill side). The top 10% hold roughly 83%. Gini: 0.867 for servers, 0.882 for skills.
- The middle is nearly empty. 62.8% of MCP servers have fewer than 100 stars. Median: 64. Mean/median ratio: 8.4×.
- Skills are hotter than servers — and it isn’t close. Median stars 160 vs 64 (2.5×); 84.6% of skill repos were pushed to within the last six months, versus 64.2% of servers. One in five servers has been dormant for a year or two.
By the numbers
| Metric | MCP servers | Agent skills |
|---|---|---|
| Entries analyzed | 5,945 | 6,589 |
| Total stars | 3,211,236 | 14,168,570 |
| Median stars | 64 | 160 |
| Repos under 100 stars | 62.8% | 37.1% |
| Repos under 1,000 stars | 93.1% | 78.1% |
| Pushed within 6 months | 64.2% | 84.6% |
| Repos with ≥ 10,000 stars | 54 | 256 |
| Gini coefficient | 0.867 | 0.882 |
Method
Data comes from the MCPMarkets catalog (mcpmarkets.com), sourced from GitHub’s public API: stars, license, primary language, last push date, and README content. Three things stated plainly, because they matter for how far to trust the numbers:
- Snapshot: 2026-10-17. The catalog kept growing while we were pulling it (~690 new entries in a three-hour window), so pagination over a live dataset drifts at the boundaries. We ended up with 12,534 deduplicated entries — about 92% of the 13,598 published at snapshot time. Distribution metrics are barely affected; absolute counts run slightly low.
- The server/skill split is heuristic. It comes from keyword and README-feature rules at ingestion time. See Limitations for what that costs us.
- Stars are a proxy for attention, not quality. They follow HN threads, Twitter posts, and awesome-list cross-promotion, not production usage.
Finding 1: Ten repositories hold about a fifth of the sky
Server side: 5,945 repositories, 3,211,236 stars. Here is how those stars are distributed:
| Percentile | Stars |
|---|---|
| p25 | 36 |
| Median | 64 |
| p75 | 166 |
| p90 | 631 |
| p99 | 8,841 |
| Max | 96,415 |
Mean over median is 8.4×, which almost always means a handful of extreme values dominate — and they do. The top 10 repositories hold 18.1% of all server-side stars. The top 1% hold 47.5%. Gini: 0.867.
The leaderboard needs a footnote. #1 is punkpeye/awesome-mcp-servers at 96,415 stars — an awesome list, which our keyword rules filed as a server (more on this in Limitations). Behind it: headroomlabs-ai/headroom (75,471) and sansan0/trendradar (62,923).
The skill side is more lopsided at the very top: its ten largest repos hold 15.6% of all skill stars, and the single largest repository in the entire catalog is a skill repo — openclaw/openclaw at 392,124 stars, four times the server-side leader. Then vinta/awesome-python (327,970, another awesome list) and obra/superpowers (299,876).
One leaderboard entry is worth pausing on: anthropics/skills — 181,394 stars, no license field set. The company that created the protocol never licensed its own official example repo. That is a thread we pick up in Finding 4.
Finding 2: 62.8% of servers live below 100 stars
The back side of the head story is the long tail. Server-side star histogram:
| Star range | Entries | Share |
|---|---|---|
| 0 | 229 | 3.9% |
| 1–5 | 122 | 2.1% |
| 6–10 | 27 | 0.5% |
| 11–50 | 2,072 | 34.8% |
| 51–100 | 1,301 | 21.9% |
| 101–500 | 1,490 | 25.1% |
| 501–1,000 | 296 | 5.0% |
| 1,001–5,000 | 292 | 4.9% |
| 5,001–10,000 | 62 | 1.0% |
| > 10,000 | 54 | 0.9% |
(Bands are inclusive of their upper bound, so “≤ 100” sums to 63.1%; the 62.8% figure above is strictly under 100.)
This is not a smooth long tail. It is a wide lukewarm plain with a ravine: a third of all servers sit in the 11–50 band, a second cluster at 101–500, a noticeably smaller notch at 51–100 in between, and then a deep gap before the four-digit head.
93.1% of servers have under 1,000 stars. About one in sixteen (6.3%) has under ten, and only 229 (3.9%) have zero. So “nobody looked at it” is the minority case. The typical MCP server is in use, but barely starred — a production dependency for one team, invisible to everyone else.
The skill-side distribution has the same shape, shifted one bracket up: 37.1% below 100 stars, 78.1% below 1,000, median 160.
Finding 3: Skills are the crowded end of the ecosystem
This is the one we did not expect going in: skill repositories are visibly hotter than server repositories.
- Median stars: 160 (skills) vs 64 (servers) — a 2.5× gap
- Total stars: 14,168,570 vs 3,211,236 — 4.4×
- Pushed within the last six months: 84.6% vs 64.2%
- Dormant for 1–2 years: ≈0% vs 20.4%
- The ≥ 10,000-star club: 256 skills vs 54 servers
Two explanations, probably both true. Authoring a skill has a lower barrier — a SKILL.md is the deliverable; there is no protocol layer to implement. And skills arrived later, straight into the agent hype cycle.
The practical read is counter-intuitive: the server side looks less crowded to enter, but its median survival environment is colder. If you ship a server, “being genuinely maintained” is already a differentiator (see Finding 6).
Finding 4: Licenses are boringly permissive — the problem is no license at all
Server-side license distribution:
| License | Share |
|---|---|
| MIT | 58.4% |
| Apache-2.0 | 13.5% |
| Unlabeled (unrecognized by GitHub) | 16.1% |
| NOASSERTION (no match) | 5.7% |
| AGPL-3.0 | 2.1% |
| GPL-3.0 | 1.8% |
| Other GPL/LGPL/MPL/EPL variants | ~2% |
Grouped: permissive licenses (MIT, Apache, BSD, ISC, CC0, Unlicense…) account for 73.2% of servers. Copyleft with teeth — AGPL and GPL together — totals just 5.0%. Skills look similar: MIT 53.5%, Apache-2.0 11.6%, permissive 66.4%, copyleft 2.9%.
For anyone consuming these tools, that is good news: closed-source use, commercial embedding, and redistribution rarely hit a license wall.
The real hazard is ambiguity: unlabeled + NOASSERTION together cover 21.8% of servers and 30.4% of skills. “No license” is a question every user has to answer for themselves — and most will answer it wrong. A directory that surfaces the field verbatim, per entry, is doing a small but real service.
Finding 5: Installation is the ecosystem’s weakest link
This finding came out of parsing READMEs. For every server, we tried to extract one runnable install command (something like npx -y @modelcontextprotocol/server-xxx) and one copy-paste-ready mcpServers JSON block:
- Only 28.7% of servers yield an executable install command.
- Only 34.5% contain a usable config snippet.
Put plainly: for more than seven in ten MCP servers, the install path is broken. A reader finishes the README and still doesn’t know the one command to run — the README links to the source repo, or buries the config in 300 lines of prose, or waves at npm install and moves on.
Skills, by contrast, hit 100% on install-command extraction — because the install path is uniformly npx skillfish add owner/repo/path. One convention, zero ambiguity.
If you maintain a server, this is the cheapest available edge: hoist the install command and the JSON config to the top of the README, in their own fenced blocks. Ten minutes of work. It is the difference between a user and a bounce.
Finding 6: Two-thirds actively developed, one-fifth asleep
By last upstream push (as of 2026-10-17):
| Window | Servers | Skills |
|---|---|---|
| < 6 months | 64.2% | 84.6% |
| 6–12 months | 15.3% | 13.6% |
| 1–2 years | 20.4% | ≈0% |
| No record | 0.1% | 1.7% |
One in five servers hasn’t been touched in a year or two. Given that MCP’s client config formats and transports have changed more than once in that window, a meaningful share of them are dead on arrival — yet they still sit in every directory’s listing, often near the top, because directories rank by stars.
“Maintained” is a more useful filter than “popular.” It is also cheap to surface: that is why every entry in our catalog carries a last-push date next to its star count.
What this means if you’re building here
Three practical takeaways, in order of expected impact:
- Don’t target stars. 62.8% of servers live below 100, and the median is 64. A server at 40 stars is not a failure; it is the norm. Optimize for the one team that adopts it, not the timeline.
- Fix your install command first. Seven in ten repos ship it broken. A copy-pasteable command plus a ready
mcpServersblock is the highest-leverage ten minutes in this ecosystem. - Just stay maintained. One in five server repos is asleep. If you ship a real server and keep it working, you are already in the top quintile of “will still work next quarter” — and you can say so, because it shows up in your commit dates.
And one meta-lesson for people reading ecosystem data: the head is a list, the tail is the market. The top repos by stars are, in significant part, curated lists and aggregators (two of the top five across both sides are awesome-lists). The actual supply of working software lives in the 11–50 and 101–500 bands — the part nobody writes launch posts about.
Limitations
Stated plainly, so you can judge how far to push the conclusions:
- Classification noise. Entries were ingested by keyword heuristics, and some obvious lists slipped in (punkpeye/awesome-mcp-servers as a server; vinta/awesome-python as a skill). This inflates the head numbers; the tail shape is unaffected.
- Stars are not quality. They are driven by exposure, not usage. A 30-star server can be a team’s production dependency.
- Single source. No npm/PyPI download data, so “starred” and “used” cannot be separated.
- Snapshot drift. ~92% coverage, as described in Method; absolute counts are conservative.
- Our taxonomy is early. 89% of server entries currently land in a single category (developer tools), and skills have no useful category split yet — so no category-level analysis is offered here.
Every number above is reproducible from the public catalog. If you find a discrepancy, tell us — we would rather correct it than defend it.
Explore the data
- Browse the catalog: MCP servers and agent skills
- Browse by category: e.g. developer tools — the server list has a category filter
- Every entry carries install command, quality score, last-push date, and license
This is the first in what we intend to be a quarterly MCP Ecosystem Report. Next edition: category-level analysis and install-command coverage trends.
About MCPMarkets. We crawl, classify, and maintain a multilingual (EN/ZH/JA/KO/RU) directory of MCP servers and agent skills — 13,000+ entries with install commands, quality scores, and maintenance signals. The point is not to list everything; it is to make the one useful thing findable, with the fields that actually decide adoption.
Data: public snapshot of the MCPMarkets catalog, 2026-10-17. Written by the MCPMarkets team.