目录
  1. 1. 目录
  2. 2. 项目速览
  3. 3. 功能概述
    1. 3.1. 1. Everything — 全功能协议测试服务器
    2. 3.2. 2. Fetch — 网页内容抓取与转换
    3. 3.3. 3. Filesystem — 安全文件操作
    4. 3.4. 4. Git — 版本控制操作
    5. 3.5. 5. Memory — 知识图谱持久记忆系统
    6. 3.6. 6. Sequential Thinking — 动态结构化推理
    7. 3.7. 7. Time — 时间与时区转换
    8. 3.8. 已归档的服务器
  4. 4. 适用场景
    1. 4.1. 增强 AI 编码助手
    2. 4.2. AI 个人记忆系统
    3. 4.3. 复杂推理增强
    4. 4.4. 信息聚合与分析
    5. 4.5. 跨时区协作
    6. 4.6. MCP 学习与参考
  5. 5. 快速上手
    1. 5.1. 通用配置模式
    2. 5.2. 典型多服务器配置
    3. 5.3. VS Code 配置
    4. 5.4. Debug 工具
  6. 6. 源码架构
    1. 6.1. 目录结构
    2. 6.2. 设计原则
  7. 7. 实操 Demo
    1. 7.1. Demo 1: 使用 Memory 构建个性化 AI 助手
    2. 7.2. Demo 2: 使用 Sequential Thinking 进行架构决策
    3. 7.3. Demo 3: 使用 Fetch 进行竞争分析
  8. 8. 同类对比
  9. 9. 参考资源
MCP Servers — 官方参考实现与生态工具集

GitHub: modelcontextprotocol/servers
Stars: 87,300+ | License: Apache 2.0 (新代码) / MIT (已有代码)
官网: modelcontextprotocol.io

目录

  1. 项目速览
  2. 功能概述
  3. 适用场景
  4. 快速上手
  5. 源码架构
  6. 实操 Demo
  7. 同类对比
  8. 参考资源

项目速览

MCP Servers 是 Model Context Protocol 官方维护的参考服务器集合,旨在展示 MCP 协议的各种能力并作为开发者构建自定义 Server 的教学范例。官方明确声明这些实现「旨在作为参考实现展示 MCP 功能和 SDK 用法」,是「面向开发者的教育示例,而非生产就绪方案」。

截至 2026 年 6 月,项目在 GitHub 上获得超过 87,300 颗 Star,是所有 MCP 生态项目中关注度最高的仓库。项目维护了 7 个活跃的参考服务器(另有 14 个已归档至 servers-archived 仓库),覆盖网络抓取、文件操作、版本控制、知识图谱记忆、结构化推理、时间处理等典型 AI 工具场景。

项目的价值不仅在于可直接使用的工具,更在于它展示了 MCP 协议三大核心原语(Tools、Resources、Prompts)的最佳实践,以及 stdio、SSE、Streamable HTTP 三种传输协议的配置方式。每个 Server 都是一个独立可运行的完整示例,开发者可以由此学习如何设计工具的参数 Schema、如何处理错误、如何管理状态以及如何编写 Claude Desktop / VS Code 的配置。

功能概述

1. Everything — 全功能协议测试服务器

Everything 是一个综合性的测试与演示服务器,旨在「锻炼 MCP 协议的所有功能」,为 MCP 客户端构建者提供一个覆盖全部协议特性面的测试目标。它不是面向最终用户的生产工具,而是面向客户端开发者的验证工具。

涵盖的协议特性:

  • Tools(工具调用)
  • Resources(资源访问)
  • Prompts(提示模板)
  • Sampling(服务端调用 LLM)
  • 分页、进度报告、Elicitation 等协议扩展

支持的传输方式:

传输方式 启动命令
stdio(默认) npx -y @modelcontextprotocol/server-everything
Streamable HTTP npx -y @modelcontextprotocol/server-everything streamableHttp
SSE(2025-03-26 起弃用) npx -y @modelcontextprotocol/server-everything sse

npm 包名: @modelcontextprotocol/server-everything

2. Fetch — 网页内容抓取与转换

Fetch 服务器提供网页内容抓取功能,将 HTML 自动转换为 Markdown 格式供 LLM 消费。最突出的设计是支持分块渐进式读取(chunked reading),模型可以从 start_index 开始分段读取长文档。

工具:fetch

参数 类型 必需 默认值 说明
url string 要抓取的 URL
max_length int 5000 返回字符数上限
start_index int 0 内容提取的起始字符索引
raw bool false true 时返回原始内容(不做 Markdown 转换)

