Zum Inhalt

用 Claude Code + MCP 搭建 AI 编程工作流:从入门到实战

如果你只用 Claude Code 来写代码,那你可能只发挥了它 30% 的能力。

真正让 Claude Code 从"聪明的代码补全工具"进化为"全栈开发伙伴"的,是 MCP(Model Context Protocol)——一套让 AI 连接外部工具、数据库和 API 的开放协议。配合 MCP,Claude Code 可以读取你的 Jira 工单、查询数据库、操作 GitHub PR、甚至监控线上日志。

这篇文章带你从零开始,搭建一套真正实用的 AI 编程工作流。


Claude Code + MCP:为什么这对组合值得关注?

Claude Code 本身已经足够强大——它能理解整个代码库、跨文件修改代码、在终端里执行命令。但它的"世界"仅限于你的项目文件夹。

Claude Code 生命周期钩子与 MCP 集成示意

MCP 协议的出现打破了这堵墙。通过 MCP Server,Claude Code 获得了对整个开发工具链的访问能力:

  • 项目管理系统:Jira、Linear、Notion
  • 代码托管平台:GitHub、GitLab
  • 数据库:PostgreSQL、SQLite、MongoDB
  • 监控工具:Sentry、Datadog
  • 设计工具:Figma
  • 通信工具:Slack、Telegram、Discord

你不再需要手动复制粘贴工单描述到聊天窗口,也不需要把数据库查询结果截图发给 AI。Claude Code 可以直接读取和操作这些系统。


第一步:安装 Claude Code

如果你还没有安装 Claude Code,这里有几种方式:

macOS / Linux / WSL(推荐一键安装):

curl -fsSL https://claude.ai/install.sh | bash

Homebrew(macOS):

brew install --cask claude-code

Windows PowerShell:

irm https://claude.ai/install.ps1 | iex

安装完成后,在任意项目目录下运行:

cd your-project
claude

首次运行会提示你登录。支持 Claude Pro/Max/Team 订阅,也支持 Anthropic Console API 账户,以及 Amazon Bedrock、Google Vertex AI 等第三方提供商。

登录后凭证会保存在本地,后续无需重复登录。

更多安装细节参考:Claude Code 官方文档


第二步:理解 MCP 的三种连接方式

Claude Code 支持三种 MCP Server 传输协议,每种适用于不同场景:

1. 远程 HTTP Server(推荐)

适合连接云端服务,是目前最广泛支持的传输方式。

# 连接 Notion MCP
claude mcp add --transport http notion https://mcp.notion.com/mcp

# 带认证的 API 连接
claude mcp add --transport http secure-api https://api.example.com/mcp \
  --header "Authorization: Bearer your-token"

.mcp.json 配置文件中,type 字段也接受 streamable-http 作为 http 的别名,这样从其他 MCP 文档复制的配置可以直接使用。

2. 远程 SSE Server

# 连接 Asana(注意:SSE 传输已被弃用,建议优先使用 HTTP)
claude mcp add --transport sse asana https://mcp.asana.com/sse

3. 本地 stdio Server

适合需要直接访问本地系统资源的场景。Claude Code 会自动将 CLAUDE_PROJECT_DIR 环境变量传递给子进程,方便 Server 解析项目相对路径。

# 连接 Airtable MCP Server
claude mcp add --transport stdio --env AIRTABLE_API_KEY=YOUR_KEY airtable \
  -- npx -y airtable-mcp-server

⚠️ 选项顺序很重要:所有选项(--transport--env--scope--header)必须放在 Server 名称之前。--(双横线)之后才是传递给 MCP Server 的命令和参数。


第三步:实战——搭建你的开发工作流

下面是一个完整的实战场景:用 Claude Code + MCP 实现从工单到 PR 的自动化流程。

场景描述

