mcp-prompt-server-go
The MCP Prompt Server project provides a framework for transforming prompt templates into MCP tools using Go, aiming to simplify natural language processing through easy integration and extension.
MCP 提示词服务器 (Go版本)
这是一个使用Go语言实现的MCP提示词服务器,基于mark3labs/mcp-go库。
不只是受 joeseesun/mcp-prompt-server, and gdli6177/mcp-prompt-server 启发,而且初始的提示词都是从joeseesun/mcp-prompt-server项目中复制过来的。
你是否遇到过这些痛点?
是否曾经有一堆提示词但记不住什么时候该用哪个?
是否厌倦了每次需要提示词时都要复制粘贴?
有些人将提示词存储在AI编程工具的规则中,这解决了部分问题。
但如果我们能将常用提示词转化为MCP工具呢?
通过将提示词模板设计为工具,我们可以通过自然语言对话调用各种提示词。
这个MCP的强大之处
不再需要复制粘贴冗长的提示词。
只需使用自然语言对话即可自动:
- 生成可视化网页
- 设计PRD
- 创建吸引人的标题
- 还有更多...
AI会自动找到并使用合适的提示词。
适用于任何支持MCP的工具,如Raycast、Cursor、Windsurf、Cherrystudio等。
主要特性
- 📦 丰富的提示词模板: 内置高质量的代码、写作、产品、知识卡片、网页生成、结构化总结等提示词
- 🛠️ 即插即用的MCP工具: 所有提示词自动注册为MCP工具,支持参数化调用,兼容主流编辑器
- 🔄 热重载与管理: 无需重启服务器即可重新加载新提示词
- 🧩 易于扩展: 添加新的YAML/JSON文件即可扩展功能,无需修改核心代码
- 🏷️ 多语言与多领域: 适用于中文/英文内容、产品、教育、媒体、AI等多个领域
目录结构
mcp-prompt-server-go/
├── cmd/
│ └── main.go # 程序入口
├── internal/
│ ├── server/ # 服务器实现
│ │ └── server.go
│ ├── prompt/ # 提示词处理
│ │ ├── loader.go # 提示词加载器
│ │ └── model.go # 提示词数据结构
│ └── util/ # 工具函数
│ └── files.go
├── prompts/ # 所有提示词模板(YAML/JSON文件)
│ ├── gen_summarize.yaml
│ ├── gen_title.yaml
│ └── ...
└── README.md
快速开始
-
克隆仓库
git clone https://github.com/yourusername/mcp-prompt-server-go.git cd mcp-prompt-server-go
-
构建项目
./build.sh
-
启动服务器
./bin/mcp-prompt-server
MCP提示词服务器将自动加载
prompts/
目录中的所有提示词模板,并将它们作为MCP工具暴露。
工具集成
Raycast
- 在Raycast中,搜索
install server (MCP)
- 给你的MCP一个简单的名称,例如
prompt
(方便后续@调用) - 命令: 输入构建后可执行文件的路径,例如
/Users/yourusername/mcp-prompt-server-go/bin/mcp-prompt-server
- 保存后Raycast将自动集成MCP提示词服务器
Cursor
-
编辑
~/.cursor/mcp_config.json
并添加以下内容(替换路径为您的实际项目路径):{ "servers": [ { "name": "Prompt Server", "command": "/path/to/mcp-prompt-server-go/bin/mcp-prompt-server", "args": [], "transport": "stdio" } ] }
Windsurf
-
编辑
~/.codeium/windsurf/mcp_config.json
并添加:{ "mcpServers": { "prompt-server": { "command": "/path/to/mcp-prompt-server-go/bin/mcp-prompt-server", "args": [], "transport": "stdio" } } }
如何扩展提示词
-
在
prompts/
目录中创建新的YAML或JSON文件 -
模板示例:
name: your_prompt_name description: What this prompt does arguments: [] messages: - role: user content: type: text text: | Your prompt content, supports parameter placeholders like {{param}}
-
热重载提示词
- 使用编辑器中的
reload_prompts
工具,或重启服务器
- 使用编辑器中的
管理与调试
reload_prompts
: 热重载所有提示词模板get_prompt_names
: 列出所有可用的提示词名称
常见问题
- 提示词不工作?
检查YAML格式,确保name字段唯一,并重新加载或重启服务。 - 参数不工作?
确保arguments
字段正确,并且参数传递正确。
贡献和反馈
- 欢迎贡献新的提示词、建议和错误报告!
许可证
MIT