mcpField
M
mcp-prompts-rs

mcp-prompts-rs

本地服务
github.com/sparesparrowAI 与智能体33 周前更新

关于 mcp-prompts-rs

mcp-prompts-rs 是用 Rust 编写的提示词管理服务,支持模板变量,并可使用文件系统或 PostgreSQL 存储。它适合需要管理可复用提示词和项目模板的团队。

主要功能

  1. 01创建、更新和删除提示词
  2. 02为提示词分类并检索
  3. 03支持模板变量
  4. 04使用文件系统或 PostgreSQL 存储
  5. 05通过模板自动创建项目

适用场景

  1. 01管理分类提示词集合
  2. 02用运行时变量定制提示词
  3. 03将提示词存入 PostgreSQL 或文件
  4. 04根据模板创建软件项目

MCP 相关

该服务实现 MCP,可供 AI 助手集成并提供提示词管理能力。它还提供 REST 接口和用于更新通知的 SSE 接口。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"prompts-rs": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"build"
]
}
}
}
启动命令docker run -i --rm build

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocibuild

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

mcp-prompts-rs

一个基于 Rust 的服务器,用于通过 Model Context Protocol(MCP)管理 AI 提示词。

概览

mcp-prompts-rs 是一个 Rust 实现的提示词管理服务,遵循 Model Context Protocol(MCP)。MCP 是一项用于将 AI 应用连接到数据源和工具的开放标准。本项目是对原始 mcp-prompts TypeScript 实现的 Rust 重写。

该服务提供存储、检索和管理 AI 提示词的功能,并支持模板变量、分类以及多种存储后端。

功能特性

  • 提示词管理:创建、检索、更新和删除提示词,并支持分类
  • 模板支持:创建带有变量的提示词,以便在运行时自定义
  • 存储后端:支持文件系统和 PostgreSQL 存储选项
  • API:提供 RESTful 端点,并通过 Server-Sent Events(SSE)实时更新
  • MCP 集成:实现 Model Context Protocol,可与 Claude 等 AI 助手无缝集成
  • 项目编排:提供使用模板自动创建软件项目的工具
  • 部署:支持 Docker,并提供健康检查端点

安装

前置条件
  • Rust 1.70 或更高版本
  • Cargo(Rust 的包管理器)
  • 可选:用于数据库存储的 PostgreSQL
设置
  1. 克隆仓库:
git clone https://github.com/sparesparrow/mcp-prompts-rs.git
cd mcp-prompts-rs
  1. 构建项目:
cargo build

使用方法

运行服务

使用默认设置启动服务:

cargo run

使用自定义配置:

cargo run -- --port 3000 --storage filesystem
CLI 选项
  • --port <PORT>:设置服务端口(默认:8080)
  • --storage <TYPE>:选择存储后端(filesystem、postgres)
  • --db-url <URL>:PostgreSQL 连接字符串(使用 postgres 存储时)
  • --prompt-dir <DIR>:提示词存储目录(使用 filesystem 存储时)

与 Claude 集成

与 Claude Desktop 集成:

  1. 打开 Claude Desktop
  2. 前往 Settings → Developer → Edit Config
  3. 将以下内容添加到配置中:
{
  "mcp": {
    "servers": [
      {
        "name": "mcp-prompts-rs",
        "url": "http://localhost:8080"
      }
    ]
  }
}

API 端点

提示词
  • GET /prompts:列出所有提示词
  • GET /prompts/:id:获取指定提示词
  • POST /prompts:创建提示词(至少需要 name 和 content 字段)
  • PUT /prompts/:id:更新现有提示词(至少需要 name 和 content 字段)
  • DELETE /prompts/:id:删除提示词
使用示例(使用 curl)
  • 列出所有提示词:
    curl -X GET http://localhost:3000/prompts
    
  • 创建提示词:
    curl -X POST http://localhost:3000/prompts \
      -H "Content-Type: application/json" \
      -d '{"name": "test-prompt", "title": "Test Prompt", "content": "This is a test prompt."}'
    
  • 按 ID 获取提示词:
    curl -X GET http://localhost:3000/prompts/<id>
    
  • 更新提示词:
    curl -X PUT http://localhost:3000/prompts/<id> \
      -H "Content-Type: application/json" \
      -d '{"name": "test-prompt", "title": "Updated Test Prompt", "content": "This is an updated test prompt."}'
    
  • 删除提示词:
    curl -X DELETE http://localhost:3000/prompts/<id>
    
SSE
  • GET /events:用于实时更新的 Server-Sent Events 端点

开发

项目结构
  • src/main.rs:入口文件和服务设置
  • src/prompt/:提示词模型和逻辑
  • src/storage/:存储后端实现
  • src/api/:API 端点处理程序
  • src/template/:模板处理工具
从源代码构建
cargo build
运行测试
cargo test

Docker 支持

使用 Docker 构建并运行:

docker build -t mcp-prompts-rs .
docker run -p 8080:8080 mcp-prompts-rs

贡献

欢迎贡献!请随时提交 Pull Request。

  1. Fork 此仓库
  2. 创建功能分支(git checkout -b feature/amazing-feature)
  3. 提交更改(git commit -m 'Add some amazing feature')
  4. 推送到分支(git push origin feature/amazing-feature)
  5. 提交 Pull Request

许可证

本项目采用 Apache License 2.0 许可协议,详情请参阅 LICENSE 文件。

致谢

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。