A Large-Scale Dataset of MCP Implementations on GitHub
本文介绍了首个大规模、基于证据的 GitHub 验证过的 2,297 个模型上下文协议(MCP)实现数据集,该数据集通过严谨的混合验证流水线创建,旨在为分析现实世界的 MCP 生态系统、开发趋势和架构模式建立一个基础基准。
原始论文根据 CC0 1.0(http://creativecommons.org/publicdomain/zero/1.0/)发布到公有领域。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
想象一下,人工智能的世界就像一个住在电脑里的巨大、爱聊天的机器人。长期以来,这个机器人只能谈论它在训练数据中学到的内容,就像一个只知道教科书内容的学霸。但最近,一本名为**模型上下文协议(Model Context Protocol, MCP)**的新规则手册来到了。把 MCP 想象成一个通用翻译器和一套标准的电源插座,它让机器人能够接入现实世界的工具——比如天气应用、搜索引擎或代码编辑器——从而让它能够真正地去“做”事情,而不仅仅是“说”事情。
但问题在于:没有人确切知道到底有多少人在构建这些“电源插座”,或者它们在底层结构上是什么样子的。虽然有一些传闻和列表,但并没有一份关于真实代码的可靠地图。
这正是这篇论文发挥作用的地方。作者们扮演了数字寻宝者的角色,潜入 GitHub(一个开发者存储代码的巨大图书馆),建立了第一个大规模、经过验证的 MCP 项目图谱。
伟大的挖掘
团队并非只是凭空猜测;他们构建了一个超级智能的机器人流水线来寻找线索。他们从 3,238 个提到“MCP”的潜在项目中开始。但并不是每个声称自己是“MCP 项目”的项目都是真正的 MCP 项目。有些只是空壳,有些只是教程,还有些只是将“MCP”用于完全不同的领域(比如 Minecraft 的游戏模组,而不是 AI 工具)。
为了查明真相,他们进行了多阶段的体检:
- 简历检查: 该项目是否有近期的更新?如果该项目在九个月内没有变动,它就会被剔除。
- 代码扫描: 他们寻找特定的“指纹”文件(如
package.json或pyproject.toml),以证明该项目确实在尝试连接到 MCP 系统。 - 结构检查: 他们寻找特定的文件夹和入口点,以证明代码是准备好运行的,而不仅仅是一个停留在概念阶段的东西。
经过所有这些过滤后,他们找到了 2,297 个真实的实实在在的项目。由于他们非常谨慎,当他们对随机样本进行人工复核时,发现该流程的准确率达到了 83%。他们甚至发现了 90 个看起来像是真实工具、但实际上只是没有任何实际功能的“展示型”模板项目,并将它们从最终名单中踢了出去。
这些项目在做什么?
一旦拥有了这 2,297 个经过验证的项目列表,他们将它们分成了三个主要角色,就像剧中的角色一样:
- 客户端 (Clients): 这些是“请求者”。它们就像机器人的手,伸出去请求工具。(想象一下聊天界面询问天气)。
- 服务端 (Servers): 这些是“提供者”。它们持有工具,并在被要求时将其交出。
- 网关 (Gateways): 这些是“中间人”或“翻译官”。它们帮助不同的系统相互通信,弥合 AI 与外部服务之间的鸿沟。
数据表明,Python 和 TypeScript 是构建这些工具的明星语言。它们在构建请求者(客户端)和提供者(服务端)方面都占据主导地位。有趣的是,“中间人”(网关)也喜欢使用 Go 语言,这是一种以速度和可靠性著称的语言。
它们是如何构建的?
论文指出,大多数这类项目并不是庞大的企业级单体架构。相反,它们看起来更像是由小型、敏捷的团队组成的。典型的项目大约有 4 名独特的贡献者和 70 次提交(更新)。开发者似乎更倾向于进行小规模、频繁的微调,而不是一次性进行大规模且令人畏惧的更新。
这意味着什么
这篇论文并不声称已经解决了关于 AI 工具的所有谜团。相反,它提供了一个坚实的、基于证据的基础。它表明,虽然生态系统正在快速增长,但目前仍由几种关键语言主导,并遵循特定的迭代开发模式。通过为研究人员提供一份干净、经过验证的 2,297 个真实项目的清单,这项工作为未来的研究奠定了基础,使人们能够了解这些 AI 连接是如何真正演进的,而不是仅仅根据营销噱头进行猜测。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。