提示模板:fetch — 接收 url 参数,返回该 URL 的 Markdown 内容。

安装方式:

# 方式一:uvx(推荐,无需安装)
uvx mcp-server-fetch

# 方式二:pip
pip install mcp-server-fetch
python -m mcp_server_fetch

# 方式三:Docker
docker run -i --rm mcp/fetch

自定义参数:

  • --ignore-robots-txt — 忽略 robots.txt 规则
  • --user-agent=YourUserAgent — 自定义 User-Agent
  • --proxy-url=http://proxy:8080 — 通过代理发起请求

安全声明: 该服务器可访问本地/内网 IP 地址,可能构成安全风险。默认 User-Agent 遵循模型发起的工具请求会遵守 robots.txt 的规范。

3. Filesystem — 安全文件操作

Filesystem 服务器提供安全的文件系统操作,支持可配置的访问控制。通过指定允许访问的目录路径,将文件读写能力暴露给 AI 助手,同时限制沙箱范围。

启动方式:

npx -y @modelcontextprotocol/server-filesystem /path/to/allowed/files

可指定多个允许路径,服务器仅能操作这些目录下的文件。

4. Git — 版本控制操作

Git 服务器将 Git 操作封装为 MCP 工具,让 AI 助手可以读取、搜索和操作 Git 仓库。这是一个 Python 实现(使用 uvx 运行)。

核心能力:

  • 查看提交历史(git log)
  • 查看文件差异(git diff)
  • 查看暂存区状态(git status)
  • 分支管理
  • 文件内容查看

启动方式:

uvx mcp-server-git --repository /path/to/git/repo

5. Memory — 知识图谱持久记忆系统

Memory 服务器是整个集合中最具创新性的设计。它使用本地知识图谱实现跨会话持久记忆,让 AI 助手能在不同的聊天会话之间记住用户信息。

知识图谱的三个核心概念:

  1. 实体(Entity):图谱中的节点,每个实体有唯一名称、类型(如 "person""organization""event")和一组观察(Observations)
  2. 关系(Relation):实体之间的有向连接,如 "works_at" 连接一个人和一家公司
  3. 观察(Observation):附加在实体上的原子事实字符串,可独立增删(「一条观察一个事实」)

9 个工具完整清单:

工具名 功能 关键行为
create_entities 批量创建实体 输入数组(name + entityType + observations)。忽略同名已有实体
create_relations 建立有向关系 输入数组(from + to + relationType)。跳过重复关系
add_observations 向已有实体追加事实 输入数组(entityName + contents)。实体不存在则失败
delete_entities 删除实体及级联关系 输入实体名称数组。级联删除关联关系,实体不存在时静默
delete_observations 删除指定观察 输入数组(entityName + observations)。观察不存在时静默
delete_relations 删除指定关系 输入数组(from + to + relationType)。关系不存在时静默
read_graph 返回完整知识图谱 无需输入,返回所有实体和关系
search_nodes 跨实体名/类型/观察文本搜索 接收 query 字符串,返回匹配实体及其关系
open_nodes 按名称检索特定实体 接收 names 字符串数组,返回实体及其关系。静默跳过不存在的节点

存储: 默认使用 memory.jsonl(JSONL 格式),可通过环境变量 MEMORY_FILE_PATH 自定义路径。

启动方式:

# NPX
npx -y @modelcontextprotocol/server-memory

# Docker(带持久化卷)
docker run -i -v claude-memory:/app/dist --rm mcp/memory

系统提示词引导: 官方提供了示例系统提示词,定义了四个阶段:用户识别(默认 default_user)→ 会话开始时检索记忆 → 对话中监听新信息 → 会话结束时更新实体、关系和观察。

6. Sequential Thinking — 动态结构化推理

Sequential Thinking 服务器解决的是复杂问题的分步推理需求。当问题涉及不清晰的范围、相互依赖的变量或不断变化的约束时,模型的单次回答往往不够深入或不够准确。该工具强制执行多步推理,允许模型修正早期结论、探索替代分支,并动态调整思考步数。

唯一工具:sequential_thinking

参数 类型 必需 说明
thought string 当前思考步骤的内容
nextThoughtNeeded boolean 是否还需要后续步骤
thoughtNumber int 当前思考的序数位置
totalThoughts int 预估的总步数
isRevision boolean 标记此步是对早期思考的修正
revisesThought int 被修正的思考步骤编号
branchFromThought int 分支起点的思考步骤编号
branchId string 分支标识符
needsMoreThoughts boolean 表明总步数估计需要上调

