📌 项目地址:modelcontextprotocol/servers | ⭐ 90,758 颗星 | 🔧 TypeScript | 📜 未标注

先回答一个问题:9万星标的是什么

打开 modelcontextprotocol/servers,你只会看到 7 个服务器。9万星配 7 个实现,这个比例很反常,原因写在 README 开头:这个仓库只放 MCP 指导小组自己维护的少量参考实现,它不是服务器大全。

想找现成的 MCP 服务器,官方另有去处:MCP Registry,社区发布的服务器都在那里。这个仓库的定位是教学,README 里说得直接:这些代码是给开发者学习的例子(educational examples),不是能直接上生产的方案,安全防护要你自己根据威胁模型来做。

一句话概括:Registry 是货架,这个仓库是教材。

7 个参考服务器都在做什么

服务器 位置 功能
Everything src/everything 集齐 prompts、resources、tools 的测试服务器
Fetch src/fetch 抓网页内容,转成适合 LLM 读取的格式
Filesystem src/filesystem 文件操作,访问权限可以配置
Git src/git 读取、搜索、操作 Git 仓库
Memory src/memory 基于知识图谱的持久化记忆
Sequential Thinking src/sequentialthinking 通过思维序列做分步推理
Time src/time 时间和时区转换

单看每一个都很小,合起来正好覆盖了几种典型形态:外部数据接入(Fetch、Time)、本地系统操作(Filesystem、Git)、状态管理(Memory)、推理过程控制(Sequential Thinking)。写自己的 server 之前,先在这 7 个里找一个和你需求最接近的,照着改,比从零开始快得多。

Everything 值得单独提一句。它把三种能力(prompts、resources、tools)全塞在一起,本来就是为了测试 MCP 客户端。如果你在做客户端开发,它是现成的对拍对象。

归档仓库:旧教程找不到的服务器在这里

有一批服务器已经归档,搬到了 servers-archived,比如 AWS KB Retrieval(通过 Bedrock Agent Runtime 检索 AWS Knowledge Base)。Brave Search 也在归档之列。

这一点很实用:网上大量 MCP 教程写于仓库瘦身之前,教程里让你配置的某个“官方服务器”可能已经不在主仓库了。找不到就别瞎折腾,先去归档仓库搜一遍。

十种语言的 SDK,别只盯着 TypeScript

仓库标记是 TypeScript,但官方 SDK 覆盖十种语言:C#、Go、Java、Kotlin、PHP、Python、Ruby、Rust、Swift、TypeScript,每种都有独立仓库。写 Python 的去 python-sdk,写 Go 的去 go-sdk,各回各家。

README 本身没有给安装命令,具体用法在各服务器的子目录文档里,也就是 src/ 下的对应目录。

我建议的两步学习路径

第一步,别急着看代码。挑 Filesystem 或 Fetch,在你的 MCP 客户端里把它挂上跑一遍,先建立一个直观印象:server 在客户端里长什么样,工具是怎么被调用的。

第二步,回到源码,看这个 server 是怎么把工具注册出去的。看懂一个之后,挑一个你顺手的 SDK,写自己的。参考实现的意义就在这里:它告诉你“标准答案”长什么样。

两个注意点

安全责任在你自己。官方明确说了这些实现不带生产级防护,尤其 Filesystem 和 Git 这种直接碰文件系统的,接入前先划好目录和权限边界。

这些参考实现跟着协议和 SDK 一起演进,归档动作本身说明仓库在持续调整。旧教程里的用法可能已经过时,以各子目录的文档为准。

MCP 服务器, LLM 工具集成, TypeScript, 开源参考实现

这篇文章对你有帮助吗?

发表回复