ProtocolProbe 比較官方 MCP Registry 兩次快照,記錄 19 日變化
What the official MCP registry looks like when you check it twice
ProtocolProbe 比較官方 MCP Registry 在 2026-10-04 和 2026-10-23 的快照,記錄數由 38,977 增至 48,551。
I run ProtocolProbe, a free site that records dated facts about every server in the official MCP registry. We pulled the whole registry on 2026-10-04 and again on 2026-10-23, and we have pulled it daily since. This post is about what changed, what the registry itself checks and when, and how to reproduce the counts yourself. No server's tools were called to get any of it: everything below comes from the registry API, npm, PyPI, GitHub and OSV.
What changed in 19 days
- 2026-10-04: 38,977 latest entries. 2026-10-23: 48,551. (2026-10-24: 49,445.)
- Between the two pulls: 9,803 new servers, 5,646 existing servers listing a newer version, and 229 servers no longer listed. The arithmetic closes: 38,977 + 9,803 − 229 = 48,551.
- The registry gives no reason for a removal, so we do not guess one. Each removed server's page stays up, marked as removed.
The day-by-day record is at protocolprobe.com/mcp/changes.
What the registry checks, and when
This is from reading the registry's source (commit c384c4b, read on 2026-10-06), so treat it as a statement about that code, not about anyone's intent:
- At publish time the validators fetch the exact listed npm or PyPI version and check the ownership token.
- I found nothing that re-validates an entry after it is published.
repository.urlis checked with a regular expression only, and the schema requires onlyname,descriptionandversion, so an entry with no package and no remote is allowed. - On 2026-10-26 the registry's roadmap (
docs/design/roadmap.md) has no re-validation item. It also says its own phase labels are out of date as of 2026-08-10.
I opened issue #1715 asking for periodic re-checks of published entries.
What a second look finds (dataset snapshot 2026-10-24)
| What we counted | Number |
|---|---|
| Entries in the snapshot | 49,445 |
| Remote only / local package only / both / neither | 30,185 / 16,395 / 2,348 / 517 |
| Entries whose linked GitHub repository exists | 29,039 |
| Entries whose linked GitHub repository returns 404 | 4,622 (13.7% of the 33,661 that link one) |
| Entries with no GitHub link we could check | 15,784 |
| Entries marked deprecated in the registry | 620 |
One earlier number from the 2026-10-04 snapshot, which we have not re-run on the newer one: of 14,431 npm and PyPI entries, 157 (1.09%) listed a package or version that cannot be installed because it does not exist on npm or PyPI.
What these numbers are not: a 404 can mean a deleted, private or moved repository, and we cannot tell which. A count of public records on a date is not a verdict on any server, and we do not rank or grade servers.
Reproduce the repository count
The dataset is CC BY 4.0, on Zenodo (the DOI of all versions leads to the newest), Hugging Face and Kaggle. Standard library only:
import csv, io, urllib.request, collections
url = "https://huggingface.co/datasets/sultan57/mcp-registry-facts/resolve/main/servers.csv"
rows = list(csv.DictReader(io.StringIO(urllib.request.urlopen(url).read().decode("utf-8"), newline="")))
c = collections.Counter(r["repository"] or "none" for r in rows)
linked = c["present"] + c["repo-not-found"]
print(len(rows), dict(c), f"{c['repo-not-found'] / linked:.1%} of {linked}")
# 49445 {'none': 15784, 'present': 29039, 'repo-not-found': 4622} 13.7% of 33661
I ran this on 2026-10-26 and got the output in the last comment. The CSV has 22 columns (hosting_type, lifecycle_status, license_class, maintenance and more); the full records are one JSON file per part, exactly as the public API serves them.
If you run an MCP server
There is a small command that runs ProtocolProbe's runtime checks against a server you run yourself, on your own machine: npx protocolprobe-selftest. It can fail a CI job (--fail-on-finding) and write SARIF (--sarif). It is separate from the data above, which never calls anyone's tools.
Corrections are welcome: protocolprobe.com/corrections lists the ones we have made.
來源:DEV Community · dev.to