mcp-prompt-server
将精心设计的Prompt模板封装为MCP工具,让Cursor/Windsurf/Cline直接调用专
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
将精心设计的Prompt模板封装为MCP工具,让Cursor/Windsurf/Cline直接调用专
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
在使用 Cursor、Windsurf 或 Cline 这类 AI 代码编辑器时,你是否遇到过这样的尴尬场景:AI 助手给出了一段看似正确但完全不符合团队编码规范的代码?你希望它能自动生成 API 文档,结果它只是泛泛而谈?你让 AI 审查代码,它却像刚毕业的学生一样只能发现语法错误,却对业务逻辑漏洞视而不见?
问题的根源不在于 AI 模型本身不够强大,而在于 AI 和你的具体项目上下文之间,缺少一个有效的"翻译层"。MCP(Model Context Protocol)正是为此而生——它让 AI 工具能够调用外部工具和数据源,从而真正理解你要解决的问题。而 MCP Prompt Server 则更进一步:它把精心设计的 Prompt 模板封装成标准化的 MCP 工具,让 AI 在执行代码审查、API 文档生成、重构等任务时,始终遵循经过验证的最佳实践。
简单来说,这就像给 AI 代码编辑器配备了一个"专业助手的工具箱"。每个工具背后都是一套经过打磨的 Prompt 策略,AI 无需每次重新学习"怎么做代码审查",只需调用现成的工具即可。
Model Context Protocol(MCP)是由 Anthropic 主导推出的开放协议,旨在标准化 AI 模型与外部数据源、工具之间的通信方式。类似于 USB-C 接口统一了设备连接标准,MCP 统一了 AI 与各类工具的交互方式。它的核心设计哲学是:将 AI 能力的扩展从"修改模型本身"转变为"配置工具生态"——开发者可以像搭积木一样,通过组合不同的 MCP 服务器来扩展 AI 的能力边界。
在 MCP 生态中,有处理文件系统的服务器、有操作数据库的服务器、有搜索网络的服务器——而 MCP Prompt Server 填补了一个独特的空白:它将 Prompt 工程本身变成了一种可复用的工具。
传统的 Prompt 优化流程通常是:开发者反复在聊天框中调校 Prompt,直到效果满意,然后复制粘贴到实际工作流中。这种方式的痛点显而易见——Prompt 无法版本控制、无法标准化、不同工具间无法复用。而 MCP Prompt Server 通过将 Prompt 模板存储为 YAML 文件,并将其注册为 MCP 工具,彻底解决了这一问题。你可以像管理代码一样管理 Prompt:提交 Pull Request 审查变更、在团队中共享复用、CI/CD 自动化测试 Prompt 效果。
MCP Prompt Server 预置了八套经过设计的 Prompt 工具,覆盖了软件开发中最常见的 AI 辅助场景。
代码审查(code_review) 是使用频率最高的工具之一。它不是简单地说"检查代码",而是引导 AI 从六个维度进行全面审查:代码质量与可读性、潜在 bug 和错误、性能优化机会、安全隐患、最佳实践建议、代码结构和组织。开发者只需传入编程语言和待审查的代码片段,即可获得结构化的专业反馈。
API 文档生成(api_documentation) 针对这一痛点场景而设计:AI 常常生成的 API 文档要么过于简略,要么格式混乱。该工具内置了文档结构的最佳实践,生成结果包含端点说明、参数定义、返回值格式、错误码说明等完整内容,并支持 Markdown 格式导出。
代码重构(code_refactoring) 则在保留功能的前提下,引导 AI 关注代码的可维护性和性能优化,提供具体的重构步骤和风险提示。
测试用例生成(test_case_generator) 不仅能生成基本的单元测试,还能根据代码逻辑推导边界条件和异常场景,生成覆盖率达到生产级别的测试套件。
项目架构分析(project_architecture) 可以读取整个项目结构,输出分层清晰的架构说明文档,帮助新加入的团队成员快速理解系统设计。
MCP 服务器构建(build_mcp_server) 是一个元工具——它能帮你生成一个完整的 MCP 服务器模板,包含标准化的工具注册、参数校验和传输层配置。
Prompt 模板生成器(prompt_template_generator) 则是一个针对 Prompt 工程师的工具,可以根据任务描述自动生成符合 MCP Prompt Server 格式的 YAML 模板文件。
写作助手(writing_assistant) 超越了纯代码场景,支持将草稿内容适配到公众号、小红书、Twitter 等不同平台,涵盖排版风格、语言调性和内容结构的一站式调整。
这八套工具还有一个共同特性:支持动态参数替换。每个 Prompt 模板都可以定义输入参数(如编程语言、代码片段、目标平台等),使用时 AI 会自动将参数注入到 Prompt 的 {{变量}} 占位符中,实现模板的复用和定制。
从代码层面看,MCP Prompt Server 的架构极为精简,全部核心代码只有约 270 行 JavaScript(不含依赖)。
传输层采用标准输入/输出(stdio)模式,这是 MCP 协议推荐的本地进程通信方式。相比 HTTP 传输,stdio 避免了网络开销和端口管理的复杂性,特别适合桌面 IDE 场景。服务器通过 StdioServerTransport 连接 MCP 客户端,所有通信通过 JSON-RPC 格式的标准输入/输出流完成。
工具注册层基于 @modelcontextprotocol/sdk 提供的 McpServer 类实现。每个 Prompt 模板都会被动态解析:读取 YAML 文件 → 提取 name、description、arguments、messages 字段 → 通过 Zod 库构建参数校验 schema → 调用 server.tool() 注册为 MCP 工具。这种完全动态的注册机制意味着,添加新工具只需在 src/prompts/ 目录下新建一个 YAML 文件,无需修改任何代码。
参数替换引擎使用正则表达式 new RegExp(\{{${key}}}`, 'g')` 实现占位符替换,配合 Zod 的字符串类型校验确保输入安全。
依赖栈也控制得非常克制:核心依赖仅 5 个包,其中 @modelcontextprotocol/sdk 是 MCP 官方 SDK,yaml 负责解析模板文件,zod 提供运行时参数校验,fs-extra 和 express(express 在纯 stdio 场景下并未被直接使用,可能是为未来 HTTP API 预留)提供文件系统增强能力。
整体来看,这是一个典型的"少即是多"(Less is More)设计——用一个极小的代码基底撬动了一个灵活可扩展的 Prompt 工具生态。
由于采用了 stdio 传输模式,MCP Prompt Server 的部署过程实际上是"配置"而非"运行"。以 Cursor 为例,接入步骤如下:
第一步,克隆仓库并在本地执行 npm install 安装依赖。第二步,找到 Cursor 的 MCP 配置文件(通常位于 ~/.cursor/mcp.json)。第三步,在配置文件的 mcpServers 节点下添加新服务器条目,指定 node 命令和服务器入口脚本路径。第四步,保存配置并重启 Cursor。第五步,在 Cursor 的工具面板中即可看到所有已注册的 Prompt 工具,调用方式与调用普通 MCP 工具完全一致。
对于 Windsurf 用户,配置路径为 ~/.codeium/windsurf/mcp_config.json,操作步骤相同。项目还提供了 mcp_config_example.json 作为配置模板参考。
值得注意的是,服务器还内置了两个管理工具:reload_prompts 可以在不重启 IDE 的情况下重新加载新增或修改过的 Prompt 模板,get_prompt_names 则列出所有当前可用的工具名称——这极大方便了开发过程中的快速迭代。
必须指出的是,MCP Prompt Server 存在几个不可回避的局限性。
维护状态堪忧:作者已在 README 中明确表示,项目将不再进行功能升级和维护,建议用户迁移到商业平台 mypromptmcp.com。这意味着如果 MCP 协议规范发生变化导致 SDK 不兼容,修复工作需要社区自行承担。已有 PulseMCP 等第三方平台在帮忙维护 server.json 配置文件,但核心代码的维护空白是客观存在的风险。
缺乏版本控制与测试:Prompt 模板以 YAML 文件形式存储,目前没有任何版本控制或自动化测试机制。在团队协作场景下,修改 Prompt 模板的质量完全依赖人工 review,缺乏像代码那样的 CI 保护。
安全边界模糊:服务器通过 stdio 接收外部输入的参数并直接注入到 Prompt 模板中执行。如果攻击者能够操控输入参数(通过恶意代码片段等),理论上存在 Prompt 注入攻击的风险。项目没有实现沙箱隔离或输出过滤机制。
生态碎片化风险:MCP 协议本身仍处于快速演进阶段,各 MCP 客户端(Cursor、Windsurf、Cline)对 MCP 规范的实现程度不一,工具的可用性和行为在不同编辑器间可能存在差异。
这些局限性并不意味着项目不值得使用,而是提醒开发者在生产环境中使用时需要建立相应的工程规范和风险管理机制。
MCP Prompt Server 的出现,反映了 AI 辅助开发领域的一个深刻趋势:Prompt 工程正在从个人技艺向系统工程演进。
在早期,Prompt 优化更多依赖个人的"感觉"和经验——同样一个任务,有人需要反复调校几十次才能得到满意结果,有人则凭借直觉一击即中。这种技艺难以传授、难以复制、难以规模化。
MCP Prompt Server 代表的思路是:将 Prompt 视为代码一样的一等公民。它可以被版本化管理、被团队共享、有标准的接口定义、能通过工具调用而非聊天交互来触发。这与 GitHub Copilot 的技巧(.cucco 文件)、Cursor 的规则(.cursorrules 文件)一脉相承,共同指向同一个方向——让 AI 辅助开发从"艺术"变成"工程"。
从更宏观的视角看,MCP 协议本身正在成为 AI 工具生态的" TCP/IP 协议层"。随着越来越多的工具和服务接入 MCP 标准,AI 代码编辑器的能力边界将不再受限于内置模型,而取决于你能组合多少外部工具。MCP Prompt Server 在这个生态中扮演的角色,或许会像 curl 在 HTTP 生态中的角色一样——看似简单,却是整个系统不可或缺的基础设施。
MCP Prompt Server 是一个小而美的项目。它的价值不在于代码量有多大、功能有多复杂,而在于它精准地填补了 AI 代码编辑器工具链中"Prompt 即工具"这一空白。对于已经在使用 Cursor、Windsurf 或 Cline 的开发者而言,它提供了一种几乎零成本的效率提升方案——只需几次点击,就能让 AI 助手具备专业的代码审查、文档生成、重构建议等能力。
当然,项目当前的维护状态是需要纳入考量的因素。如果你的团队对依赖稳定性要求较高,可能需要 fork 代码自行维护,或者评估商业替代方案(mypromptmcp.com)。但对于个人开发者和小型团队来说,这依然是一个值得一试的优质工具。