MCP 提示服务器
用于管理提示和模板的 MCP 服务器,具备项目编排功能。它是模型上下文协议 (MCP) 生态系统的一部分。
该服务器提供了一种存储、检索和应用 AI 提示模板的简单方法,从而更容易在 AI 应用程序中保持一致的提示模式。
目录
特征
- 存储和检索提示
- 创建并使用带有变量的模板
- 通过标签过滤列出提示
- 将变量应用于模板
- 多种存储后端(文件系统、PostgreSQL 和 MDC 格式)
- 易于与 Claude 和其他 AI 助手一起使用
- 项目编排能力
- 健康检查端点
安装
使用 npx(推荐)
全局安装
使用 Docker
验证安装
安装后,您可以通过以下方式验证服务器是否正常工作:
- 打开Claude桌面
- 在聊天输入中输入“/”查看是否出现来自服务器的提示
- 使用简单的工具调用进行测试:
配置
可以使用环境变量来配置服务器:
环境变量 | 描述 | 默认 |
---|---|---|
服务器名称 | 服务器名称 | MCP 提示服务器 |
服务器版本 | 服务器版本 | package.json 版本 |
存储类型 | 存储类型:“文件”、“postgres”或“mdc” | 文件 |
PROMPTS_DIR | 存储提示的目录 | ~/mcp/data/提示 |
备份目录 | 备份目录 | ~/mcp/data/备份 |
港口 | HTTP 服务器端口 | 3003 |
日志级别 | 日志级别 | 信息 |
HTTP服务器 | 启用 HTTP 服务器 | 错误的 |
主持人 | HTTP 服务器的主机 | 0.0.0.0 |
PostgreSQL 设置(如果 STORAGE_TYPE=postgres 则需要)
环境变量 | 描述 | 默认 |
---|---|---|
PG_HOST | PostgreSQL 主机 | 本地主机 |
PG_PORT | PostgreSQL 端口 | 5432 |
PG_数据库 | PostgreSQL 数据库名称 | mcp_提示符 |
PG_用户 | PostgreSQL 用户名 | PostgreSQL |
PG_密码 | PostgreSQL 密码 | |
PG_SSL | 使用 SSL 进行 PostgreSQL 连接 | 错误的 |
POSTGRES_CONNECTION_STRING | 完整的 PostgreSQL 连接字符串(覆盖单独的设置) |
MDC 设置(如果 STORAGE_TYPE=mdc 则需要)
环境变量 | 描述 | 默认 |
---|---|---|
MDC_RULES_DIR | MDC 规则目录 | ./.光标/规则 |
用法
与 Claude 一起使用
在 Claude 3 桌面应用中,您可以在claude_desktop_config.json
中配置 MCP Prompts 服务器:
可用工具
MCP Prompts 服务器提供以下工具:
add_prompt
:添加新提示get_prompt
:通过 ID 获取提示update_prompt
:更新现有提示list_prompts
:列出所有提示delete_prompt
:通过 ID 删除提示apply_template
:将变量应用于提示模板
API 使用示例
列出可用的提示
要查看可用的提示:
按标签过滤:
获取特定提示
要通过 ID 检索特定提示:
使用模板提示
要将变量应用于模板提示:
管理提示
添加新提示
要添加新提示:
编辑现有提示
要编辑现有提示:
在工作流程中使用提示
开发工作流程示例
当开始开发新功能时:
- 请求开发系统提示模板
- 在模板中填写您的项目详细信息
- 使用系统提示来指导克劳德的协助
代码审查示例
审查代码时:
- 请求代码审查模板
- 提供需要审核的代码
- Claude 将提供结构化审查
提示格式
提示具有以下结构:
多格式提示支持
MCP Prompts 服务器包含一个强大的MutablePrompt
接口,允许提示在多种格式之间转换:
- JSON 格式:服务器使用的标准内部格式
- MDC 格式:光标规则 Markdown 格式(.mdc 文件)
- PGAI 格式:支持 PostgreSQL AI 嵌入的格式
- 模板格式:带有变量占位符的动态格式
格式转换
MutablePrompt 接口提供了在以下格式之间转换提示的方法:
应用模板
您可以轻松地将变量应用于模板提示:
提取变量
从模板内容中提取变量:
从不同格式创建
您还可以创建各种格式的提示:
与存储适配器集成
MutablePrompt 接口与现有的存储适配器无缝协作:
这种灵活的格式处理可以实现:
- 跨平台兼容性:在不同的工具和平台中使用提示
- 矢量搜索:使用 PGAI 格式实现语义搜索功能
- IDE 集成:与 Cursor Rules 直接兼容
- 模板系统:导出用于各种编程语言的模板
存储适配器
该服务器支持三种类型的存储适配器:
- 文件适配器:将提示作为单独的 JSON 文件存储在目录中。
- PostgreSQL 适配器:将提示存储在 PostgreSQL 数据库中。
- MDC 适配器:以光标规则 MDC 格式存储提示。
可以使用STORAGE_TYPE
环境变量配置存储类型:
PostgreSQL 设置
使用PostgreSQL存储时,配置以下环境变量:
或者,使用连接字符串:
Docker 部署
Docker Compose 编排
MCP Prompts Server 针对不同的部署场景提供了各种 Docker Compose 配置:
简单部署
这将使用端口 3003 上的文件存储部署 MCP Prompts 服务器。
PostgreSQL 部署
这将部署:
- PostgreSQL 数据库服务器
- 为 PostgreSQL 配置的 MCP Prompts 服务器
- 数据库管理管理员:http://localhost:8080
开发环境
这将设置一个支持热加载的开发环境。它会从本地目录挂载源代码,并包含 Adminer。
测试环境
这将创建一个专用的测试环境,其中包含:
- 包含测试数据的临时 PostgreSQL 实例
- 执行所有测试的独立测试运行器容器
- 测试结果保存到./test-results目录
Docker管理脚本
为了简化 Docker Compose 操作,请使用提供的管理脚本:
管理脚本支持以下命令:
start
:启动 Docker 容器stop
:停止 Docker 容器restart
:重新启动 Docker 容器logs
:显示容器的日志clean
:删除容器、网络和卷build
:构建 Docker 镜像test
:在 Docker 容器中运行测试
以及以下环境:
dev
:开发环境(默认)test
:测试环境prod
:生产环境
自定义配置
您可以通过扩展基本配置来创建自己的自定义 Docker Compose 配置:
然后运行它:
发展
开发工作流程
设置开发环境
- 克隆存储库
- 安装依赖项
- 设置环境变量创建一个具有必要配置的
.env
文件。
开发命令
- 使用热重载启动开发服务器
- 构建项目
- 运行单元测试
- 运行集成测试
- 测试构建过程
- 测试 Docker 构建
- 构建 Docker 镜像
构建过程
构建过程包括几个重要步骤:
- TypeScript 编译
- 使入口点可执行
测试
运行测试:
运行 MCP Inspector 进行测试:
全面的测试脚本
如需更多高级测试选项,请使用提供的测试脚本:
Docker容器健康测试
测试 Docker 容器的健康状况:
此测试验证当 MCP-Prompts 服务器在 Docker 容器中运行时,健康检查端点是否正常工作。
目录结构
该项目遵循结构化组织来保持关注点的清晰分离:
发布流程
预发布检查清单
- 所有 TypeScript 错误均已解决
- 代码检查通过,没有错误
- 代码格式符合项目标准
- 单元测试通过
- 集成测试通过
- 构建测试通过
- Docker 构建测试通过
- 软件包安装测试通过
- README 包含最新的功能和更改
- CHANGELOG 已更新所有值得注意的变更
版本更新
- 根据语义版本更新
package.json
中的版本 - 确保依赖项是最新的
- 更新文档中的任何版本引用
出版
- 为新版本创建一个 git 标签
- 将更改和标签推送到 GitHub
- 发布到 npm(
npm publish
) - 构建并推送 Docker 镜像
发布后验证
- 从 npm 验证安装
- 验证包是否可以使用 npx 运行
- 验证 Docker 镜像是否按预期工作
- 验证与 Claude Desktop 的集成
变更日志
[1.2.20] - 2025-03-14
- 自动化版本升级
[1.2.19] - 2024-03-16
固定的
- 修复了 PostgresAdapter 实现中的 TypeScript 错误
- 增强了 savePrompt 方法,以正确返回创建的提示
- 向 PostgresAdapter 添加了 updatePrompt 方法
- 修复了 StorageAdapter 接口,使其包含 listPrompts 和 clearAll 方法
- 改进了 database-tools.ts 中 clearAll 方法的错误处理
- 增强的健康检查端点,提供更详细的信息
额外
- 为健康检查端点添加了更好的文档和错误处理
[1.2.18] - 2024-03-14
额外
- 添加了具有健康检查端点的 HTTP 服务器
- 添加了 Docker 容器健康检查
- 增加了对 Node.js 18-23+ 的 ESM 模块兼容性
- 增强的数据库工具,具有更好的错误处理能力
已更改
- 通过多阶段构建改进 Docker 构建过程
- 简化的配置管理
- 优化 PostgreSQL 适配器连接处理
- 已将依赖项更新至最新版本
固定的
- 修复了某些文件系统上的文件适配器问题
- 改进错误消息以便更好地调试
- 固定模板变量提取
[1.2.0] - 2025-03-14
已更改
- 重新组织代码库结构以提高可维护性
- 将 Docker 相关文件移至
docker/
目录 - 将构建脚本移至
scripts/build/
目录 - 将测试脚本移至
scripts/test/
目录 - 更新了 GitHub 工作流程以使用新的文件路径
- 更新了 Docker Compose 配置以使用新的文件路径
- 添加了全面的开发文档
额外
- 创建包含详细说明的开发文档
- 创建发布准备清单
- 添加了 CHANGELOG.md 来跟踪更改
已移除
- 删除重复和冗余文件
- 删除了不完整的脚本
[1.1.0] - 2024-03-01
额外
- 用于语义提示发现的 PGAI 向量搜索
- 支持 PostgreSQL 中的嵌入
- 使用专业模板改进提示收集
- 批量处理能力,方便快速收集
已更改
- 增强提示处理流程
- 改进的命令行界面,提供更多选项
- 更好的错误处理和验证
[1.0.0] - 2024-02-15
额外
- MCP Prompts 服务器的初始版本
- 基本提示管理功能(添加、编辑、获取、列出、删除)
- 模板变量替换
- 基于标签的组织
- 基于文件的存储
- 导入/导出功能
- MCP 协议兼容性
最佳实践
- 使用标签进行组织:使用标签对提示进行分类,以便于检索
- 使用模板:创建带有变量的可重复使用模板,以实现一致的提示
- 包括元数据:添加作者、版本和其他元数据以便更好地组织
- 定期备份:如果管理关键提示,请使用备份功能
- 优化大型集合:检索大型提示集合时使用分页
- 使用一致的命名:清晰一致地命名提示,以便于发现
- 有效标记:使用标签按目的、项目或上下文组织提示
- 模板化可重复使用的提示:使用变量为常用提示创建模板
- 定期更新:随着需求的变化,保持提示的更新
- 与团队分享:与您的团队分享有效的提示,以实现持续的互动
执照
麻省理工学院
Related MCP Servers
- -securityAlicense-qualityProvides pre-defined prompt templates for AI assistants to generate comprehensive plans for TypeScript projects, API architectures, and GitHub workflows.Last updated -0TypeScriptMIT License
- -securityAlicense-qualityServes prompt templates through a standardized protocol for transforming basic user queries into optimized prompts for AI systems.Last updated -PythonApache 2.0
- AsecurityAlicenseAqualityA server based on Model Context Protocol that provides predefined prompt templates for tasks like code review and API documentation generation, enabling more efficient workflows in Cursor/Windsurf editors.Last updated -105JavaScriptMIT License
- -securityAlicense-qualityAllows AI assistants to access prompts from promptz.dev API without copy-pasting, reducing context switching in your development workflow.Last updated -5TypeScriptMIT No Attribution