你正在维护一个 Web 项目。产品经理在 Linear 上创建了一个新需求,你需要:

  1. 读取需求描述
  2. 在代码库中实现功能
  3. 运行测试
  4. 提交代码并创建 GitHub PR
  5. 在 Slack 通知团队

配置 MCP Server

首先连接 GitHub 和 Linear:

# 连接 GitHub(使用个人 Token)
claude mcp add --transport stdio \
  --env GITHUB_PERSONAL_ACCESS_TOKEN=ghp_xxxx \
  github -- npx -y @anthropic/mcp-server-github

# 连接 Linear
claude mcp add --transport http linear https://mcp.linear.app/mcp \
  --header "Authorization: Bearer lin_api_xxxx"

连接后可以通过以下命令确认状态:

claude mcp list

在 Claude Code 会话中运行 /mcp 可以查看每个 Server 的工具数量和连接状态。

实际使用

现在你可以用自然语言完成整个流程:

读取 Linear 工单 WEB-123 的需求,实现这个功能,
在 GitHub 上创建 feature/web-123 分支,
写完后跑测试,通过的话提交 PR 并通知团队。

Claude Code 会:

  1. 通过 Linear MCP Server 读取工单详情
  2. 创建 Git 分支
  3. 理解需求并编写代码
  4. 运行 npm test 等测试命令
  5. 通过 GitHub MCP Server 创建 Pull Request
  6. 通过 Slack MCP Server 发送通知

数据库查询工作流

如果你还需要查询数据库来辅助开发:

# 连接 PostgreSQL
claude mcp add --transport stdio \
  --env PG_CONNECTION_STRING=postgresql://user:pass@host:5432/db \
  postgres -- npx -y @modelcontextprotocol/server-postgres

然后你可以这样问 Claude Code:

查一下最近一周使用 /api/search 接口的用户数据,
分析一下性能瓶颈,然后帮我优化相关代码。

第四步:进阶技巧

动态工具更新

Claude Code 支持 MCP list_changed 通知,MCP Server 可以动态更新可用工具列表,而无需重启会话。这意味着你可以:

  • 在会话中临时启用/禁用某些工具
  • 根据项目上下文切换工具集
  • 实现条件性工具暴露

用 Claude 自动生成 MCP Server

如果现有的 MCP Server 不能满足需求,Claude Code 本身就能帮你搭建:

# 在 Claude Code 会话中安装官方插件
/plugin install mcp-server-dev@claude-plugins-official

# 重新加载插件
/reload-plugins

# 运行构建工具
/mcp-server-dev:build-mcp-server

Claude 会询问你的使用场景,然后自动生成一个远程 HTTP 或本地 stdio Server 的脚手架代码。

项目级 MCP 配置

MCP 配置可以限定在特定项目。在项目根目录创建 .mcp.json,里面的配置仅在当前项目生效:

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@anthropic/mcp-server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxx"
      }
    }
  }
}

这样不同项目可以有完全不同的 MCP Server 集合,互不干扰。


安全提醒

连接 MCP Server 时务必注意以下安全问题:

  • 仅连接你信任的 Server:获取外部内容的 Server 可能带来 Prompt 注入风险
  • 最小权限原则:给 MCP Server 的 API Token 只授予必要的权限
  • 定期检查已连接的 Server:用 claude mcp list 审查配置,移除不再使用的 Server
  • 敏感数据隔离:数据库连接串等敏感信息建议用环境变量管理,不要硬编码

总结

Claude Code + MCP 的组合,本质上是在解决一个核心问题:如何让 AI 编程助手从"能写代码"变成"能干活"

当 Claude Code 可以直接读取工单、查询数据库、操作 Git、发送通知时,它就不再是一个被动的问答工具,而是一个能独立执行完整开发流程的智能代理。

这套工作流的门槛并不高——安装 Claude Code、连接几个 MCP Server、用自然语言描述需求,剩下的交给 AI。如果你还在手动复制粘贴工单内容、手动查数据库、手动创建 PR,真的值得试试这个方案。


推荐阅读: