MCP注册表分析工具

分析MCP注册表中的服务器,确定哪些可以打包为自包含的离线部署包。

  • by NimbleBrainInc
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 NimbleBrainInc/mcp-registry-analysis

使用说明

MCP注册表分析

分析官方 MCP注册表 以确定可以将多少服务器捆绑到自包含的包中。

为什么存在

模型上下文协议生态系统有数千台服务器,但并非所有服务器都可以捆绑用于离线/气隙部署。此工具根据其“捆绑性”对注册表中的每台服务器进行分类:

  • 捆绑销售:具有有效的GitHub/GitLab存储库和源代码
  • 仅远程:没有可用源代码的托管服务(SaaS集成等)
  • 无来源:存储库URL缺失或无效

最新结果

分析运行时间:2026年1月12日

类别 计数 百分比
捆绑销售 2739 79.3%
仅远程 457 13.2%
无来源 258 7.5%
总计 3,454 100%

底线:约80%的MCP生态系统可以捆绑用于企业部署。

用法

# Clone and install
git clone https://github.com/NimbleBrainInc/mcp-registry-analysis.git
cd mcp-registry-analysis
npm install

# Run analysis (human-readable output)
npm run analyze

# Run analysis (JSON output)
npm run analyze:json > results.json

# Quick test with limited servers
npm run analyze -- --limit 100

输出

人类可读

============================================================
MCP REGISTRY ANALYSIS
============================================================

Timestamp: 2026-01-12T08:15:32.123Z
Total Servers: 3454

------------------------------------------------------------
BUNDLEABILITY BREAKDOWN
------------------------------------------------------------

✓ Bundleable (has source repo):     2739 (79.3%)
⊘ Remote-only (no source code):     457 (13.2%)
✗ No source (invalid/missing URL):  258 (7.5%)

→ Total unbundleable: 715 (20.7%)

------------------------------------------------------------
REMOTE-ONLY SERVERS (hosted services, no source)
------------------------------------------------------------
  • server-name@1.0.0
  • another-server@2.1.0
  ... and more

============================================================
Analysis complete!
============================================================

JSON

{
  "timestamp": "2026-01-12T08:15:32.123Z",
  "totalServers": 3454,
  "categories": {
    "bundleable": 2739,
    "remoteOnly": 457,
    "noSource": 258
  },
  "percentages": {
    "bundleable": "79.3%",
    "remoteOnly": "13.2%",
    "noSource": "7.5%"
  },
  "servers": {
    "bundleable": ["server-a@1.0.0", "..."],
    "remoteOnly": ["server-b@1.0.0", "..."],
    "noSource": ["server-c@1.0.0", "..."]
  }
}

运作原理

  1. 从register.modelcontextprotocol.io获取所有服务器(分页,约116页)
  2. 检查每个服务器的 repository.url 领域
  3. 分类依据:
    • 包含源代码的有效GitHub/GitLab URL→ 可捆绑
    • 有 remoteUrl 但没有源代码仓库→ 仅远程
    • 存储库URL无效或缺失→ 没有来源

演出

  • 完整分析:约45秒(在100台服务器/页的情况下获取约35页)
  • 快速测试:约5秒 --limit 100

需求

  • Node.js 18+

许可证

麻省理工学院

相关