使用 Claude Code `/prp-mcp-execute` 命令:从 PRP 到生产级 MCP 服务器的可执行工作流
文档教程提示工程人工智能【免费下载链接】context-engineering-introContext engineering is the new vibe coding - its the way to actually make AI coding assistants work. Claude Code is the best for this so thats what this repo is centered around, but you can apply this strategy with any AI coding assistant!项目地址https://gitcode.com/gh_mirrors/co/context-engineering-intro点击查看免费下载导读/prp-mcp-execute是use-cases/mcp-server中为 Claude Code 定制的 slash 命令它把「产品需求提示词PRP」翻译成一条可执行的实施流水线加载需求 → 研究既有模式 → 按顺序实现 → 通过验证门禁最终交付带有 GitHub OAuth 认证、PostgreSQL 数据库集成和 Cloudflare Workers 部署能力的生产级 MCP 服务器。读完本文你将掌握该命令的三阶段执行流程、它背后的源码级实现模式以及如何把它与/prp-mcp-create组合成「先出方案、再验证执行」的完整闭环。一、命令是什么一条把 PRP 变成代码的执行器在 use-cases/mcp-server/.claude/commands/prp-mcp-execute.md 中该命令以 YAML frontmatter 声明了自身的元信息--- name: prp-mcp-execute description: This command is designed to create a comprehensive Model Context Protocol (MCP) servers following the specific Product Requirement Prompt (PRP) passed as an argument, referencing this codebase patterns mirroring tool setups for the users specific requirements. Usage: /prp-mcp-execute path/to/prp.md ---关键信息解读名称与用法/prp-mcp-execute path/to/prp.md唯一的参数是 PRP 文件的路径。命令会读取该 PRP 中描述的具体 MCP 服务器需求并据此实施。定位它不是从零生成方案的命令那是/prp-mcp-create的职责而是把已有方案执行出来的命令——按 README 的流程说明典型用法是在PRPs/INITIAL.md描述需求、用/prp-mcp-create INITIAL.md生成PRPs/your-server-name.md之后再执行/prp-mcp-execute PRPs/your-server-name.md。模式对齐命令明确要求referencing this codebase patterns即执行时以本仓库已验证的 MCP 服务器实现为蓝本而不是凭模型记忆自由发挥。仓库中 PRPs/templates/prp_mcp_base.md 的All Needed Context部分用docfile:/file:显式列出了执行时必须阅读的文档与源码清单这正是该命令引用本代码库模式的具体载体。这条命令的设计目标按命令文档 Purpose以本代码库中被验证过的模式为准绳带全面校验、测试与部署验证来执行 MCP 服务器 PRP。二、执行流程三个阶段把 PRP 落地成可运行的服务器命令文档将执行过程分为三个阶段。结合仓库源码每个阶段都有对应的具体动作与证据阶段 1加载与分析 PRP完整读取指定的 PRP 文件理解所有上下文、需求与校验标准使用 TodoWrite 工具创建全面的任务清单识别所有依赖与集成点这个阶段对应模板中的List of Tasks (Complete in order)结构——prp_mcp_base.md 将实施拆成了 Task 1Task 7项目设置、GitHub OAuth App、MCP 服务器实现、数据库集成、环境配置、本地测试、生产部署每项都写成 YAML 清单天然适合用 TodoWrite 逐项跟踪。依赖与集成点在模板的 Integration Points 一节被显式建模为五个维度CLOUDFLARE_WORKERS、GITHUB_OAUTH、DATABASE、ENVIRONMENT_VARIABLES、KV_STORAGE。阶段 2上下文收集与研究使用 Task agents 研究既有 MCP 服务器模式研究认证流程与数据库集成模式研究 Cloudflare Workers 部署与环境搭建收集所有必要的文档与代码示例仓库为此阶段提供了现成的研究物料MCP 模式文档use-cases/mcp-server/PRPs/ai_docs/mcp_patterns.md 汇总了服务器基类、工具注册、数据库集成、OAuth、错误处理、资源注册、测试与安全共 9 类核心模式API 用法文档use-cases/mcp-server/PRPs/ai_docs/claude_api_usage.md 说明如何调用 Anthropic API权威实现文件模板的All Needed Context明确要求阅读 src/index.ts、src/auth/github-handler.ts、src/database/security.ts、src/tools/register-tools.ts、examples/database-tools.ts 与 wrangler.jsoncMIRROR this pattern / USE this exact pattern / COPY this pattern等标注明确了每个文件在研究阶段应扮演的角色。阶段 3实施阶段按正确顺序执行所有实施任务遵循既有代码库的 TypeScript 模式实现 MCP 工具、资源与认证流程加入全面的错误处理与日志阶段 3 是前两个阶段的产出物其质量直接取决于阶段 1 中任务清单的粒度与阶段 2 中研究是否完整。这与 READMEuse-cases/mcp-server/README.md#L96所强调的execution is only as good as your PRP一致——执行命令的价值在于严格、有序、不跳步。三、命令执行时照搬的源码模式实施阶段的蓝本以下模式均能在仓库源码中找到真实实现命令执行时正是以它们为参照系。3.1 服务器基类McpAgent 生命周期钩子src/index.ts 给出了最核心的骨架export class MyMCP extends McpAgentEnv, Recordstring, never, Props { server new McpServer({ name: PostgreSQL Database MCP Server, version: 1.0.0, }); async cleanup(): Promisevoid { try { await closeDb(); console.log(Database connections closed successfully); } catch (error) { console.error(Error during database cleanup:, error); } } async alarm(): Promisevoid { await this.cleanup(); } async init() { // Register all tools based on user permissions registerAllTools(this.server, this.env, this.props); } }三个生命周期方法各有职责init()服务器初始化时执行是工具注册的入口。实际调用链为init() → registerAllTools(server, env, props)见 src/index.ts。cleanup()Durable Object 关闭时释放资源关闭数据库连接池。模板在 Known Gotchas 中将它列为CRITICAL并强调ALWAYS implement cleanup for Durable Objects。alarm()Durable Objects 的 alarm 处理器定期触发清理防止连接泄漏。3.2 OAuth 导出OAuthProvider与端点绑定src/index.ts 默认导出的是一个OAuthProvider实例而非普通 Worker handlerexport default new OAuthProvider({ apiHandlers: { /sse: MyMCP.serveSSE(/sse) as any, /mcp: MyMCP.serve(/mcp) as any, }, authorizeEndpoint: /authorize, clientRegistrationEndpoint: /register, defaultHandler: GitHubHandler as any, tokenEndpoint: /token, });这段配置同时决定了四个端点/mcpHTTP 流式传输供 Claude Desktop 等客户端经mcp-remote连接、/sseSSE 传输、/authorize与/tokenOAuth 授权与令牌交换。该模式在模板的 Per Task Implementation Details 中被标注为 PATTERN: Export OAuth provider with MCP endpoints新服务器应原样复用。3.3 模块化工具注册registerAllTools中央注册表工具采用每个功能一个文件 中央注册表的组织方式。src/tools/register-tools.ts 是中央注册表export function registerAllTools(server: McpServer, env: Env, props: Props) { // Register database tools registerDatabaseTools(server, env, props); // Future tools can be registered here // registerOtherTools(server, env, props); }而 examples/database-tools.ts 展示了具体工具模块的编写范式导出接收(server, env, props)的注册函数、用 Zod schema 声明入参、用withDatabase管理连接、用createErrorResponse/formatDatabaseError处理错误。该文件实现了三个权限分级的工具工具权限能力listTables所有已认证用户列出数据库全部表及列信息schema 发现queryDatabase所有已认证用户只读 SQL 查询拒绝写操作executeDatabase白名单用户ALLOWED_USERNAMES任意 SQL含 INSERT/UPDATE/DELETE/DDL其中queryDatabase的只读强制通过validateSqlQueryisWriteOperation双重检查实现examples/database-tools.tsexecuteDatabase则通过注册时判断ALLOWED_USERNAMES.has(props.login)实现按用户暴露工具同文件 L120与模板的 Conditional Tool Registration 模式一一对应。3.4 认证流程GitHub OAuth 的完整端点src/auth/github-handler.ts 用 Hono 实现了完整的 GitHub OAuth 2.0 流程GET /authorizeL15-L37解析 OAuth 请求检查客户端是否已通过 HMAC 签名 cookie 获得批准已批准则直接302跳转 GitHub否则渲染批准对话框。POST /authorizeL39-L47处理表单提交校验签名并生成跳过下次确认的 cookie。GET /callbackL78-L117用临时 code 换取 access tokenfetchUpstreamAuthToken再用Octokit拉取用户信息最后通过OAUTH_PROVIDER.completeAuthorization把{ login, name, email, accessToken }写进 props 下发给 MCP 客户端——这组 props 正是McpAgent中this.props的来源也是工具做权限判断的数据基础。模板将这套流程概括为 Integration Points 中的三点要求回调地址必须与 Workers 域名完全一致https://your-worker.workers.dev/callback、客户端凭据必须以 Cloudflare secrets 存储、OAuth App 需在 GitHub 侧创建。四、验证门禁执行命令自带的四级校验命令文档 Notes 声明自身optimized for Claude Codes validation loops这与模板中的 Validation Gate 相对应——执行命令在实施完成后会依次跑四道关卡Level 1TypeScript 与配置npm run type-check # TypeScript 编译检查tsc --noEmit wrangler types # 生成 Cloudflare Workers 类型Level 2本地开发测试wrangler dev # 本地起服务默认端口 8792 curl -v http://localhost:8792/authorize # 应重定向到 GitHub curl -v http://localhost:8792/mcp # 应返回服务器信息Level 3单元测试Vitestnpm run testLevel 4数据库集成测试curl -X POST http://localhost:8792/mcp \ -H Content-Type: application/json \ -d {method: tools/call, params: {name: listTables, arguments: {}}}外加对权限校验、SQL 注入防护、数据库故障处理等安全场景的专项测试。这些命令与 package.json 中定义的type-check、test、dev、deploy脚本完全对应。四级验证的目的按模板 Final Validation Checklistprp_mcp_base.md是确保 TypeScript 编译通过、单元测试通过、本地服务器可启动、/mcp端点有响应、OAuth 全流程跑通——每级关卡捕获不同类别的问题命令执行时不应跳过任何一级。五、命令执行过程中的关键注意点5.1 正确使用命令先有 PRP再谈执行命令的输入是已经写好的 PRP 文件。推荐的完整工作流见 README 的 Step 2Step 4在PRPs/INITIAL.md中描述服务器需求功能、附加特性、其他考量运行/prp-mcp-create INITIAL.md生成完整 PRP人工审查 PRP——README 明确提醒 You are meant to be a part of the process to ensure the quality of all context! An execution is only as good as your PRPREADME.md#L96运行/prp-mcp-execute PRPs/your-server-name.md执行。5.2 环境变量与部署前提执行命令生成的服务器依赖以下环境配置模板 Task 1/Task 5prp_mcp_base.md开发环境.dev.varsGITHUB_CLIENT_ID、GITHUB_CLIENT_SECRET、DATABASE_URL、COOKIE_ENCRYPTION_KEY32 字节密钥KV 命名空间wrangler kv namespace create OAUTH_KV把返回的 ID 写入 wrangler.jsonc 的kv_namespaces绑定生产 secretswrangler secret put GITHUB_CLIENT_ID以及GITHUB_CLIENT_SECRET、DATABASE_URL、COOKIE_ENCRYPTION_KEY部署wrangler deploy。5.3 反模式清单命令执行时应主动规避模板末尾的 Anti-Patterns to Avoid 为执行命令提供了红线MCP 层面不要跳过 Zod 入参校验不要忘记实现cleanup()不要把权限写死在单个工具里要用可配置的权限系统流程层面不要跳过验证门禁每级捕获不同问题不要靠猜配置 OAuth要跑完整流程不要在没有监控日志的情况下部署不要在部署前忽略 TypeScript 错误。六、与其他组件的协作关系/prp-mcp-execute并非孤立存在它与use-cases/mcp-server中的其他组件构成完整的上下文工程体系/prp-mcp-create上游生成器负责产出被执行的 PRPREADME.md#L147-L150PRPs/templates/prp_mcp_base.mdPRP 模板定义了执行阶段必须覆盖的结构目标、上下文、任务清单、验证门禁、反模式PRPs/ai_docs/mcp_patterns.md执行时的模式速查手册任何照搬模式的需求都在这里能找到答案CLAUDE.md实现规范KISS/YAGNI/开闭原则、TypeScript 强制 Zod 校验、工具响应格式命令实施阶段须遵守CLI 环境命令依赖 Wrangler CLIwrangler dev/deploy/types/secret put与 npm scripts二者是验证门禁得以执行的前提。结语/prp-mcp-execute把读 PRP → 研究模式 → 实施 → 验证固化成了可重复的命令是上下文工程中验证循环validation loops思想的直接体现通过让 AI 严格照搬仓库中已被证明的模式src/index.ts、examples/database-tools.ts、src/auth/github-handler.ts再经过四级验证门禁将AI 写代码的不确定性收敛为照着已验证模式实施 逐层校验的高确定性流程。对任何想基于 use-cases/mcp-server 快速构建带认证、数据库与云部署的 MCP 服务器的开发者来说这套先 create 出高质量 PRP、再 execute 严格落地的组合拳正是仓库所倡导的 PRP 工作流的完整闭环。赞分享文档教程提示工程人工智能【免费下载链接】context-engineering-introContext engineering is the new vibe coding - its the way to actually make AI coding assistants work. Claude Code is the best for this so thats what this repo is centered around, but you can apply this strategy with any AI coding assistant!项目地址https://gitcode.com/gh_mirrors/co/context-engineering-intro点击查看免费下载相关推荐Execute BASE PRPExecute BASE PRP Implement a feature using using the PRP file. PRP File: $ARGUME文档教程提示工程人工智能context-engineering-intro 模板生成器用 /execute-template-prp 执行模板生成 PRP产出领域化上下文工程模板包context engineering intro 模板生成器用 /execute template prp 执行模板生成 PRP产出领域化上下文工程模板包文档教程提示工程人工智能Claude Code 自定义命令 /generate-prp用上下文工程驱动 AI 一次成型实现功能的 PRP 生成工作流Claude Code 自定义命令 /generate prp用上下文工程驱动 AI 一次成型实现功能的 PRP 生成工作流 导读 本文围绕开源仓库 cont文档教程提示工程人工智能创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考