工作方式: 宿主(Claude Desktop / VS Code)多次调用该工具,每次调用代表一个独立的推理步骤。随着序列展开,可能出现:

  • 修正(Revision):发现之前某步不够完善,通过 isRevision + revisesThought 返回修改
  • 分支(Branching):当某个假设可能错误时,通过 branchFromThought + branchId 分叉出替代路径,并行探索多个假设
  • 动态调整(Dynamic Adjustment):问题范围扩大时,通过 needsMoreThoughts 表明初始估计过于保守

适用的问题类型:

  1. 需要分解为子步骤的复杂问题
  2. 可能需要修正的规划与设计
  3. 需要修正路线的分析
  4. 初始范围不清晰的问题
  5. 需要跨步骤保持上下文的推理
  6. 推理过程需要过滤无关信息

启动方式:

npx -y @modelcontextprotocol/server-sequential-thinking
# Docker: docker run --rm -i mcp/sequentialthinking

环境变量 DISABLE_THOUGHT_LOGGING=true 可关闭思考内容的日志输出。

7. Time — 时间与时区转换

Time 服务器提供时间和时区转换能力,是一个 Python 实现的轻量级工具。

启动方式:

uvx mcp-server-time --local-timezone=America/New_York

支持本地时区设置,可进行时区转换、获取当前时间等操作。

已归档的服务器

以下 14 个服务器因维护策略调整已移至独立的 servers-archived 仓库:

服务器 说明
AWS KB Retrieval AWS Bedrock 知识库检索
Brave Search Brave 搜索 API 集成
EverArt AI 图像生成
GitHub GitHub API 集成(@modelcontextprotocol/server-github
GitLab GitLab API 集成
Google Drive Google Drive 文件操作
Google Maps Google Maps 地理服务
PostgreSQL PostgreSQL 数据库查询(@modelcontextprotocol/server-postgres
Puppeteer 浏览器自动化
Redis Redis 缓存操作
Sentry Sentry 错误追踪
Slack Slack 消息集成
SQLite SQLite 数据库查询

适用场景

增强 AI 编码助手

Filesystem 和 Git 服务器可以让 Claude Code、VS Code Copilot 等 AI 编码助手直接操作项目文件和版本历史,无需手动复制粘贴。

AI 个人记忆系统

Memory 服务器的知识图谱方案适合构建个人 AI 助理,跨会话记住用户的偏好、背景信息、项目进展等,实现真正的个性化体验。

复杂推理增强

Sequential Thinking 服务器适用于技术方案设计、系统架构决策、故障排查等需要多轮反思和路线修正的场景。

信息聚合与分析

Fetch 服务器配合 AI 助手可实现自动化的网页信息抓取、竞争分析、文档调研等工作流。

跨时区协作

Time 服务器为全球化团队提供统一的时区转换能力,可集成到会议安排、截止日期提醒等场景中。

MCP 学习与参考

对于正在构建自定义 MCP Server 的开发者,Everything 服务器是最全面的协议功能参考,其他 6 个服务器则展示了特定领域的工具设计模式。

快速上手

通用配置模式

所有 MCP 服务器的 Claude Desktop 配置遵循统一的 JSON 结构:

{
"mcpServers": {
"server-name": {
"command": "npx", // 或 uvx, docker, python
"args": ["-y", "package-name", "...options"]
}
}
}

典型多服务器配置

一个同时启用 Memory、Fetch 和 Git 的生产级配置:

{
"mcpServers": {
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"],
"env": {
"MEMORY_FILE_PATH": "/home/user/claude-memory/memory.jsonl"
}
},
"fetch": {
"command": "uvx",
"args": ["mcp-server-fetch"]
},
"git": {
"command": "uvx",
"args": ["mcp-server-git", "--repository", "/home/user/projects/my-app"]
},
"sequential-thinking": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-sequential-thinking"]
}
}
}

VS Code 配置

VS Code 使用 "servers" 作为顶层 key(而非 "mcpServers"),配置放入用户级 mcp.json 或工作区级 .vscode/mcp.json

{
"servers": {
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"]
}
}
}

Debug 工具

MCP Inspector 可用于调试任何 MCP 服务器:

# 调试 Fetch 服务器
npx @modelcontextprotocol/inspector uvx mcp-server-fetch

# 调试本地开发中的服务器
cd src/fetch
npx @modelcontextprotocol/inspector uv run mcp-server-fetch

源码架构

目录结构

