官方维护的 MCP Server
Anthropic 官方维护以下 Server,稳定性和文档质量可直接用于生产,无需额外审查。
安装方式
官方 Server 通过 npm 发布,两种接入方式:
bash
# 方式 A:npx 直接运行(无需安装,适合快速测试)
npx @modelcontextprotocol/server-filesystem /path/to/allowed-dir
# 方式 B:全局安装后运行
npm install -g @modelcontextprotocol/server-filesystem
Claude Code 配置(在项目 .claude/settings.json 或用户全局设置中):
json
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/project"]
}
}
}
Filesystem --- 本地文件操作
安装: @modelcontextprotocol/server-filesystem
工具清单:
| 工具 | 功能 |
|---|---|
read_file |
读取文件内容 |
read_multiple_files |
批量读取文件 |
write_file |
写入文件内容 |
edit_file |
对文件做精确的字符串替换 |
create_directory |
创建目录 |
list_directory |
列出目录内容 |
directory_tree |
递归输出目录树结构 |
move_file |
移动或重命名文件 |
search_files |
按 glob 模式搜索文件 |
get_file_info |
获取文件元数据(大小、修改时间) |
使用场景: 让 Agent 读写本地项目文件,代码生成后直接写入,配合代码库问答。
注意: 启动时必须声明允许访问的目录(沙箱化),Server 不会访问指定目录之外的路径。
GitHub --- 代码仓库管理
安装: @modelcontextprotocol/server-github
环境变量: GITHUB_PERSONAL_ACCESS_TOKEN
核心工具(部分):
vbscript
create_or_update_file 创建/更新仓库文件
search_repositories 搜索代码仓库
create_repository 创建新仓库
get_file_contents 读取文件内容(含历史版本)
push_files 批量提交多个文件
create_issue 创建 Issue
create_pull_request 创建 Pull Request
fork_repository Fork 仓库
create_branch 创建分支
使用场景: Agent 直接管理 PR/Issue,自动化代码提交,仓库分析。
PostgreSQL --- 数据库查询
安装: @modelcontextprotocol/server-postgres
连接配置:
json
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres",
"postgresql://user:password@localhost:5432/mydb"]
}
}
}
工具: query(执行 SELECT 查询,只读,防止意外写入)
资源: postgres://<host>/<db>/schema(数据库 Schema,LLM 可读取后自动生成 SQL)
使用场景: 自然语言转 SQL,数据分析,业务查询。
Brave Search --- 网络搜索
安装: @modelcontextprotocol/server-brave-search
环境变量: BRAVE_API_KEY(需注册 Brave Search API)
工具:
| 工具 | 功能 |
|---|---|
brave_web_search |
通用网络搜索,返回标题/描述/URL |
brave_local_search |
本地商业信息搜索(餐厅、地点等) |
使用场景: Agent 实时查询信息,替代 Google(有免费额度)。
Fetch --- HTTP 请求
安装: @modelcontextprotocol/server-fetch
工具: fetch(发送 HTTP GET,返回清理后的页面内容)
特点: 自动将 HTML 转换为 Markdown,清理广告和导航元素,Token 友好。
使用场景: Agent 抓取网页内容,读取 API 文档,替代 Web Agent 的简单页面抓取需求。
Memory --- 知识图谱记忆
安装: @modelcontextprotocol/server-memory
工具:
create_entities 创建实体节点(人、地点、概念)
create_relations 建立实体间的关系
add_observations 为实体添加观察/事实
delete_entities 删除实体
delete_relations 删除关系
search_nodes 语义搜索实体
open_nodes 读取指定实体的详情
read_graph 读取完整知识图谱
使用场景: 跨会话记忆(Agent 记住用户偏好、项目背景),构建轻量级的个人知识库。
其他官方 Server
| Server | 功能 | 适用场景 |
|---|---|---|
server-puppeteer |
浏览器自动化(截图、点击、表单) | E2E 测试,网页抓取 |
server-slack |
Slack 消息和频道管理 | 工作通知,自动化 |
server-gdrive |
Google Drive 文件读取和搜索 | 企业文档访问 |
社区 Server 精选
以下是按类别整理的社区 Server,均经过可用性筛选,适合生产使用。
数据库类
| Server | 数据库 | 特点 |
|---|---|---|
mcp-server-sqlite |
SQLite | 本地数据库,适合开发环境 |
mcp-mysql |
MySQL | 支持查询 + Schema 读取 |
mcp-server-qdrant |
Qdrant 向量库 | 语义搜索,RAG 召回 |
mcp-server-redis |
Redis | 缓存管理,键值操作 |
代码与开发工具类
| Server | 功能 | 特点 |
|---|---|---|
codebase-memory-mcp |
代码库记忆 | 符号索引 + 语义搜索,参见本系列代码库知识库专题 |
mcp-server-git |
Git 操作 | log、diff、blame、branch 管理 |
mcp-server-docker |
Docker 管理 | 容器、镜像、网络操作 |
mcp-server-kubernetes |
K8s 集群 | Pod 管理、日志查询 |
企业集成类
| Server | 平台 | 工具覆盖 |
|---|---|---|
mcp-server-jira |
Jira | 工单搜索、创建、更新 |
mcp-server-confluence |
Confluence | 页面读取、搜索 |
mcp-server-linear |
Linear | Issue 管理、Sprint |
mcp-server-notion |
Notion | 页面读写、数据库查询 |
AI / 知识类
| Server | 功能 | 特点 |
|---|---|---|
mcp-ragflow |
RAGflow 知识库 | 对接 RAGflow 的检索接口 |
mcp-server-langfuse |
Langfuse 可观测 | Trace 记录、评测分数读取 |
如何评估一个 MCP Server 的质量
社区 Server 良莠不齐,用于生产前检查 5 个维度。
维度 1:Schema 描述质量
工具的 description 和参数描述决定 LLM 能否正确调用。
json
// ❌ 描述不够具体,LLM 不知道什么时候用
{
"name": "search",
"description": "Search for items"
}
// ✅ 描述精确,包含使用时机和参数说明
{
"name": "search_jira",
"description": "Search Jira tickets by keyword. Use when the user asks about bugs, tasks, or issues. Returns title, status, priority, and assignee.",
"inputSchema": {
"properties": {
"query": {
"type": "string",
"description": "Search keywords. Supports JQL expressions like 'project = PROJ AND status = Open'"
}
}
}
}
检查方式: 用 demo_protocol_client.py(本系列第 02 篇 demo)连接目标 Server,看 tools/list 返回的 schema 描述是否精确。
维度 2:错误处理
工具执行失败时应该返回 isError: true + 有意义的错误信息,让 LLM 能理解失败原因。
json
// ✅ 好的错误处理
{
"content": [{"type": "text", "text": "Jira authentication failed: API token is invalid or expired. Please check JIRA_API_TOKEN environment variable."}],
"isError": true
}
// ❌ 差的错误处理
// Server 直接 crash,没有输出,或者输出空响应
维度 3:安全设计
- 认证信息通过环境变量传入,不硬编码
- 输入参数有类型验证,防止注入
- 危险操作(写入、删除)有明确的权限声明或确认机制
维度 4:维护状态
- GitHub 最近 3 个月有 commit
- Issues 被响应(不是全部堆积无人处理)
- 有 README,说明安装和配置方式
维度 5:在真实场景中测过
用目标 Server 跑 5 个你的真实用例,记录成功率。LLM 能正确理解并调用工具,工具返回的格式 LLM 能正确处理。文档和代码对齐,没有未文档的行为。
快速上手路径
第一次接入 MCP:
bash
# 1. 安装 Node.js(如果没有)
# 2. 在 Claude Code 或 Claude Desktop 加一个 Filesystem Server
# 3. 测试:让 Claude 读取一个文件
# Claude Code 配置:
# .claude/settings.json
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem",
"/your/project/path"]
}
}
}
选第一个业务 Server:
根据你最常用的场景选一个 Server 实际接入,比 Server 数量更重要。接入一个真正用起来的 Server,比配置十个用不到的更有价值。
参考资料
欢迎访问 PrimeSkills ------ 一个精心策划的 AI Agent 与技能市场,所有内容均经过真实企业级工作流验证。没有噱头,只有真正有效的东西。
更多实用知识和有趣产品,欢迎访问我的个人主页