Claude Code MCP Server 配置指南与实战用例
全面介绍 Claude Code 的 MCP Server 功能。从外部工具连接、服务器配置到真实集成案例,一文掌握 MCP 生态。
什么是 MCP?
MCP(Model Context Protocol)是一个用于将 AI 助手连接到外部工具和数据源的开放协议。Claude Code 作为 MCP 客户端,能够通过 MCP Server 与数据库、API 和各种服务进行交互。
配置 MCP Server
MCP Server 的设置写在 .claude/settings.json 或 ~/.claude/settings.json 中:
{
"mcpServers": {
"server-name": {
"command": "executable-command",
"args": ["arg1", "arg2"],
"env": {
"ENV_VAR": "value"
}
}
}
}
也可以通过 CLI 添加服务器:
claude mcp add server-name -- command arg1 arg2
示例 1:数据库集成
配置 MCP Server 直接查询 PostgreSQL:
claude mcp add postgres-server -- npx -y @modelcontextprotocol/server-postgres postgresql://user:pass@localhost:5432/mydb
配置完成后,你可以在 Claude Code 会话中查询数据库:
> 查询 users 表中过去一周的新注册用户数
> 以表格形式展示每日趋势
Claude Code 会自动生成并执行 SQL 查询,然后将结果格式化展示。
示例 2:GitHub 集成
GitHub MCP Server 让你直接在 Claude Code 中管理 Issue 和 PR:
claude mcp add github -- npx -y @modelcontextprotocol/server-github
通过环境变量设置 Token:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxx"
}
}
}
}
你可以这样操作:
> 列出仓库中所有打开的 Issue
> 查看 Issue #42,创建修复分支并实现修复
> 修复完成后创建 PR
示例 3:文件系统扩展
提供对指定目录安全访问的 MCP Server:
claude mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem /path/to/allowed/directory
示例 4:网页抓取
Puppeteer MCP Server 支持网页获取和交互操作:
claude mcp add puppeteer -- npx -y @modelcontextprotocol/server-puppeteer
> 读取 https://example.com/api/docs 上的 API 文档
> 并为该 API 创建客户端库
示例 5:Slack 集成
Slack MCP Server 可以读取频道消息和发送通知:
{
"mcpServers": {
"slack": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-slack"],
"env": {
"SLACK_BOT_TOKEN": "xoxb-xxxxxxxxxxxx"
}
}
}
}
> 查看 #dev 频道的最新消息
> 在 #daily-report 频道发送今天的工作进展
管理 MCP Server
查看已注册的服务器
claude mcp list
删除服务器
claude mcp remove server-name
设置作用域
你可以指定 MCP Server 配置的作用域:
# 项目级别(默认)
claude mcp add --scope project db-server -- command
# 用户级别(全局)
claude mcp add --scope user db-server -- command
构建自定义 MCP Server
你也可以将项目特有的工具封装为自定义 MCP Server:
// my-mcp-server.ts
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";
const server = new McpServer({
name: "my-project-tools",
version: "1.0.0",
});
// 定义自定义工具
server.tool(
"deploy-staging",
"部署到预发布环境",
{ branch: z.string().describe("要部署的分支名称") },
async ({ branch }) => {
// 部署逻辑
return {
content: [{ type: "text", text: `已将 ${branch} 部署到预发布环境` }],
};
}
);
const transport = new StdioServerTransport();
await server.connect(transport);
注册方式:
claude mcp add my-tools -- npx tsx my-mcp-server.ts
安全注意事项
1. 凭证管理
MCP Server 配置中的 Token 和密码应通过环境变量或 .env 文件管理,切勿提交到 Git。
2. 限制访问范围
遵循最小权限原则——例如,为数据库 MCP Server 使用只读权限的数据库用户。
3. 使用本地配置
将包含凭证的配置存放在 .claude/settings.local.json 中,并将其添加到 .gitignore。
总结
MCP Server 让你可以将 Claude Code 的能力扩展到整个项目生态系统。从数据库查询到 GitHub 工作流再到 Slack 通知,Claude Code 可以成为你开发工作流的中枢。先从官方 MCP Server 开始,然后根据需要构建自定义服务器。
免费 PDF:5 分钟看懂 Claude Code 速查表
只需留下邮箱,我们就会立即把这份 A4 一页速查表 PDF 发送给你。
我们会严格保护你的个人信息,绝不发送垃圾邮件。
把 Claude Code 变成真正能带来结果的工作流
先领取中文说明的免费 PDF,再进入英文商品页选择合适的教材。如果你需要团队落地、流程设计或内容变现支持,也可以直接咨询。
本文作者
Masa
深度使用 Claude Code 的工程师。运营 claudecode-lab.com——一个涵盖 10 种语言、超过 2,000 页内容的科技媒体。
相关文章
Claude Code/Codex 安全 Agent Harness 实战:权限、验证与回滚
用权限策略、执行计划、验证脚本和回滚日志,为 Claude Code 与 Codex 搭建更安全的 AI Agent 工作流。
Claude Code 子代理 (Subagent) 实战模式 10 选
使用 Claude Code 的子代理功能,掌握 10 种实战模式。学习如何使用并行处理、专业化和上下文隔离来加倍开发速度。
Claude Code Agent SDK入门 ― 快速构建自主智能代理
学习如何使用Claude Code Agent SDK构建自主AI代理。涵盖环境搭建、工具定义和多步执行,附带实践代码示例。