MCP 生态概览
Model Context Protocol(MCP)是 Anthropic 推出的开放协议,让 AI 模型能够与外部工具和数据源交互。经过一段时间的发展,MCP 生态已经相当丰富,涌现出大量实用的 Server。
本文精选了各个类别中最实用的 MCP Server,帮助你快速找到适合自己工作流的工具。
MCP 的基本架构
AI 客户端(Claude Code / Claude Desktop)
↕ MCP 协议(JSON-RPC)
MCP Server(提供工具和资源)
↕
外部服务(GitHub API / 数据库 / 文件系统)
每个 MCP Server 可以提供三种能力:
- Tools:可执行的操作(如创建 Issue、查询数据库)
- Resources:可读取的数据(如文件内容、配置信息)
- Prompts:预定义的提示模板
开发工具类
1. GitHub MCP Server
官方维护的 GitHub 集成,功能最全面。
安装配置:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxx"
}
}
}
}
提供的工具:
| 工具 | 功能 |
|---|---|
search_repositories | 搜索仓库 |
create_repository | 创建仓库 |
get_file_contents | 获取文件内容 |
create_or_update_file | 创建或更新文件 |
push_files | 批量推送文件 |
create_issue | 创建 Issue |
create_pull_request | 创建 PR |
list_commits | 列出提交记录 |
search_code | 搜索代码 |
使用场景:
- 让 AI 直接操作 GitHub 仓库
- 自动创建 Issue 和 PR
- 跨仓库搜索代码
2. GitLab MCP Server
GitLab 用户的选择:
{
"mcpServers": {
"gitlab": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-gitlab"],
"env": {
"GITLAB_PERSONAL_ACCESS_TOKEN": "glpat-xxxxxxxxxxxx",
"GITLAB_API_URL": "https://gitlab.com/api/v4"
}
}
}
}
3. Linear MCP Server
项目管理工具 Linear 的集成:
{
"mcpServers": {
"linear": {
"command": "npx",
"args": ["-y", "mcp-linear"],
"env": {
"LINEAR_API_KEY": "lin_api_xxxxxxxxxxxx"
}
}
}
}
提供的工具:
- 创建和更新 Issue
- 查询项目状态
- 管理 Sprint
数据库类
4. PostgreSQL MCP Server
连接 PostgreSQL 数据库,让 AI 能够查询和分析数据。
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres",
"postgresql://user:password@localhost:5432/mydb"]
}
}
}
提供的工具:
| 工具 | 功能 |
|---|---|
query | 执行 SQL 查询(只读) |
list_tables | 列出所有表 |
describe_table | 查看表结构 |
安全提示: 建议使用只读数据库用户,避免 AI 意外修改数据。
5. SQLite MCP Server
轻量级的本地数据库集成:
{
"mcpServers": {
"sqlite": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-sqlite",
"/path/to/database.db"]
}
}
}
适合分析本地的 SQLite 数据库文件,比如浏览器历史记录、应用数据等。
6. MySQL MCP Server
{
"mcpServers": {
"mysql": {
"command": "npx",
"args": ["-y", "@benborla29/mcp-server-mysql"],
"env": {
"MYSQL_HOST": "localhost",
"MYSQL_PORT": "3306",
"MYSQL_USER": "readonly_user",
"MYSQL_PASSWORD": "password",
"MYSQL_DATABASE": "mydb"
}
}
}
}
通信协作类
7. Slack MCP Server
让 AI 能够读取和发送 Slack 消息:
{
"mcpServers": {
"slack": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-slack"],
"env": {
"SLACK_BOT_TOKEN": "xoxb-xxxxxxxxxxxx",
"SLACK_TEAM_ID": "T0XXXXXXX"
}
}
}
}
提供的工具:
list_channels:列出频道post_message:发送消息reply_to_thread:回复消息线程search_messages:搜索消息get_channel_history:获取频道历史
使用场景:
- 让 AI 总结 Slack 频道中的讨论
- 自动发送开发进度更新
- 搜索历史消息中的技术决策
8. Notion MCP Server
连接 Notion 知识库:
{
"mcpServers": {
"notion": {
"command": "npx",
"args": ["-y", "mcp-notion"],
"env": {
"NOTION_API_KEY": "ntn_xxxxxxxxxxxx"
}
}
}
}
可以读取和搜索 Notion 中的文档,让 AI 基于团队知识库回答问题。
文件系统类
9. Filesystem MCP Server
官方的文件系统 Server,让 AI 能够安全地访问本地文件:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem",
"/Users/me/projects",
"/Users/me/documents"]
}
}
}
提供的工具:
| 工具 | 功能 |
|---|---|
read_file | 读取文件内容 |
write_file | 写入文件 |
list_directory | 列出目录内容 |
create_directory | 创建目录 |
move_file | 移动/重命名文件 |
search_files | 搜索文件 |
get_file_info | 获取文件信息 |
安全机制: 只能访问配置中指定的目录,不会越权访问其他路径。
10. Google Drive MCP Server
访问 Google Drive 中的文件:
{
"mcpServers": {
"gdrive": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-gdrive"],
"env": {
"GOOGLE_CLIENT_ID": "xxxx.apps.googleusercontent.com",
"GOOGLE_CLIENT_SECRET": "xxxxxxxxxxxx"
}
}
}
}
搜索与知识类
11. Brave Search MCP Server
让 AI 能够搜索互联网:
{
"mcpServers": {
"brave-search": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
"env": {
"BRAVE_API_KEY": "BSA_xxxxxxxxxxxx"
}
}
}
}
使用场景:
- 查询最新的技术文档
- 搜索错误信息的解决方案
- 获取实时信息
12. Fetch MCP Server
通用的网页抓取工具:
{
"mcpServers": {
"fetch": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-fetch"]
}
}
}
可以抓取任意网页内容,转换为 Markdown 格式供 AI 分析。
综合对比
| Server | 维护方 | 成熟度 | 推荐度 |
|---|---|---|---|
| GitHub | 官方 | 高 | 强烈推荐 |
| PostgreSQL | 官方 | 高 | 强烈推荐 |
| Filesystem | 官方 | 高 | 强烈推荐 |
| SQLite | 官方 | 高 | 推荐 |
| Brave Search | 官方 | 高 | 推荐 |
| Fetch | 官方 | 高 | 推荐 |
| Slack | 官方 | 中 | 推荐 |
| Notion | 社区 | 中 | 推荐 |
| Linear | 社区 | 中 | 按需 |
| MySQL | 社区 | 中 | 按需 |
| Google Drive | 官方 | 中 | 按需 |
| GitLab | 官方 | 中 | 按需 |
如何发现新的 MCP Server
官方资源
- MCP 官方仓库:github.com/modelcontextprotocol/servers 收录了官方和社区维护的 Server
- npm 搜索:搜索
@modelcontextprotocol或mcp-server关键词
社区资源
- Awesome MCP Servers:GitHub 上的精选列表,持续更新
- MCP Hub:社区维护的 MCP Server 目录
- Discord / Reddit:MCP 相关的讨论社区
评估标准
选择 MCP Server 时,建议关注:
- 维护状态:最近是否有更新?Issue 是否有人回复?
- 安全性:是否有权限控制?是否只读?
- 文档质量:安装和配置文档是否清晰?
- 依赖数量:依赖越少越好,减少安全风险
- 社区反馈:Star 数量、使用者评价
配置多个 MCP Server
在实际使用中,我们通常会同时配置多个 Server:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxx"
}
},
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres",
"postgresql://user:pass@localhost:5432/mydb"]
},
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem",
"/Users/me/projects"]
},
"brave-search": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
"env": {
"BRAVE_API_KEY": "BSA_xxxx"
}
}
}
}
性能考虑
- 每个 MCP Server 是一个独立进程,会占用一定内存
- 建议只启用当前需要的 Server
- 对于不常用的 Server,可以在需要时临时添加
自己开发 MCP Server
如果现有的 Server 不能满足需求,可以自己开发。MCP SDK 提供了 TypeScript 和 Python 两种语言的支持:
# TypeScript
npm install @modelcontextprotocol/sdk
# Python
pip install mcp
开发一个基础的 MCP Server 并不复杂,后续文章会详细介绍开发流程。
总结
MCP 生态正在快速发展,从开发工具到数据库,从通信协作到文件管理,几乎每个常见的开发场景都有对应的 MCP Server。
选择 MCP Server 的原则很简单:从你最常用的工具开始,逐步扩展。不需要一次性配置所有 Server,按需添加才是最佳实践。
MCP 的价值不在于连接了多少工具,而在于让 AI 真正融入你的工作流。选对 Server,事半功倍。
相关文章
评论
加载中...
评论
加载中...