4.MCP生态与资源
# 4.1 典型应用场景
# 场景一:智能文件管理
让 AI 助手直接访问和操作本地文件系统:
用户: "帮我整理 Downloads 文件夹,把图片移到 Pictures,文档移到 Documents"
AI 通过 MCP:
1. 调用 list_directory 获取文件列表
2. 调用 get_file_info 识别文件类型
3. 调用 move_file 移动文件到对应目录
4. 返回整理结果报告
1
2
3
4
5
6
7
2
3
4
5
6
7
适用工具: @modelcontextprotocol/server-filesystem
# 场景二:数据库智能查询
让 AI 理解自然语言并转换为 SQL 查询:
用户: "查询上个月销售额最高的前10个产品"
AI 通过 MCP:
1. 调用 list_tables 了解数据库结构
2. 调用 describe_table 获取表字段信息
3. 生成并执行 SQL 查询
4. 格式化返回查询结果
1
2
3
4
5
6
7
2
3
4
5
6
7
适用工具: mcp-server-sqlite, mcp-server-postgres
# 场景三:代码仓库管理
让 AI 协助管理 GitHub 仓库:
用户: "帮我创建一个新的 feature 分支,并提交这些修改"
AI 通过 MCP:
1. 调用 create_branch 创建分支
2. 调用 create_or_update_file 提交文件
3. 调用 create_pull_request 创建 PR
4. 返回 PR 链接
1
2
3
4
5
6
7
2
3
4
5
6
7
适用工具: mcp-server-github
# 场景四:知识库检索增强
结合 RAG 实现智能知识问答:
用户: "我们公司的请假流程是什么?"
AI 通过 MCP:
1. 调用 search_documents 检索相关文档
2. 获取匹配的知识库内容
3. 基于检索结果生成准确回答
1
2
3
4
5
6
2
3
4
5
6
适用工具: 自定义知识库 MCP Server
# 场景五:自动化工作流
连接多个服务实现自动化:
用户: "当 GitHub 有新的 Issue 时,自动创建 Slack 通知"
AI 通过 MCP:
1. 监听 GitHub Issue 事件
2. 调用 Slack API 发送消息
3. 记录处理日志
1
2
3
4
5
6
2
3
4
5
6
适用工具: mcp-server-github + mcp-server-slack
# 4.2 官方 MCP Servers
Anthropic 官方维护的 MCP Servers:
| Server | 功能 | 安装命令 |
|---|---|---|
| filesystem | 文件系统访问 | npx @modelcontextprotocol/server-filesystem |
| github | GitHub API 集成 | uvx mcp-server-github |
| gitlab | GitLab API 集成 | uvx mcp-server-gitlab |
| google-drive | Google Drive 访问 | npx @modelcontextprotocol/server-gdrive |
| slack | Slack 消息和频道 | uvx mcp-server-slack |
| sqlite | SQLite 数据库 | uvx mcp-server-sqlite |
| postgres | PostgreSQL 数据库 | uvx mcp-server-postgres |
| puppeteer | 浏览器自动化 | npx @modelcontextprotocol/server-puppeteer |
| brave-search | Brave 搜索引擎 | uvx mcp-server-brave-search |
| fetch | HTTP 请求 | uvx mcp-server-fetch |
| memory | 知识图谱存储 | npx @modelcontextprotocol/server-memory |
| sequential-thinking | 思维链推理 | npx @modelcontextprotocol/server-sequential-thinking |
# 配置示例
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/Users/username/Documents",
"/Users/username/Projects"
]
},
"github": {
"command": "uvx",
"args": ["mcp-server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxx"
}
},
"sqlite": {
"command": "uvx",
"args": [
"mcp-server-sqlite",
"--db-path",
"/path/to/database.db"
]
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# 4.3 社区 MCP Servers
社区贡献的热门 MCP Servers:
# 开发工具类
| Server | 功能 | 链接 |
|---|---|---|
| mcp-server-docker | Docker 容器管理 | GitHub (opens new window) |
| mcp-server-kubernetes | K8s 集群管理 | 社区开发中 |
| mcp-server-git | Git 操作 | GitHub (opens new window) |
# 数据服务类
| Server | 功能 | 链接 |
|---|---|---|
| mcp-server-mongodb | MongoDB 数据库 | 社区开发中 |
| mcp-server-redis | Redis 缓存 | 社区开发中 |
| mcp-server-elasticsearch | ES 搜索 | 社区开发中 |
# AI/ML 类
| Server | 功能 | 链接 |
|---|---|---|
| mcp-server-langchain | LangChain 集成 | 社区开发中 |
| mcp-server-huggingface | HuggingFace 模型 | 社区开发中 |
# 生产力工具类
| Server | 功能 | 链接 |
|---|---|---|
| mcp-server-notion | Notion 笔记 | 社区开发中 |
| mcp-server-todoist | Todoist 任务 | 社区开发中 |
| mcp-server-calendar | 日历管理 | 社区开发中 |
# 4.4 开发工具与 SDK
# 官方 SDK
| SDK | 语言 | 安装 | 文档 |
|---|---|---|---|
| Python SDK | Python | pip install mcp | 文档 (opens new window) |
| TypeScript SDK | TS/JS | npm install @modelcontextprotocol/sdk | 文档 (opens new window) |
# 开发工具
| 工具 | 用途 | 使用方式 |
|---|---|---|
| MCP Inspector | 调试和测试 | npx @modelcontextprotocol/inspector |
| MCP CLI | 命令行工具 | npx @modelcontextprotocol/cli |
# MCP Inspector 使用
# 启动 Inspector 调试 Python Server
npx @modelcontextprotocol/inspector python server.py
# 启动 Inspector 调试 Node.js Server
npx @modelcontextprotocol/inspector node server.js
# 指定参数
npx @modelcontextprotocol/inspector python server.py -- --config config.json
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
Inspector 提供的功能:
- 查看 Server 暴露的 Tools、Resources、Prompts
- 手动调用工具并查看返回结果
- 查看 JSON-RPC 通信日志
- 测试参数验证
# 4.5 学习资源
# 官方文档
# GitHub 仓库
| 仓库 | 说明 |
|---|---|
| modelcontextprotocol/specification | 协议规范 |
| modelcontextprotocol/servers | 官方 Server 实现 |
| modelcontextprotocol/python-sdk | Python SDK |
| modelcontextprotocol/typescript-sdk | TypeScript SDK |
# 学习路径
graph LR
A[了解 MCP 概念] --> B[配置 Claude Desktop]
B --> C[使用官方 Server]
C --> D[开发简单 Server]
D --> E[开发复杂 Server]
E --> F[发布到社区]
1
2
3
4
5
6
2
3
4
5
6
推荐学习步骤:
入门阶段(1-2天)
- 阅读 MCP 官方文档概述
- 安装 Claude Desktop 并配置 filesystem Server
- 体验 AI 访问本地文件的能力
实践阶段(3-5天)
- 配置多个官方 Server(GitHub、SQLite 等)
- 使用 MCP Inspector 了解协议细节
- 阅读官方 Server 源码
开发阶段(1-2周)
- 选择 Python 或 TypeScript SDK
- 开发一个简单的自定义 Server
- 实现 Tools 和 Resources
进阶阶段(持续)
- 开发复杂的业务 Server
- 实现 Prompts 和 Sampling
- 考虑发布到社区
编辑 (opens new window)
上次更新: 2025/12/19, 15:17:48