state of theMCP ecosystem

mcpcensus.pages.dev · 2026-07-14 · by Long Nguyen ·generic
Free report: health, categories, licenses, languages and collision analysis of 15,382 MCP registry servers.

state of theMCP ecosystem

mcpcensus // state of the ecosystem · 2026-07-07

state of the

MCP ecosystem

What 15,382 registry servers say about where the Model Context Protocol ecosystem actually is in July 2026. Compiled from the official registry, GitHub, npm and PyPI. About the census + the live API →

1 — Scale

15,382 servers; 47% run remotely

The official registry holds 15,382 distinct servers (latest versions, deduplicated from all published version records). 7,203 expose hosted remote endpoints (streamable-http/sse); the rest install locally via npm, oci, pypi, nuget.

View as table

| Install type | Servers | | ------------ | ------- | | npm | 5,578 | | pypi | 2,500 | | oci | 538 | | mcpb | 326 | | nuget | 76 |

2 — Health

16% of servers have a verified problem

1,880 point to GitHub repos that are gone (deleted or made private). 126 repos are archived. 218 npm packages are deprecated by their own authors. 299 haven't seen a push in six months. If you're choosing servers for production, the registry alone won't tell you this.

GitHub repo gone (deleted/prGitHub repo gone (deleted/private): 1,8801,880No repo push in 6+ monthsNo repo push in 6+ months: 299299npm package deprecatednpm package deprecated: 218218registry\_deprecatedregistry\_deprecated: 166166GitHub repo archivedGitHub repo archived: 126126npm package missingnpm package missing: 2525PyPI package missingPyPI package missing: 1515

View as table

| Problem | Servers | | ---------------------------------- | ------- | | GitHub repo gone (deleted/private) | 1,880 | | No repo push in 6+ months | 299 | | npm package deprecated | 218 | | registry\_deprecated | 166 | | GitHub repo archived | 126 | | npm package missing | 25 | | PyPI package missing | 15 |

3 — Popularity is brutally concentrated

127 servers have 1,000+ stars; 9,207 have fewer than 10

mcp-servermcp-server: 79,53979,539labelhead-artist-momentumlabelhead-artist-momentum: 72,97372,973ScraplingScrapling: 68,51868,518claude-flowclaude-flow: 63,40163,401mcpmcp: 61,51161,511context7context7: 58,71158,711tldrawtldraw: 48,60948,609mcpmcp: 48,08448,084chrome-devtools-mcpchrome-devtools-mcp: 46,19946,199mcp-servermcp-server: 42,65042,650mcp-server-browsermcp-server-browser: 37,76737,767mcp-server-commandsmcp-server-commands: 37,76737,767mcp-server-filesystemmcp-server-filesystem: 37,76737,767mcp-server-searchmcp-server-search: 37,76737,767mcpmcp: 35,36135,361

View as table

| Server | Stars | | ------------------------- | ------ | | mcp-server | 79,539 | | labelhead-artist-momentum | 72,973 | | Scrapling | 68,518 | | claude-flow | 63,401 | | mcp | 61,511 | | context7 | 58,711 | | tldraw | 48,609 | | mcp | 48,084 | | chrome-devtools-mcp | 46,199 | | mcp-server | 42,650 | | mcp-server-browser | 37,767 | | mcp-server-commands | 37,767 | | mcp-server-filesystem | 37,767 | | mcp-server-search | 37,767 | | mcp | 35,361 |

Caveat the census surfaced: star counts follow the repo each registry entry declares, and entries can declare any repo — 61 repos are declared by 5+ different servers (one by 126). The dataset ships a `repo_shared_count` field so you can filter these.

Most-installed npm servers (weekly downloads)

mcp-servermcp-server: 7,4187,418strajkpolski-mcpstrajkpolski-mcp: 1,8041,804mcpmcp: 1,7131,713adeuadeu: 1,5681,5681claw-mcp1claw-mcp: 1,5671,567ghl-commandghl-command: 1,5621,562mastyf.aimastyf.ai: 1,0301,030cool-workflowcool-workflow: 1,0191,019google-workspacegoogle-workspace: 831831voidmob-mcpvoidmob-mcp: 794794gblin-mcp-servergblin-mcp-server: 732732mcp-server-sfmcmcp-server-sfmc: 608608pedra-mcppedra-mcp: 553553mcp-server-scfmcp-server-scf: 523523elisymelisym: 499499

View as table

| Server | Weekly downloads | | ---------------- | ---------------- | | mcp-server | 7,418 | | strajkpolski-mcp | 1,804 | | mcp | 1,713 | | adeu | 1,568 | | 1claw-mcp | 1,567 | | ghl-command | 1,562 | | mastyf.ai | 1,030 | | cool-workflow | 1,019 | | google-workspace | 831 | | voidmob-mcp | 794 | | gblin-mcp-server | 732 | | mcp-server-sfmc | 608 | | pedra-mcp | 553 | | mcp-server-scf | 523 | | elisym | 499 |

4 — What gets built (and where the gaps are)

dev-toolsdev-tools: 11,69711,697ai-mlai-ml: 1,9431,943api-integrationapi-integration: 1,6721,672securitysecurity: 864864financefinance: 847847communicationcommunication: 544544mediamedia: 536536files-documentsfiles-documents: 461461data-analyticsdata-analytics: 406406databasesdatabases: 399399weather-geoweather-geo: 377377productivityproductivity: 302302

View as table

| Category | Servers | | --------------- | ------- | | dev-tools | 11,697 | | ai-ml | 1,943 | | api-integration | 1,672 | | security | 864 | | finance | 847 | | communication | 544 | | media | 536 | | files-documents | 461 | | data-analytics | 406 | | databases | 399 | | weather-geo | 377 | | productivity | 302 |

Cross this with the health data and the gap analysis writes itself: crowded categories full of abandoned servers are consolidation opportunities; thin categories with high download leaders are underserved demand.

5 — Name collisions

45 names are used by 5+ different servers

The same terminal name (e.g. `github`, `weather`) recurs across namespaces — a real vetting hazard: picking the wrong `filesystem` server is one typo away. Collision counts per name ship in the dataset.

mcpmcp: 638638mcpservermcpserver: 314314serverserver: 3232catalogcatalog: 1919weatherweather: 1616apiapi: 1414marketplacemarketplace: 1111docsdocs: 1010librarylibrary: 1010gatewaygateway: 1010memorymemory: 1010emailmcpemailmcp: 1010

View as table

| Name (normalized) | Servers using it | | ----------------- | ---------------- | | mcp | 638 | | mcpserver | 314 | | server | 32 | | catalog | 19 | | weather | 16 | | api | 14 | | marketplace | 11 | | docs | 10 | | library | 10 | | gateway | 10 | | memory | 10 | | emailmcp | 10 |

6 — Licenses & languages

MITMIT: 7,1697,169Apache-2.0Apache-2.0: 981981NOASSERTIONNOASSERTION: 888888AGPL-3.0AGPL-3.0: 154154GPL-3.0GPL-3.0: 5252BSD-3-ClauseBSD-3-Clause: 3131ISCISC: 1818MPL-2.0MPL-2.0: 1010MIT-0MIT-0: 77BSD-2-ClauseBSD-2-Clause: 55

View as table

| License | Repos | | ------------ | ----- | | MIT | 7,169 | | Apache-2.0 | 981 | | NOASSERTION | 888 | | AGPL-3.0 | 154 | | GPL-3.0 | 52 | | BSD-3-Clause | 31 | | ISC | 18 | | MPL-2.0 | 10 | | MIT-0 | 7 | | BSD-2-Clause | 5 |

TypeScriptTypeScript: 4,6964,696PythonPython: 2,6972,697JavaScriptJavaScript: 1,7271,727GoGo: 288288RustRust: 199199HTMLHTML: 108108C#C#: 8181ShellShell: 7676JavaJava: 2828DockerfileDockerfile: 2626

View as table

| Language | Repos | | ---------- | ----- | | TypeScript | 4,696 | | Python | 2,697 | | JavaScript | 1,727 | | Go | 288 | | Rust | 199 | | HTML | 108 | | C# | 81 | | Shell | 76 | | Java | 28 | | Dockerfile | 26 |

7 — Method

Enumeration: official MCP registry public API (all pages, 2026-07-07), deduplicated to latest versions. Enrichment: GitHub GraphQL (10,989 repos), npm registry + downloads API, PyPI JSON API. Health verdicts are facts with evidence fields — "unknown" is an honest verdict, never a guess. No personal data. Look up any server free at the live lookup; agents & teams can query the API & MCP endpoint.

Compiled overnight by Claude (an AI agent), supervised by a human. Corrections: info@mcpcensus.com.

Comments (0)

No comments yet