08f - MCP 集成与推荐 Server
本文是《AI Agent 实战手册》第 8 章第 6 节。 上一节:08e-MCP安全最佳实践 | 下一节:09a-从聊天机器人到自主Agent
概述
MCP(Model Context Protocol)已成为 AI Agent 连接外部工具的事实标准,但不同 AI 客户端的集成方式各有差异——配置文件位置不同、JSON 格式不同、支持的传输协议也不同。本节提供六大主流 AI 客户端(Claude Desktop、Claude Code、Kiro、Cursor、VS Code Copilot、Windsurf)的详细集成指南和配置示例,并推荐 20+ 个经过社区验证的开源 MCP Server,帮助你快速搭建 AI Agent 的工具生态。
1. MCP 客户端集成全景
客户端支持对比
| 客户端 | 传输协议 | 配置方式 | 配置文件位置 | 远程 MCP | OAuth 支持 |
|---|---|---|---|---|---|
| Claude Desktop | stdio, SSE | JSON 配置文件 | ~/Library/Application Support/Claude/claude_desktop_config.json(macOS) | ✅ | ✅ |
| Claude Code | stdio, SSE, HTTP | CLI 命令 + JSON | ~/.claude.json 或项目级 .mcp.json | ✅ | ✅ |
| Kiro | stdio, SSE, HTTP | GUI + JSON 配置 | .kiro/settings/mcp.json(项目级)或用户级配置 | ✅ | ✅ |
| Cursor | stdio, SSE | JSON 配置文件 | ~/.cursor/settings/mcp.json(全局)或项目 .cursor/mcp.json | ✅ | ✅ |
| VS Code (Copilot) | stdio, SSE, HTTP | JSON 配置文件 | .vscode/mcp.json(项目级)或用户设置 | ✅ | ✅ |
| Windsurf | stdio, SSE, HTTP | GUI + JSON 配置 | ~/.codeium/windsurf/mcp_config.json | ✅ | ✅ |
2. Claude Desktop 集成指南
配置文件位置
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - 快捷方式: Claude Desktop → Settings → Developer → Edit Config
配置格式
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/你的用户名/projects"],
"env": {}
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "[你的GitHub Token]"
}
}
}
}操作步骤
步骤 1:安装 Node.js
MCP Server 大多基于 Node.js 运行,确保已安装 Node.js 18+:
node --version # 确认 >= 18.0.0步骤 2:编辑配置文件
打开 Claude Desktop → Settings → Developer → Edit Config,添加所需的 MCP Server 配置。
步骤 3:重启 Claude Desktop
保存配置后,完全退出并重新打开 Claude Desktop。成功加载的 MCP Server 会在对话框底部显示工具图标(🔨)。
步骤 4:验证连接
在对话中输入:
请列出你当前可用的 MCP 工具Claude 会列出所有已连接的 MCP Server 及其提供的工具。
提示词模板
我已经配置了 [MCP Server 名称] MCP Server。
请使用 [工具名称] 工具帮我 [具体任务描述]。
如果工具调用失败,请告诉我错误信息以便排查。3. Claude Code 集成指南
配置方式
Claude Code 提供三种配置 MCP Server 的方式:
- CLI 命令(推荐):
claude mcp add - 交互式向导:在 Claude Code 中输入
/mcp - 直接编辑配置文件:
~/.claude.json
CLI 命令配置
# 添加本地 stdio MCP Server(用户级)
claude mcp add github --scope user -- npx -y @modelcontextprotocol/server-github
# 添加远程 HTTP MCP Server
claude mcp add my-remote-server https://my-mcp-server.example.com/mcp
# 添加带环境变量的 Server
claude mcp add supabase --scope user \
-e SUPABASE_URL=https://xxx.supabase.co \
-e SUPABASE_KEY=[你的Key] \
-- npx -y @supabase/mcp-server
# 查看已配置的 MCP Server
claude mcp list
# 移除 MCP Server
claude mcp remove github作用域说明
| 作用域 | 标志 | 配置位置 | 适用场景 |
|---|---|---|---|
| 用户级 | --scope user | ~/.claude.json | 所有项目通用的工具(GitHub、搜索等) |
| 项目级 | --scope project | 项目根目录 .mcp.json | 项目特定的工具(数据库、API 等) |
配置文件格式
// ~/.claude.json 中的 MCP 配置部分
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "[你的Token]"
}
},
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres"],
"env": {
"POSTGRES_CONNECTION_STRING": "postgresql://user:pass@localhost:5432/mydb"
}
}
}
}4. Kiro 集成指南
配置方式
Kiro 提供两种 MCP 集成路径:
- Powers 系统(推荐):通过 Kiro Powers 面板一键安装,Powers 封装了 MCP Server + Steering 文件 + 文档
- 手动 JSON 配置:直接编辑 MCP 配置文件
通过 Powers 安装
- 点击 Kiro 侧边栏的 “Powers” 图标
- 浏览或搜索可用的 Power(如 AWS Documentation、Stripe 等)
- 点击 “Install” 一键安装
- Power 会自动配置 MCP Server 并加载相关 Steering 文件
手动 JSON 配置
配置文件位置:
- 项目级:
.kiro/settings/mcp.json - 用户级:通过 Kiro Settings → MCP → Open User MCP Config (JSON)
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "[你的Token]"
}
},
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/allowed/dir"]
}
}
}GUI 添加方式
- 点击 Kiro 侧边栏的 “ghost” 图标
- 找到 “MCP Servers” 列表
- 点击 ”+” 按钮添加新的 MCP Server
- 填写 Server 名称、命令、参数和环境变量
Kiro CLI 配置
# Kiro CLI 也支持 MCP 配置
# 配置文件位于 ~/.kiro/settings/mcp.json5. Cursor 集成指南
配置文件位置
- 全局配置:
~/.cursor/settings/mcp.json - 项目级配置:
项目根目录/.cursor/mcp.json
配置格式
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "[你的Token]"
}
},
"brave-search": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
"env": {
"BRAVE_API_KEY": "[你的API Key]"
}
}
}
}操作步骤
步骤 1:打开 Cursor Settings
Cmd+Shift+J(macOS)或 Ctrl+Shift+J(Windows/Linux)→ 搜索 “MCP”
步骤 2:添加 MCP Server
在 MCP 设置页面点击 “Add new MCP server”,或直接编辑配置文件。
步骤 3:验证连接
MCP Server 状态会在设置页面显示为绿色(已连接)或红色(连接失败)。
远程 HTTP MCP 配置
{
"mcpServers": {
"remote-api": {
"url": "https://my-mcp-server.example.com/mcp",
"headers": {
"Authorization": "Bearer [你的Token]"
}
}
}
}6. VS Code (GitHub Copilot) 集成指南
配置文件位置
- 项目级:
.vscode/mcp.json(推荐,可提交到版本控制) - 用户级:通过 Command Palette → “MCP: Open User Configuration”
配置格式
{
"servers": {
"github": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "[你的Token]"
}
},
"my-remote-server": {
"type": "sse",
"url": "https://my-mcp-server.example.com/mcp"
}
}
}⚠️ 注意:VS Code 的 MCP 配置格式与其他客户端略有不同——顶层键是
"servers"而非"mcpServers",且每个 Server 需要指定"type"字段。
操作步骤
步骤 1:确保 Copilot 扩展已安装
安装 GitHub Copilot 和 GitHub Copilot Chat 扩展。
步骤 2:创建配置文件
在项目根目录创建 .vscode/mcp.json,或通过 Command Palette(Cmd+Shift+P)搜索 “MCP: Open User Configuration”。
步骤 3:重启 VS Code
保存配置后完全重启 VS Code,Copilot Chat 会自动加载 MCP 配置。
步骤 4:在 Copilot Chat 中使用
在 Copilot Chat 中使用 Agent 模式(@workspace),MCP 工具会自动可用。
7. Windsurf 集成指南
配置文件位置
- 全局配置:
~/.codeium/windsurf/mcp_config.json - GUI 入口:Windsurf Settings → Cascade → MCP Servers
配置格式
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "[你的Token]"
}
}
}
}远程 HTTP MCP 配置
{
"mcpServers": {
"remote-http-mcp": {
"serverUrl": "https://my-mcp-server.example.com/mcp",
"headers": {
"API_KEY": "Bearer ${env:AUTH_TOKEN}"
}
}
}
}💡 环境变量插值:Windsurf 支持在
command、args、env、serverUrl、url、headers字段中使用${env:变量名}语法引用环境变量。
MCP Marketplace
Windsurf 内置 MCP Marketplace,可通过 Cascade 面板右上角的 MCP 图标访问,一键安装官方认证的 MCP Server(带蓝色勾标识)。
工具数量限制
Cascade 同时最多支持 100 个工具。可在每个 MCP 的设置页面中切换启用/禁用特定工具。
团队管理(Teams & Enterprise)
团队管理员可以:
- 切换团队的 MCP 访问权限
- 白名单审批的 MCP Server(一旦白名单启用,非白名单 Server 将被自动阻止)
8. 推荐开源 MCP Server 目录
8.1 开发工具类
| Server | 描述 | GitHub | 价格 | 适用场景 |
|---|---|---|---|---|
| GitHub MCP | 仓库管理、Issue/PR 操作、代码搜索 | @modelcontextprotocol/server-github | 免费 | 代码审查、Issue 管理、CI/CD 触发 |
| GitLab MCP | GitLab 仓库、MR、Pipeline 操作 | @modelcontextprotocol/server-gitlab | 免费 | GitLab 用户的仓库管理 |
| Filesystem MCP | 本地文件系统读写操作 | @modelcontextprotocol/server-filesystem | 免费 | 文件管理、项目脚手架 |
| Playwright MCP | 跨浏览器自动化测试 | @anthropic/mcp-server-playwright | 免费 | E2E 测试、网页抓取 |
| Puppeteer MCP | Chrome 浏览器自动化 | @modelcontextprotocol/server-puppeteer | 免费 | 浏览器自动化、截图 |
8.2 数据库类
| Server | 描述 | GitHub | 价格 | 适用场景 |
|---|---|---|---|---|
| PostgreSQL MCP | PostgreSQL 数据库查询与管理 | @modelcontextprotocol/server-postgres | 免费 | SQL 查询、Schema 探索 |
| SQLite MCP | SQLite 数据库操作 | @modelcontextprotocol/server-sqlite | 免费 | 轻量级数据库操作 |
| Supabase MCP | Supabase 数据库与认证管理 | @supabase/mcp-server | 免费 | 全栈应用数据管理 |
8.3 搜索与知识类
| Server | 描述 | GitHub | 价格 | 适用场景 |
|---|---|---|---|---|
| Brave Search MCP | Brave 搜索引擎集成 | @modelcontextprotocol/server-brave-search | 免费(2000 次/月) | 实时网络搜索 |
| DuckDuckGo MCP | 无需 API Key 的网络搜索 | 社区维护 | 免费 | 轻量级搜索、无需注册 |
| Memory MCP | 基于知识图谱的持久化记忆 | @modelcontextprotocol/server-memory | 免费 | 跨会话记忆、项目上下文 |
| Sequential Thinking MCP | 结构化多步推理 | @modelcontextprotocol/server-sequential-thinking | 免费 | 复杂任务分解、架构设计 |
8.4 云服务与 API 类
| Server | 描述 | GitHub | 价格 | 适用场景 |
|---|---|---|---|---|
| AWS MCP Servers | 45+ AWS 服务集成(S3、Lambda、DynamoDB 等) | awslabs/mcp | 免费 | AWS 基础设施管理 |
| Slack MCP | Slack 工作区消息与频道管理 | @modelcontextprotocol/server-slack | 免费 | 团队通信自动化 |
| Google Maps MCP | 地理位置查询与路线规划 | @modelcontextprotocol/server-google-maps | 免费(有配额) | 位置服务集成 |
| Stripe MCP | 支付与订阅管理 | 社区维护 | 免费 | 电商支付集成 |
8.5 可观测性与监控类
| Server | 描述 | GitHub | 价格 | 适用场景 |
|---|---|---|---|---|
| Prometheus MCP | Prometheus 指标查询与分析 | awslabs/mcp | 免费 | 监控数据分析 |
| Sentry MCP | 错误追踪与性能监控 | 社区维护 | 免费 | 生产环境错误排查 |
9. 开发者画像推荐套装
🎯 前端开发者入门套装
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "[Token]" }
},
"playwright": {
"command": "npx",
"args": ["-y", "@anthropic/mcp-server-playwright"]
},
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "[项目路径]"]
}
}
}适用场景:组件开发、E2E 测试、代码审查
🔧 后端开发者入门套装
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "[Token]" }
},
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres"],
"env": { "POSTGRES_CONNECTION_STRING": "[连接字符串]" }
},
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"]
}
}
}适用场景:API 开发、数据库管理、架构设计
🚀 全栈创业者入门套装
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "[Token]" }
},
"supabase": {
"command": "npx",
"args": ["-y", "@supabase/mcp-server"],
"env": {
"SUPABASE_URL": "[URL]",
"SUPABASE_KEY": "[Key]"
}
},
"brave-search": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
"env": { "BRAVE_API_KEY": "[API Key]" }
},
"slack": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-slack"],
"env": { "SLACK_BOT_TOKEN": "[Token]" }
}
}
}适用场景:快速 MVP 开发、市场调研、团队协作
☁️ DevOps 工程师入门套装
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "[Token]" }
},
"aws-docs": {
"command": "uvx",
"args": ["awslabs.aws-documentation-mcp-server@latest"],
"env": { "FASTMCP_LOG_LEVEL": "ERROR" }
},
"prometheus": {
"command": "uvx",
"args": ["awslabs.prometheus-mcp-server@latest"],
"env": { "PROMETHEUS_URL": "[Prometheus URL]" }
}
}
}适用场景:基础设施管理、监控告警、CI/CD 配置
实战案例:从零配置 Claude Code + GitHub + PostgreSQL
场景
你正在开发一个 Node.js 后端项目,需要 Claude Code 能够:
- 查看和管理 GitHub Issue
- 直接查询开发数据库
- 记住跨会话的项目上下文
操作流程
步骤 1:添加 GitHub MCP
# 先创建 GitHub Personal Access Token
# GitHub → Settings → Developer settings → Personal access tokens → Fine-grained tokens
claude mcp add github --scope user \
-e GITHUB_PERSONAL_ACCESS_TOKEN=ghp_xxxxxxxxxxxx \
-- npx -y @modelcontextprotocol/server-github步骤 2:添加 PostgreSQL MCP
claude mcp add postgres --scope project \
-e POSTGRES_CONNECTION_STRING=postgresql://dev:password@localhost:5432/myapp \
-- npx -y @modelcontextprotocol/server-postgres步骤 3:添加 Memory MCP
claude mcp add memory --scope user \
-- npx -y @modelcontextprotocol/server-memory步骤 4:验证配置
claude mcp list
# 输出:
# github (user) - running
# postgres (project) - running
# memory (user) - running步骤 5:实际使用
> 查看 myapp 仓库中标记为 bug 的 Issue,然后检查数据库中 users 表的 schema,
帮我分析 Issue #42 报告的用户注册失败问题可能的原因。案例分析
- 关键决策:GitHub MCP 设为
user级别(所有项目通用),PostgreSQL 设为project级别(仅当前项目可用),避免误操作其他项目的数据库 - 安全考量:开发环境使用只读数据库连接字符串,生产环境绝不配置到 MCP
- 效率提升:Agent 可以直接关联 Issue 描述和数据库 Schema,无需手动复制粘贴上下文
避坑指南
❌ 常见错误
-
配置文件格式错误导致 Server 无法启动
- 问题:JSON 语法错误(多余逗号、缺少引号)是最常见的配置失败原因
- 正确做法:使用 JSON 校验工具检查配置文件,或使用 CLI 命令(如
claude mcp add)自动生成配置
-
将生产数据库连接字符串配置到 MCP
- 问题:AI Agent 可能执行破坏性 SQL 操作(DROP TABLE、DELETE 等)
- 正确做法:仅配置开发/测试环境的数据库,使用只读用户,或通过 MCP Gateway 添加权限控制
-
安装过多 MCP Server 导致性能下降
- 问题:每个 MCP Server 都是独立进程,占用内存和 CPU;工具过多还会增加 Agent 的选择困难
- 正确做法:按需安装,Windsurf 限制 100 个工具,其他客户端也建议控制在 10-15 个 Server 以内
-
忽略环境变量安全
- 问题:将 API Key 和 Token 硬编码在配置文件中,提交到版本控制
- 正确做法:使用环境变量引用(如 Windsurf 的
${env:变量名}),将配置文件加入.gitignore
-
不同客户端配置格式混淆
- 问题:VS Code 用
"servers"+"type"字段,其他客户端用"mcpServers",格式不通用 - 正确做法:参考本文各客户端的配置示例,注意格式差异
- 问题:VS Code 用
✅ 最佳实践
- 从官方 MCP Server 开始:优先使用
@modelcontextprotocol/server-*系列,质量和安全性有保障 - 项目级 vs 用户级分离:通用工具(GitHub、搜索)设为用户级,项目特定工具(数据库、API)设为项目级
- 定期更新 MCP Server:使用
npx -y确保每次运行最新版本,或定期检查更新 - 使用 MCP Marketplace:Windsurf 和 Kiro 都提供内置 Marketplace,比手动配置更安全便捷
- 测试后再信任:新安装的 MCP Server 先在沙盒环境测试,确认行为符合预期后再用于正式项目
相关资源与延伸阅读
- MCP 官方文档 - 快速入门 — MCP 协议官方用户指南,包含 Claude Desktop 配置教程
- MCP 官方 Server 仓库 — Anthropic 维护的官方 MCP Server 集合,66,000+ GitHub Stars
- AWS MCP Servers — AWS 官方维护的 45+ MCP Server,覆盖主要 AWS 服务
- Kiro MCP 文档 — Kiro IDE 的 MCP 集成官方文档
- Kiro Powers 市场 — Kiro Powers 封装了 MCP Server + Steering 文件的一站式解决方案
- Windsurf MCP 官方文档 — Windsurf Cascade 的 MCP 集成指南,含团队管理功能
- Docker MCP Toolkit — 使用 Docker 容器化管理 MCP Server 的方案
- MCP Market 排行榜 — 社区驱动的 MCP Server 排行榜和发现平台
- Smithery.ai — MCP Server 发现和安装平台
- mcp.so — 社区 MCP Server 目录
参考来源
- Model Context Protocol - Official Documentation (2024-11,持续更新)
- MCP Servers GitHub Repository (2024-11,持续更新)
- Kiro - Extending Kiro with MCP (2025-07)
- Kiro - Powers Documentation (2025-07)
- Windsurf - Cascade MCP Integration (2025-06)
- AWS introduces powers for AI-powered Kiro IDE (2025-06)
- Claude Code MCP Servers: Complete Configuration Guide (2025-06)
- 15 Best MCP servers for developers (2025-05)
- Docker - Add MCP Servers to Claude Code with MCP Toolkit (2025-06)
- Setting Up MCP Servers with Claude Code (2025-04)
📖 返回 总览与导航 | 上一节:08e-MCP安全最佳实践 | 下一节:09a-从聊天机器人到自主Agent