src/
├── everything/ # 全功能协议测试服务器
├── fetch/ # 网页抓取(Python, mcp-server-fetch)
├── filesystem/ # 文件系统操作(TypeScript)
├── git/ # Git 版本控制(Python, mcp-server-git)
├── memory/ # 知识图谱记忆(TypeScript)
├── sequentialthinking/ # 结构化推理(TypeScript)
└── time/ # 时间时区(Python, mcp-server-time)

设计原则

语言多样性:7 个活跃服务器中,3 个使用 TypeScript(Everything、Filesystem、Memory、Sequential Thinking),3 个使用 Python(Fetch、Git、Time),展示了两种 SDK 的完整用法。

传输协议覆盖:所有服务器默认支持 stdio 传输(主要用于 Claude Desktop),多数也提供 Streamable HTTP 选项。

独立可部署:每个服务器都有独立的 package.jsonpyproject.toml,可通过 npm/uvx 独立安装运行,互不依赖。

npm 包命名规范:TypeScript 实现的服务器统一使用 @modelcontextprotocol/server-<name> 命名空间。

实操 Demo

Demo 1: 使用 Memory 构建个性化 AI 助手

步骤一:配置并启动 Memory 服务器

在 Claude Desktop 配置中添加:

{
"mcpServers": {
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"]
}
}
}

步骤二:AI 自动管理记忆

当你在对话中提到个人信息时,AI 助手会自动调用 Memory 工具:

用户: 我是张三,在 Acme 公司做后端工程师,主要用 Go 和 Python。

AI: [调用 create_entities 创建]
- Entity: "张三" (type: person)
- Observation: "工作在 Acme 公司"
- Observation: "职位是后端工程师"
- Observation: "主要使用 Go 和 Python"

[调用 create_relations]
- (张三) --works_at--> (Acme公司)

步骤三:跨会话记忆检索

下一次对话开始时,AI 通过 search_nodes 检索到之前存储的信息,实现连续性交互:

[新会话]
AI: [自动调用 search_nodes 查询 "张三"]
欢迎回来,张三!上次我们聊到你在 Acme 做后端开发...

Demo 2: 使用 Sequential Thinking 进行架构决策

场景: 为一个文件同步引擎选择技术方案

用户: 帮我设计一个跨平台文件同步引擎的方案

AI: [sequential_thinking 调用 1]
thought: "分析需求:跨平台文件同步需要解决的核心问题有:(1) 文件系统事件监听..."
thoughtNumber: 1
totalThoughts: 5
nextThoughtNeeded: true

AI: [sequential_thinking 调用 2]
thought: "候选方案:A) rsync 风格(全量+增量扫描)B) Watchman 风格..."
thoughtNumber: 2
totalThoughts: 5
nextThoughtNeeded: true

AI: [sequential_thinking 调用 3]
thought: "回到步骤 2,遗漏了 P2P 同步(Syncthing 风格)方案。补充分析..."
thoughtNumber: 3
totalThoughts: 6
isRevision: true
revisesThought: 2
needsMoreThoughts: true
nextThoughtNeeded: true

...(继续迭代直到得出结论)

Demo 3: 使用 Fetch 进行竞争分析

将 Fetch 服务器配置到 AI 助手中,通过自然语言指令即可完成竞品调研:

用户: 抓取 OpenAI、Anthropic 和 Google 三家最新大模型
的产品页,帮我做一个对比表格。

AI: [调用 fetch(url="https://platform.openai.com/docs/models")]
[调用 fetch(url="https://docs.anthropic.com/en/docs/about-claude/models")]
[调用 fetch(url="https://ai.google.dev/models/gemini")]

...处理三段 Markdown 内容,输出对比表格...

同类对比

维度 MCP Servers(官方) LangChain Tools Composio 自定义开发
协议标准 MCP 标准协议 LangChain 自定义 MCP + REST 自定协议
可用工具数 7 个参考实现 200+ 集成 100+ 集成 按需开发
设计定位 教育示例(非生产级) 生产级集成 生产级 SaaS 完全可控
维护者 Anthropic 官方 LangChain 社区 Composio 团队 自有团队
知识图谱记忆 Memory(本地 JSONL) ConversationMemory 等 无内置 自行实现
结构化推理 Sequential Thinking Chain-of-Thought 无内置 自行实现
部署复杂度 一条命令运行 需安装依赖包 需注册账号 需完整开发
学习价值 最佳 MCP 协议实践参考 适合快速原型 适合生产集成 灵活度最高

参考资源

文章作者: Leo·Cheung
文章链接: http://tufusi.com/2026/06/15/SKILL-MCP-Servers/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 ONE·PIECE
打赏
  • 微信
  • 支付宝

评论