mcp提示rs
基于Rust的服务器,用于使用模型上下文协议(MCP)管理AI提示。
概述
mcp-prompts-rs是一个符合模型上下文协议(mcp)的提示管理服务器的Rust实现,mcp是将AI应用程序连接到数据源和工具的开放标准。这个项目是对原始版本的Rust重写 mcp提示 TypeScript实现。
该服务器提供存储、检索和管理AI提示的功能,支持模板变量、分类和多个存储后端。
特性
- 及时管理:创建、检索、更新和删除带有分类的提示
- 模板支撑:使用变量创建提示以进行运行时自定义
- 存储后端:支持文件系统和PostgreSQL存储选项
- API:具有服务器发送事件(SSE)的RESTful端点,用于实时更新
- MCP集成:实现模型上下文协议,与Claude等人工智能助手无缝集成
- 项目编排:使用模板自动创建软件项目的工具
- 部署:Docker支持和健康检查端点
安装
先决条件
- 锈蚀1.70或更高
- Cargo(Rust的包管理器)
- 可选:PostgreSQL用于数据库存储
设置
- 克隆存储库:
git clone https://github.com/your-username/mcp-prompts-rs.git
cd mcp-prompts-rs- 构建项目:
cargo build用法
运行服务器
使用默认设置启动服务器:
cargo run使用自定义配置:
cargo run -- --port 3000 --storage filesystemCLI选项
- `--port
`:设置服务器端口(默认值:8080)
--storage:选择存储后端(文件系统、postgres)--db-url:PostgreSQL连接字符串(使用postgres存储时)--prompt-dir:提示存储目录(使用文件系统存储时)
与Claude整合
要与Claude Desktop集成,请执行以下操作:
- 打开克劳德桌面
- 转到“设置”→ 开发者→ 编辑配置
- 将以下内容添加到您的配置中:
{
"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 -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/- 更新提示:
curl -X PUT http://localhost:3000/prompts/ \
-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/上海证券交易所
GET /events:用于实时更新的服务器发送事件端点
发展
项目结构
src/main.rs:入口点和服务器设置src/prompt/:提示模型和逻辑src/storage/:存储后端实施src/api/:API终结点处理程序src/template/:模板处理实用程序
从源头构建
cargo build运行测试
cargo testDocker支持
使用Docker构建和运行:
docker build -t mcp-prompts-rs .
docker run -p 8080:8080 mcp-prompts-rs贡献
欢迎投稿!请随时提交拉取请求。
- 分叉存储库
- 创建功能分支(
git checkout -b feature/amazing-feature) - 提交您的更改(
git commit -m 'Add some amazing feature') - 推到分支(
git push origin feature/amazing-feature) - 打开拉取请求
许可证
此项目根据Apache许可证2.0获得许可-请参阅 许可证 文件以获取详细信息。
致谢
- 原创 mcp提示 TypeScript项目
- 模型上下文协议
- MCP的Rust SDK
