MCP提示探索服务器

一个展示10种开发相关提示功能的MCP服务器,用于探索MCP提示如何工作并集成到LLM应用中。

  • by Tamilarasan555
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Tamilarasan555/mcp-prompt-explorer

使用说明

MCP 提示探索器服务器 🚀

一个全面的模型上下文协议(MCP)服务器,用于展示 提示功能 带有10个不同的以开发为中心的提示。此服务器非常适合探索MCP提示的工作原理,并且可以集成到像Claude Desktop这样的大型语言模型(LLM)应用中。

📋 什么是MCP提示?

MCP提示是预配置的、可重用的模板,LLM(大型语言模型)应用程序可以使用它们。它们:

  • 标准化常见任务创建一致的工作流程
  • 接受参数根据您的需求动态调整的提示
  • 提供结构格式良好的提示语以获得更好的结果
  • 节省时间无需从头开始编写提示语

✨ 特点/功能

这台服务器包含10个强大的提示功能:

  1. 🔍 代码审查 - 全面的代码审查,重点关注区域
  2. 📚 解释概念 - 技术概念讲解并举例说明
  3. 🐛 调试助手 - 带错误分析的调试代码
  4. 📖 API文档 生成API文档
  5. ♻️ 重构建议 - 代码重构建议
  6. 🧪 测试生成器 - 生成单元测试
  7. 🏗️ 架构评审 - 系统架构分析
  8. 💬 git提交信息 - 生成提交信息
  9. ⚡ SQL优化器 - SQL查询优化
  10. 🎓 学习路径 - 个性化学习路径

🚀 快速入门

先决条件

  • Python 3.10或更高版本
  • pip 或 uv 包管理器

安装

选项1:使用紫外线(推荐)

# Install UV if you haven't already
pip install uv

# Create and activate virtual environment
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install dependencies
uv pip install mcp

选项2:使用pip

# Create virtual environment
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install dependencies
pip install mcp

运行服务器

uv run server.py

🔧 与Claude桌面版的集成

要在Claude Desktop中使用此服务器,请将其添加到您的配置中:

macOS/Linux 配置

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "prompt-explorer": {
      "command": "python",
      "args": ["/absolute/path/to/mcp_prompt_explorer_server.py"],
      "env": {}
    }
  }
}

Windows 配置

编辑 %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "prompt-explorer": {
      "command": "python",
      "args": ["C:\\absolute\\path\\to\\mcp_prompt_explorer_server.py"],
      "env": {}
    }
  }
}

重要的替换 /absolute/path/to/ 以及你保存服务器文件的实际路径。

与UV配合使用(备选方案)

如果使用紫外线(UV),您可以这样配置它:

{
  "mcpServers": {
    "prompt-explorer": {
      "command": "uv",
      "args": [
        "run",
        "--with",
        "mcp",
        "python",
        "/absolute/path/to/mcp_prompt_explorer_server.py"
      ]
    }
  }
}

📖 使用示例

一旦与Claude Desktop集成,您就可以使用如下提示:

示例1:代码审查

Use the code-review prompt with this Python code:

def calculate(a, b):
    return a + b

该提示将自动格式化一个全面的代码审查请求。

示例2:解释一个概念

Use the explain-concept prompt to explain "async/await in Python" 
for a beginner audience with code examples

示例3:调试辅助

Use the debug-assistant prompt with this error:
"TypeError: unsupported operand type(s) for +: 'int' and 'str'"

And this code:
x = 5
y = "10"
result = x + y

示例4:生成测试

Use the test-generator prompt with comprehensive coverage 
for this function:

def factorial(n):
    if n <= 1:
        return 1
    return n * factorial(n - 1)

🎯 理解提示参数

每个提示都有特定的参数:

必需参数

这些是确保提示能正常工作的必要条件。

可选参数

这些用于自定义提示行为,但具有默认值。

来自(某处/某人的)示例 code-review 提示:

  • code (必填)- 需要审查的代码
  • language (可选)- 编程语言
  • focus (可选)- 具体关注领域

🔍 探索代码

关键组件

  1. list_prompts() - 返回所有可用的提示

    • 当客户端查询可用提示时调用
    • 返回包含参数的提示元数据
  2. get_prompt() - 返回一个带有填充参数的特定提示

    • 获取提示名称和参数值
    • 返回格式化后的提示信息
  3. 提示结构:

    Prompt(
        name="prompt-name",
        description="What this prompt does",
        arguments=[
            PromptArgument(
                name="arg_name",
                description="What this argument is for",
                required=True/False,
            ),
        ],
    )
    

🛠️ 自定义提示

想添加自己的提示吗?方法如下:

  1. 添加到 list_prompts():

    Prompt(
        name="my-custom-prompt",
        description="My awesome prompt",
        arguments=[
            PromptArgument(
                name="input",
                description="Input data",
                required=True,
            ),
        ],
    )
    
  2. 添加处理程序到 get_prompt():

    elif name == "my-custom-prompt":
        input_data = arguments.get("input", "")
        return GetPromptResult(
            description="Custom prompt result",
            messages=[
                PromptMessage(
                    role="user",
                    content=TextContent(
                        type="text",
                        text=f"Process this: {input_data}"
                    ),
                ),
            ],
        )
    

📚 学习资源

🎨 提示最佳实践

基于此服务器的实现:

  1. 清晰的结构使用编号列表和标题
  2. 具体指示明确表达你的需求
  3. 示例在有帮助的情况下提供示例
  4. 格式化使用XML标签或Markdown以提高清晰度
  5. 灵活性支持带有合理默认值的可选参数

🐛 故障排除

服务器未在Claude桌面显示

  1. 检查配置文件语法(有效的JSON)
  2. 验证服务器文件的绝对路径
  3. 确保 Python/UV 已添加到系统路径中
  4. 配置更改后重启Claude桌面版
  5. 检查Claude Desktop日志

导入错误

# Make sure mcp is installed
pip install mcp
# or
uv add mcp

Python版本问题

确保您使用的是 Python 3.10 或更高版本:

python --version

💡 使用提示的技巧

  1. 从简单开始尝试仅使用必需参数的提示
  2. 添加详细信息使用可选参数来细化结果
  3. 迭代根据结果调整参数
  4. 结合对于复杂任务,使用多个提示

🔄 接下来是什么?

尝试这些练习,以更深入地了解MCP提示:

  1. 修改 一个现有的提示模板
  2. 添加 针对您特定使用场景的新提示
  3. 合并 工作流中的提示
  4. 创造 参数验证逻辑
  5. 添加 多轮对话提示

📝 许可证

这是一个用于学习MCP提示的演示项目。请随意使用、修改和扩展它!

🤝 贡献

这是一个学习项目!请随意:

  • 添加新提示
  • 改进现有模板
  • 添加功能(资源、工具)
  • 分享您的自定义设置

快乐提示! 🎉

需要帮助吗?代码中附有大量注释,帮助你理解一切是如何工作的。