教程

Claude Code MCP 集成指南:通过 Model Context Protocol 连接外部工具

Claude Code 通过 MCP(Model Context Protocol)连接数据库、GitHub、Slack 等外部工具。本文介绍三种传输类型(stdio/HTTP/SSE)的配置方法、Anthropic 官方 MCP 服务器(文件系统、GitHub、PostgreSQL、Brave Search、Puppeteer)的安装命令、自定义 TypeScript MCP 服务器开发,以及 MCP 安全最佳实践。

2026/2/275分钟 阅读ClaudeEagle

Model Context Protocol(MCP)是 Anthropic 开发的开放标准协议,让 Claude Code 能够连接到数据库、API、文件系统等各种外部工具和数据源。本文介绍如何为 Claude Code 配置和使用 MCP 服务器。

什么是 MCP?

MCP 是 AI 助手与外部工具连接的标准协议,类似于 AI 世界的「USB-C 接口」。通过 MCP:

  • Claude 可以查询你的数据库
  • 访问第三方 API(GitHub、Jira、Slack 等)
  • 读取本地文件系统中通常不在项目目录的数据
  • 调用自定义工具和服务

添加 MCP 服务器

方法 1:命令行添加(推荐)

bash
# 添加 stdio 类型的 MCP 服务器
claude mcp add <server-name> --transport stdio -- <command> [args...]

# 示例:添加文件系统 MCP 服务器
claude mcp add filesystem --transport stdio -- npx -y @modelcontextprotocol/server-filesystem /path/to/files

# 添加带环境变量的 MCP 服务器
claude mcp add github --transport stdio --env GITHUB_TOKEN=your_token -- npx -y @modelcontextprotocol/server-github

# 添加 HTTP 类型的 MCP 服务器(远程)
claude mcp add my-api --transport http https://api.example.com/mcp

# 添加 SSE 类型的 MCP 服务器
claude mcp add my-service --transport sse https://service.example.com/mcp

方法 2:直接编辑配置文件

用户级别(全项目可用):~/.claude.json

json
{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/home/user/projects"],
      "type": "stdio"
    },
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_TOKEN": "ghp_your_token_here"
      },
      "type": "stdio"
    }
  }
}

项目级别(与团队共享):.mcp.json

json
{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres"],
      "env": {
        "POSTGRES_URL": "postgresql://localhost:5432/mydb"
      },
      "type": "stdio"
    }
  }
}

管理 MCP 服务器

bash
# 列出所有 MCP 服务器
claude mcp list

# 查看服务器详情
claude mcp get <server-name>

# 删除 MCP 服务器
claude mcp remove <server-name>

Anthropic 官方 MCP 服务器

以下是 Anthropic 官方支持的常用 MCP 服务器:

文件系统操作

bash
claude mcp add filesystem --transport stdio -- npx -y @modelcontextprotocol/server-filesystem /allowed/path

功能:读写文件系统,支持路径白名单控制权限。

GitHub 集成

bash
claude mcp add github --transport stdio --env GITHUB_TOKEN=your_token -- npx -y @modelcontextprotocol/server-github

功能:管理仓库、搜索代码、操作 Issue 和 PR。

PostgreSQL 数据库

bash
claude mcp add postgres --transport stdio --env POSTGRES_URL=postgres://localhost/mydb -- npx -y @modelcontextprotocol/server-postgres

功能:查询和探索 PostgreSQL 数据库(只读访问)。

Brave Search

bash
claude mcp add brave-search --transport stdio --env BRAVE_API_KEY=your_key -- npx -y @modelcontextprotocol/server-brave-search

功能:通过 Brave Search API 进行网络搜索。

Puppeteer 浏览器控制

bash
claude mcp add puppeteer --transport stdio -- npx -y @modelcontextprotocol/server-puppeteer

功能:控制 Chrome 浏览器,适合 UI 测试和网页自动化。

Slack 集成

bash
claude mcp add slack --transport stdio --env SLACK_BOT_TOKEN=xoxb-your_token SLACK_TEAM_ID=T_id -- npx -y @modelcontextprotocol/server-slack

功能:发送和读取 Slack 消息,管理频道。

在会话中使用 MCP 工具

添加 MCP 服务器后,Claude 会自动在合适时机使用这些工具:

text
# 使用 GitHub MCP 查找 PR
find all open PRs related to authentication in the main repository

# 使用数据库 MCP 查询
show me the most active users from the users table in the last 7 days

# 使用文件系统 MCP 访问项目外文件
read the nginx config at /etc/nginx/nginx.conf and suggest optimizations

查看可用的 MCP 工具:

text
/mcp

创建自定义 MCP 服务器

使用 TypeScript 创建简单的 MCP 服务器:

typescript
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
import { ListToolsRequestSchema, CallToolRequestSchema } from '@modelcontextprotocol/sdk/types.js';

const server = new Server(
  { name: 'my-custom-server', version: '1.0.0' },
  { capabilities: { tools: {} } }
);

