基于 Claude HowTo 教程指南的生产级模板,可直接复制的 MCP 配置覆盖 GitHub、数据库、文件系统及多服务器工作流。这些模板展示了环境变量扩展、工具列表与项目级配置的最佳实践,是构建高效自动化开发流程的起点。
4 个 MCP 配置模板:GitHub、数据库、文件系统和多服务器组合
在构建基于 Claude Code 的自动化工作流时,MCP (Model Context Protocol) 是连接外部工具与实时数据的核心桥梁。如何快速、安全地配置这些连接至关重要。本指南基于 Claude HowTo 教程指南中的完整文档与模板文件,提炼出四个核心配置模板,并解析其背后的设计逻辑与关键语法,帮助你跳过摸索阶段,直接进入构建阶段。
模板一:GitHub MCP 配置与完整工具集
GitHub 是开发者最常集成的服务之一。其 MCP 服务器配置不仅关乎连接,更关乎对可用工具的清晰认知。
基础配置文件 (.mcp.json):
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "${GITHUB_TOKEN}"
}
}
}
}
这份配置的核心在于使用 ${GITHUB_TOKEN} 引用环境变量,而非硬编码密钥,这是安全实践的第一步。配置生效后,Claude 将获得一组强大的 GitHub 工具。根据 README 文档,这些工具被系统地组织为四大类:
- Pull Request 管理:
list_prs(列出 PR)、get_pr(查看详情)、create_pr(创建)、update_pr(更新)、merge_pr(合并)、review_pr(评审) - Issue 管理:
list_issues(列出问题)、get_issue(查看详情)、create_issue(创建)、close_issue(关闭)、add_comment(添加评论) - 仓库信息:
get_repo_info(仓库详情)、list_files(文件树)、get_file_content(读取文件)、search_code(代码搜索) - 提交操作:
list_commits(提交历史)、get_commit(提交详情)、create_commit(创建提交)
理解这个工具分层,有助于你在后续工作流中精确调用所需功能。例如,使用 /mcp__github__list_prs 可以快速查看所有 PR 状态。
快速启用:除了手动创建 .mcp.json,你也可以使用 CLI 命令一键添加:
claude mcp add --transport stdio github -- npx @modelcontextprotocol/server-github
但此命令需要确保 GITHUB_TOKEN 环境变量已提前在你的 shell 中设置。
模板二:数据库 MCP 连接配置
连接数据库允许 Claude 执行实时查询,将代码逻辑与业务数据紧密结合。
配置文件:
{
"mcpServers": {
"database": {
"command": "npx",
"args": ["@modelcontextprotocol/server-database"],
"env": {
"DATABASE_URL": "postgresql://user:pass@localhost/mydb"
}
}
}
}
这个模板直接展示了将数据库连接字符串注入 MCP 服务器环境变量的方法。配置成功后,你可以用自然语言下达查询指令,例如“获取订单数超过10的用户”,Claude 会将其转化为 SQL 查询并返回结果。值得注意的是,这里的连接字符串是静态值,在生产环境中,你同样应该使用 ${DATABASE_URL} 的形式引用环境变量。
模板三:文件系统 MCP 与作用域控制
文件系统 MCP 赋予了 Claude 读写本地项目文件的权限,是实现代码生成、文档自动化等任务的基础。
配置文件:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["@modelcontextprotocol/server-filesystem", "/home/user/projects"]
}
}
}
这个配置的关键在于 args 数组中的第二个参数 "/home/user/projects",它为文件系统服务器设置了访问根目录。Claude 所有的文件操作(如 ls, cat, edit, grep)都被限制在这个目录及其子目录内,这是一个重要的安全边界。配置时务必谨慎指定此路径,避免授予不必要的文件系统访问权限。
模板四:多服务器组合与协作工作流
MCP 的强大之处在于组合。以下是一个用于“每日报告生成”的多服务器配置模板,它清晰地展示了如何将不同数据源串联成一个自动化流程。
组合配置文件:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "${GITHUB_TOKEN}"
}
},
"database": {
"command": "npx",
"args": ["@modelcontextprotocol/server-database"],
"env": {
"DATABASE_URL": "${DATABASE_URL}"
}
},
"slack": {
"command": "npx",
"args": ["@modelcontextprotocol/server-slack"],
"env": {
"SLACK_TOKEN": "${SLACK_TOKEN}"
}
},
"filesystem": {
"command": "npx",
"args": ["@modelcontextprotocol/server-filesystem", "/home/user/projects"]
}
}
}
这个模板一次性配置了四个 MCP 服务器,所有敏感凭证均通过 ${VAR} 语法从环境变量读取。基于此配置,你可以设计一个端到端的自动化工作流:
- 数据采集:调用 GitHub MCP 的
list_prs获取代码合入指标。 - 业务关联:调用 Database MCP 查询当日的销售或用户数据。
- 报告生成:结合上述数据,在本地文件系统生成格式化的 HTML 报告。
- 信息分发:调用 Slack MCP 将报告摘要发布到指定频道。
这种组合体现了 MCP 作为“工具集成总线”的角色,使得跨越多个服务的复杂任务可以通过一次会话指令完成。
关键语法:环境变量扩展
在上述所有模板中,我们都使用了环境变量引用。MCP 配置支持更灵活的扩展语法,适用于 command, args, env, url, headers 等字段:
${VAR}:直接引用环境变量VAR,若未设置则会报错。${VAR:-default}:引用环境变量VAR,若未设置则使用默认值default。
例如,一个更健壮的 API 服务器配置可以写为:
{
"mcpServers": {
"api-server": {
"type": "http",
"url": "${API_BASE_URL:-https://api.example.com}/mcp",
"headers": {
"Authorization": "Bearer ${API_KEY}"
}
}
}
}
这让你在本地开发时使用默认地址,而在 CI/CD 环境中通过设置环境变量无缝切换,无需修改配置文件。
配置范围与团队协作:审批机制
根据 Claude HowTo 教程指南,MCP 配置存在三个作用域,其共享和审批要求各不相同:
| 作用域 | 存储位置 | 说明 | 是否需要审批 |
|---|---|---|---|
| 本地 (默认) | ~/.claude.json |
仅对当前用户、当前项目私有 | 否 |
| 项目 | 项目根目录下的 .mcp.json |
通过 Git 共享给团队成员 | 是(首次使用) |
| 用户 | ~/.claude.json |
对当前用户的所有项目可用 | 否 |
当你将上述任何模板作为 项目级 .mcp.json 提交到代码仓库时,团队成员在首次使用其中定义的 MCP 服务器前,都会收到一个审批提示。这个机制确保了团队对引入哪些外部工具有明确的共识,是协作中的重要安全环节。
管理这些配置,可以使用 CLI 命令:
claude mcp list:列出所有已配置的服务器。claude mcp get github:查看特定服务器的详情。claude mcp remove github:移除一个服务器。claude mcp reset-project-choices:重置项目的 MCP 审批选择。
通过灵活组合这四个模板,并理解其背后的设计原则——如环境变量安全、工具分层、作用域控制与工作流编排,你可以高效地将 Claude Code 扩展成一个强大的集成开发与自动化平台。更深入的 MCP 架构与高级特性,可以参阅 Claude Code MCP 集成指南。
FAQ
Q: 项目级 .mcp.json 和用户级配置应该选哪个?
A: 这取决于配置的用途。项目级配置适用于团队共享的、项目特定的工具连接(如连接项目的 GitHub 仓库或测试数据库),它通过 Git 进行版本控制,并强制团队首次使用审批。用户级配置则适用于你个人偏好的、跨所有项目都需要的工具(如你的个人 Slack 帐号或通用文件系统路径)。
Q: 配置多个 MCP 服务器会影响启动速度吗? A: 会,但影响有限且可控。从 v2.1.117 起,Claude Code 默认采用并发连接方式初始化多个 MCP 服务器,显著减少了总启动延迟。此外,针对工具数量庞大的服务器,可以利用“工具搜索”功能,它只在需要时动态加载相关工具定义,避免一次性加载所有工具描述占用过多上下文。