🔌 什么是 MCP
MCP(Model Context Protocol,模型上下文协议)是 Anthropic 开源的一种标准协议,用于连接 AI 助手与外部数据源和工具。它解决了 LLM 应用与数据隔离的问题,让 AI 能够安全、可控地访问外部系统。
🎯 核心概念
MCP 采用客户端-服务器架构。AI 助手(如 Claude)作为客户端,MCP Server 提供工具和数据访问能力。一个统一协议替代分散的集成方案。
MCP 可以做什么:
- 工具调用:让 AI 执行外部操作(如发送邮件、创建 Issue)
- 数据访问:让 AI 读取外部数据(如数据库、API、文件)
- 上下文增强:为 AI 提供实时的外部信息
✨ 为什么要用 MCP
💡 核心价值
MCP 让 AI 从"只会说话"变成"能做事",从封闭系统变成开放平台。
主要优势:
- 统一接口:一个协议连接所有外部服务,无需为每个服务写定制代码
- 安全可控:明确的权限边界,AI 只能访问授权的功能
- 生态丰富:400+ 官方和社区服务器,覆盖主流服务
- 易于扩展:支持多种编程语言 SDK,可自定义服务器
📦 安装配置
Claude Code 配置方式
在项目根目录创建 .mcp.json 文件:
json - .mcp.json
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/allowed/dir"]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "your-token-here"
}
},
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"]
}
}
}
Claude Desktop 配置方式
编辑 Claude Desktop 配置文件:
配置文件位置
# macOS ~/Library/Application Support/Claude/claude_desktop_config.json # Windows %APPDATA%\Claude\claude_desktop_config.json
json - claude_desktop_config.json
{
"mcpServers": {
"brave-search": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
"env": {
"BRAVE_API_KEY": "your-api-key"
}
},
"slack": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-slack"],
"env": {
"SLACK_BOT_TOKEN": "xoxb-your-token",
"SLACK_TEAM_ID": "T0123456789"
}
}
}
}
⚠️ 安全提示
不要将包含 API 密钥的配置文件提交到版本控制。建议使用环境变量或密钥管理工具。
⭐ 推荐服务器列表
官方参考服务器
📁 Filesystem 官方
安全的文件操作,支持可配置的目录访问控制
🔗 Fetch 官方
Web 内容获取和转换,优化 LLM 使用
🧠 Memory 官方
基于知识图谱的持久化记忆系统
📂 Git 官方
读取、搜索和操作 Git 仓库
🕐 Time 官方
时间和时区转换功能
🤔 Sequential Thinking 官方
通过思维序列进行动态问题解决
开发工具类
| 服务器 | 功能 | 安装命令 |
|---|---|---|
| GitHub | GitHub 仓库操作、Issue、PR 管理 | @modelcontextprotocol/server-github |
| GitLab | GitLab 项目管理,支持 OAuth | @modelcontextprotocol/server-gitlab |
| Linear | Linear Issue 搜索、创建、更新 | @modelcontextprotocol/server-linear |
| Sentry | 错误追踪和分析 | @modelcontextprotocol/server-sentry |
数据库类
| 服务器 | 功能 |
|---|---|
| PostgreSQL | 只读数据库访问和 schema 检查 |
| SQLite | 本地 SQLite 数据库操作 |
| MongoDB | MongoDB 数据库操作 |
| Redis | Redis 键值存储交互 |
| Pinecone / Qdrant | 向量数据库语义搜索 |
云服务类
☁️ AWS
AWS 服务集成,遵循最佳实践
🔷 Azure
Azure Storage、Cosmos DB、CLI
🌩️ Cloudflare
Workers、KV、R2、D1 资源管理
▲ Vercel
日志访问、文档搜索、项目管理
搜索与数据类
🔍 Brave Search
Web 和本地搜索,需要 API Key
🔎 Exa
AI 专用搜索引擎
🗺️ Google Maps
位置服务、方向、地点详情
🐦 Twitter/X
推文搜索和发布
浏览器自动化
🎭 Playwright
浏览器自动化测试和操作
🤖 Puppeteer
浏览器自动化和网页抓取
🚀 使用方法
配置完成后,Claude 会自动识别可用的 MCP 工具。你可以:
直接描述任务
示例对话
# Claude 会自动调用 GitHub MCP "帮我创建一个 Issue,标题是 'Bug: 登录页面样式错乱'" # Claude 会自动调用 Filesystem MCP "读取 src/config.ts 文件内容" # Claude 会自动调用 Brave Search MCP "搜索一下 Next.js 15 的新特性"
查看可用工具
在 Claude Code 中可以使用 /mcp 命令查看已配置的 MCP 服务器及其提供的工具。
💡 最佳实践
按需安装 MCP 服务器,避免配置过多不常用的服务。每个服务器都会占用启动时间和资源。
📚 相关资源
- MCP Servers 官方仓库 - 400+ 官方和社区服务器
- MCP 官方文档 - 协议规范和使用指南
- MCP Server Registry - 服务器注册表和搜索
- TypeScript SDK - 开发自定义服务器
- Python SDK - 开发自定义服务器