// 定义工具
server.setRequestHandler(ListToolsRequestSchema, async () => ({
  tools: [{
    name: 'get_project_status',
    description: '获取项目的当前状态和统计',
    inputSchema: {
      type: 'object',
      properties: {
        project: { type: 'string', description: '项目名称' }
      },
      required: ['project']
    }
  }]
}));

// 处理工具调用
server.setRequestHandler(CallToolRequestSchema, async (request) => {
  if (request.params.name === 'get_project_status') {
    const { project } = request.params.arguments;
    // 实现你的逻辑
    return {
      content: [{ type: 'text', text: `项目 ${project} 状态:正常运行` }]
    };
  }
  throw new Error(`Unknown tool: ${request.params.name}`);
});

// 启动服务器
const transport = new StdioServerTransport();
await server.connect(transport);

注册自定义服务器:

bash
claude mcp add my-server --transport stdio -- node /path/to/my-server.js

远程 MCP 服务器(HTTP/SSE)

连接到远程托管的 MCP 服务器:

bash
# HTTP(推荐,支持 StreamableHTTP)
claude mcp add remote-service --transport http https://mcp.company.com/api

# SSE(旧格式,仍受支持)
claude mcp add legacy-service --transport sse https://mcp.company.com/sse

MCP 安全最佳实践

  1. 最小权限:文件系统 MCP 只允许访问必要的路径
  2. 凭证管理:敏感 token 通过环境变量传入,不要硬编码
  3. 可信来源:只使用来自可信提供商的 MCP 服务器
  4. 定期审查:检查已配置的 MCP 服务器列表,移除不再需要的
  5. 项目隔离:敏感工具配置在用户级别,项目 .mcp.json 只放通用工具

总结

MCP 协议为 Claude Code 打开了连接外部世界的大门。从数据库查询到 GitHub 操作,从网络搜索到浏览器自动化,MCP 让 Claude Code 能够在更广泛的工作场景中发挥作用。随着 MCP 生态的不断扩展,可用的集成将会越来越丰富。


来源Claude Code 官方文档 - MCP Integration 原文作者:Anthropic Team

相关文章推荐

教程Claude Code MCP 完全指南:三种安装方式、三级作用域、OAuth 认证与企业管控策略Claude Code MCP 完全指南:三种安装方式(远程 HTTP 推荐/SSE 废弃/本地 Stdio)、三级作用域(local/project/user)及优先级规则、Sentry+GitHub+PostgreSQL 实战示例、OAuth 2.0 认证(/mcp 命令/固定端口/预配置凭证)、/mcp__server__prompt 命令格式、资源引用语法,以及企业管控(managed-mcp.json 白名单黑名单策略)。2026/3/5教程Claude Code MCP 集成完全指南:连接外部工具、配置服务器与调试技巧Claude Code MCP 完整集成指南:stdio 和 HTTP 两种服务器类型配置、常用 MCP 服务器推荐(GitHub/PostgreSQL/Slack/Linear)、在 Subagent 中限制 MCP 访问、Hook 中使用 MCP 工具名匹配、成本优化策略,以及自定义 MCP 服务器开发示例。2026/2/28教程Claude Code MCP 完整使用指南:安装配置主流 MCP 服务器扩展 AI 能力Claude Code MCP(Model Context Protocol)完整使用指南:MCP 是什么(AI 工具扩展标准)、claude mcp 命令管理服务器(add/remove/list)、主流 MCP 服务器安装配置(文件系统/GitHub/PostgreSQL/Brave Search/Slack)、本地 stdio 与远程 SSE 两种连接方式、MCP 服务器安全配置、在 CLAUDE.md 中声明 MCP 工具使用规范,以及自定义 MCP 服务器的快速开发入门。2026/3/18教程Claude Code MCP 集成指南:连接 Jira、GitHub、Slack 等外部工具Claude Code MCP 集成完整指南:MCP 协议原理、快速配置 GitHub/Postgres/Slack 等现成 Server、TypeScript 开发自定义 MCP Server 示例、三个实战场景(Bug 处理/站会准备/数据优化)、安全配置建议。2026/3/12教程Claude Code MCP 集成指南:连接 Jira、Slack、数据库,让 AI 真正融入开发工作流Claude Code MCP 集成完整指南:MCP 协议介绍、安装配置方式、GitHub/Jira/Slack/PostgreSQL/Google Drive 五大常用集成场景与代码示例、完整联动工作流演示、MCP 服务器发现与自定义开发入门。2026/3/13教程Claude Code 插件开发指南:plugin.json 结构、Skills/Hooks/MCP 集成与官方市场提交Claude Code 插件开发完整指南:独立配置 vs 插件对比(命名空间/适用场景)、5 步快速创建(目录/plugin.json 清单字段/Skill/本地 --plugin-dir 测试/分享)、完整插件目录结构(.claude-plugin/commands/skills/agents/hooks/mcp/.lsp.json/settings.json)、各组件配置示例(Skills SKILL.md/LSP 服务器.lsp.json/默认 settings.json agent 键)、从独立配置迁移步骤对比表、三步调试方法,以及通过 claude.ai 和 Console 提交官方市场的方式。2026/3/8