返回 FEED
AGENT2026-05-15

Claude Code MCP 全栈实战:从零到完整集成

大多数 Claude Code 用户在隔离中构建。他们写 prompt,Claude 生成代码,复制到编辑器,运行,带回错误,粘贴错误,Claude 修复。每一步都需要人类在中间搬运信息。

MCP servers 消除中间人。

当 Claude Code 通过 MCP 连接到你的全栈时,它不会等你粘贴错误——直接从终端读取。不会等你描述数据库 schema——自己查询。不会建议你复制 Git commit message——直接提交。

连接完整 MCP 栈的 Claude Code 不是代码助手,是直接在你环境中操作的全栈工程伙伴

MCP 是什么

MCP = Model Context Protocol,Anthropic 开发的开放标准,定义 AI 模型如何连接外部工具和数据源。

对 Claude Code 来说,MCP 是代码生成能力和实际运行系统之间的桥梁。

无 MCP 的三大局限

上下文盲区。 Claude 只能推理你展示给它的代码。代码库有数千文件,数据库有几十张表,基础设施有几十个服务——Claude 对它们一无所知,除非你手动提供。

行动断连。 Claude 能告诉你运行什么命令,但不能运行。能建议数据库迁移,但不能执行。每个建议都需要你手动翻译成行动。

session 失忆。 每个 Claude Code session 从零开始。项目上下文、约定、当前 sprint——全部需要手动重建。

MCP 同时解决这三个问题。

五层 MCP 集成方案

第一层:代码层(Filesystem + Git)

Claude 读取实际代码库、直接写文件、管理版本控制。

Filesystem 配置:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/project"]
    }
  }
}

Git 配置:

"git": {
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-git"],
  "env": { "GIT_REPO_PATH": "/path/to/project" }
}

验证:让 Claude 描述项目结构、读取最近 10 个 commit、基于 commit message 和 diff 判断上周最重要的变更。

第二层:数据层(Database MCP)

没有 database MCP 时,Claude 每次写数据库代码都在做假设。这些假设经常错误——代码需要调试不是因为逻辑 flawed,而是因为不知道实际数据模型。

有了 database MCP,Claude 在写一行数据库代码前先读取真实 schema。知道精确的表名、列名、类型和关系。产出的代码第一次就能工作的概率显著提高。

PostgreSQL 配置:

"postgres": {
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://user:password@localhost:5432/dbname"]
}

Supabase 配置:

"supabase": {
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-supabase"],
  "env": {
    "SUPABASE_URL": "your-url",
    "SUPABASE_SERVICE_KEY": "your-key"
  }
}

数据库上下文 Prompt(每次数据库工作前运行):

读取我的数据库完整 schema,包括:所有表名和列及类型、所有外键关系、所有索引、任何视图或函数。基于发现的内容描述数据模型,识别当前 schema 的潜在问题。

写迁移的完整工作流:

我需要添加新功能:[功能描述]。基于你已读取的当前 schema:1. 识别需要创建或修改的表 2. 写包含 proper up/down 方法的迁移文件 3. 识别可能受影响的现有查询 4. 写适配新 schema 的更新查询 5. 运行迁移并验证应用正确。全部直接做。

第三层:运行时层(Terminal MCP)

这是让 Claude Code 真正自主的连接。

没有终端访问时,每次 Claude 写代码你都要手动运行、复制输出或错误、粘贴回去、等 Claude 响应。涉及多次测试运行和迭代的开发工作流,这个循环耗费巨量时间。

有了 terminal MCP,Claude 自己运行代码。读取输出。如果有错误直接读取并修复,无需你在循环中。运行测试并读取结果。启动开发服务器并 hit 端点验证行为。

Terminal 配置(权限配置至关重要):

"terminal": {
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-terminal"],
  "env": {
    "ALLOWED_COMMANDS": "npm,node,git,python,pip,curl,ls,cat,grep,find",
    "WORKING_DIRECTORY": "/path/to/project",
    "TIMEOUT_SECONDS": "30"
  }
}

ALLOWED_COMMANDS 列表是关键。只包含开发需要的命令。不要包含能修改系统配置或访问敏感区域的命令。

TDD 完整循环:

实现以下功能:[功能描述]。严格按此流程:1. 读取相关文件的现有代码 2. 先基于功能需求写测试 3. 运行测试确认失败(红)4. 写实现 5. 再次运行测试确认通过(绿)6. 如需重构 7. 运行完整测试套件确认没破坏任何东西 8. 用描述性 message 提交。自主执行每一步,读写之间不要等我的输入。

Bug 修复循环:

有个 bug:[描述 bug 或粘贴错误]。修复它:1. 读取相关源文件 2. 运行产生错误的代码并观察输出 3. 从实际错误输出中识别根本原因 4. 修复代码 5. 再次运行代码验证修复 6. 运行完整测试套件确保没破坏其他东西 7. 提交修复。不要问我额外信息。直接读取需要的内容并修复。

这个 prompt 价值几十小时的来回调试 session。

第四层:基础设施层(Cloud + Deployment)

AWS 配置:

"aws": {
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-aws"],
  "env": {
    "AWS_ACCESS_KEY_ID": "your-key-id",
    "AWS_SECRET_ACCESS_KEY": "your-secret",
    "AWS_REGION": "your-region"
  }
}

Vercel 配置:

"vercel": {
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-vercel"],
  "env": { "VERCEL_TOKEN": "your-token" }
}

完整部署工作流:

将最新变更部署到生产环境。流程:1. 读取当前 git status 和 pending changes 2. 运行完整测试套件——有任何测试失败则中止 3. 构建生产 bundle 并验证完成 4. 检查当前生产部署状态 5. 先部署到 staging 环境 6. 对 staging 运行 smoke tests 7. 如果 staging 通过,部署到生产 8. 验证生产部署健康 9. 在 [跟踪系统] 中创建部署记录。任何失败步骤都不要继续。报告发生了什么,如果出错就停止。

第五层:协作层(GitHub + 项目管理)

GitHub MCP 配置:

"github": {
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-github"],
  "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "your-token" }
}

Linear MCP 配置:

"linear": {
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-linear"],
  "env": { "LINEAR_API_KEY": "your-key" }
}

功能开发完整工作流:

我开始处理 Linear issue [ISSUE ID]。完整工作流:1. 读取 Linear issue 获取完整需求和验收标准 2. 读取 Linear 中任何相关 issue 或链接资源 3. 检查是否已有该 issue 的分支 4. 如需则创建新分支:feature/[issue-id]-[description] 5. 读取相关现有代码理解上下文 6. 按验收标准实现功能 7. 写覆盖所有验收标准的测试 8. 运行完整测试套件 9. 如果全部通过:创建 PR,包含——关联 Linear issue 的标题、构建内容摘要、验收标准清单、给 reviewer 的备注 10. 更新 Linear issue 状态为 In Review。全程不要停下来等输入。

CLAUDE.md:master context document

五层全连接后,CLAUDE.md 成为让 Claude Code 像一个已入职数月的高级工程师的 master context document。

核心结构:

  • Project Overview:名称、技术栈、架构、部署位置
  • Connected Systems:Filesystem/Git/Database/Terminal/GitHub/Linear/Cloud 的连接详情
  • Development Standards:语言约定、文件命名、测试框架、覆盖率要求、commit message 格式
  • Architecture Decisions:关键架构决策及原因(Claude 不应未经讨论就推翻)
  • Current Sprint Context(每周更新):sprint 目标、当前 focus、活跃 Linear issues
  • Code Quality Rules:不直接 commit 到 main、所有 PR 需通过测试才能请求 review、数据库迁移必须有 up/down 方法等
  • Deployment Rules:不通过 staging 测试不能部署生产、生产部署后必须创建部署记录、回滚流程
  • Emergency Rules:遇到特定危险情况时该做什么、永远不要做什么

六周渐进式接入计划

Week 1:Filesystem + Git 安装两个 server。用 Claude Code 做代码审查、重构、文档。习惯 Claude 读取实际代码库后再加更多 server。

目标工作流:让 Claude 审查项目中任何文件并建议改进。让它实现一个改进,手动测试,提交。

Week 2:Database 添加 database MCP。每次数据库相关 session 开始时让 Claude 读取 schema。让它写一个你本来会手动写的迁移。

目标工作流:完整迁移周期。Claude 读取 schema、写迁移、应用、写使用新 schema 的应用代码、运行现有测试。

Week 3:Terminal 最大的能力跃迁。从受限的 allowed commands 列表开始。只有在对 Claude 的执行判断建立信任后才扩展。

目标工作流:一个小功能的完整 TDD 周期。Claude 写测试、运行、实现、再运行、提交。

Week 4:GitHub + Linear 添加协作层。开始用于 PR 创建和 issue 管理。

目标工作流:选一个 Linear issue,让 Claude 读取并实现——从 ticket 到 PR,无需你描述需求。

Week 5:Infrastructure 先以只读访问添加 cloud MCP。对 Claude 读取什么、如何行为感到舒适后,再扩展到部署的写访问。

目标工作流:非关键功能的完整部署管道。staging 到生产,所有 gate。

Week 6:Integration + Optimization 运行结合所有五层的复杂多系统工作流。识别剩余手动步骤并建立连接消除它们。

核心变化

当五层全连接、CLAUDE.md 配置正确时,开发体验在根本层面改变:

  • 功能从需求到部署更快。 不是因为 Claude 生成代码比你打字快,而是因为拖慢开发的反馈循环——手动运行测试、手动检查数据库、手动管理 PR——都在同一个 Claude session 内发生,不打破 flow。

  • Bug 修复周期大幅压缩。 Claude 从运行系统读取实际错误,而非复制粘贴的错误消息。在上下文中读取相关代码。修复实际问题,而非描述的问题。

  • 文档自动保持最新。 Claude 创建的每个 PR 都包含准确文档,因为它读取了要记录的代码,而非总结你告诉它的内容。

  • 跨 session 上下文质量提升。 Claude 在每个 session 开始时读取 CLAUDE.md。架构决策、约定、当前 sprint 上下文在每个建议前就位,无需你问第一个问题。

构建这套设置的工程师不是在做更多工作。他们是在每一层用更少的摩擦做更好的工作。

终端不再是 Claude 和你的栈之间的边界。

栈就是 Claude 的环境。