返回市场
智能提示mcp

智能提示mcp

作者:jezweb12 星标更新:2025-06-21

项目介绍

智能提示 MCP 服务器

测试 覆盖率 性能 Node 许可证

这是一个增强版的 MCP(模型上下文协议)服务器,可以从 GitHub 存储库中智能地获取、组合和管理提示。这是对 prompts-mcp-server 的增强分支,增加了 GitHub 集成和高级功能。

🌟 主要特性

核心能力

  • 🔄 GitHub 集成:直接从 GitHub 存储库(公开/私有)获取提示
  • 🔍 智能发现:具有类别和标签过滤的高级搜索
  • 🔗 提示组合:将多个提示组合成工作流
  • 📊 使用跟踪:分析提示使用模式
  • ⚡ 实时更新:与 GitHub 自动同步
  • 🤖 AI 引导:增强工具描述和工作流推荐

MCP 协议支持

  • 工具:7 个专门用于提示管理的工具
  • 资源:13+ 资源端点用于浏览和发现
  • 提示:支持 Handlebars 的动态模板

📋 先决条件

在安装之前,请确保您已具备以下条件:

  • 安装了 Node.js 18+
  • npm 或 yarn 包管理器
  • 已安装并配置了 Git
  • GitHub 账户(用于 GitHub 集成)
  • GitHub 个人访问令牌(用于私有仓库或避免速率限制)

🚀 安装

第一步:克隆和安装

# 克隆存储库
git clone https://github.com/jezweb/smart-prompts-mcp.git
cd smart-prompts-mcp

# 安装依赖
npm install

# 构建项目
npm run build

# 验证安装
./verify-install.sh

第二步:配置环境

在项目根目录创建一个 .env 文件:

# 必需:GitHub 配置
GITHUB_OWNER=your-username          # 您的 GitHub 用户名或组织
GITHUB_REPO=your-prompts-repo      # 包含提示的存储库
GITHUB_BRANCH=main                  # 要使用的分支(默认:main)
GITHUB_PATH=                        # 子目录路径(可选)
GITHUB_TOKEN=ghp_xxxxx             # 个人访问令牌(推荐)

# 可选:缓存配置
CACHE_TTL=300000                    # 缓存生存时间(毫秒,默认:5 分钟)
CACHE_REFRESH_INTERVAL=60000        # 自动刷新间隔(毫秒,默认:1 分钟)

# 可选:功能标志
ENABLE_SEMANTIC_SEARCH=true         # 高级搜索功能
ENABLE_PROMPT_COMPOSITION=true      # 提示组合功能
ENABLE_USAGE_TRACKING=true          # 跟踪提示使用情况

第三步:MCP 客户端配置

对于 Claude Desktop (macOS)

添加到 ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "smart-prompts": {
      "command": "node",
      "args": ["/绝对路径/to/smart-prompts-mcp/dist/index.js"],
      "env": {
        "GITHUB_OWNER": "your-username",
        "GITHUB_REPO": "your-prompts-repo",
        "GITHUB_TOKEN": "ghp_your_token_here"
      }
    }
  }
}

对于 Roo Cline (VS Code)

添加到 Roo Cline MCP 设置:

"smart-prompts": {
  "command": "node",
  "args": ["/绝对路径/to/smart-prompts-mcp/dist/index.js"],
  "env": {
    "GITHUB_OWNER": "your-username",
    "GITHUB_REPO": "your-prompts-repo",
    "GITHUB_TOKEN": "ghp_your_token_here"
  }
}

📁 提示组织最佳实践

推荐文件夹结构

your-prompts-repo/
├── README.md                    # 存储库概述
├── ai-prompts/                  # AI 和元提示
│   ├── meta-prompt-builder.md
│   └── prompt-engineer.md
├── development/                 # 开发提示
│   ├── backend/
│   │   ├── api-design.md
│   │   └── database-schema.md
│   ├── frontend/
│   │   ├── react-component.md
│   │   └── vue-composition.md
│   └── testing/
│       ├── unit-test-writer.md
│       └── e2e-test-suite.md
├── content-creation/           # 内容提示
│   ├── blog-post-writer.md
│   └── youtube-metadata.md
├── business/                   # 商业提示
│   ├── proposal-generator.md
│   └── email-templates.md
└── INDEX.md                    # 可选:类别索引

命名约定

  • 文件:使用短横线命名法(例如,api-documentation-generator.md
  • 提示名称:在 frontmatter 中使用下划线命名法(例如,api_documentation_generator
  • 类别:使用小写加短横线(例如,content-creation
  • 保持名称描述性但简洁

📝 提示文件格式

---
name: api_documentation_generator
title: REST API 文档生成器
description: 生成全面的 API 文档,包括示例
category: documentation
tags: [api, rest, documentation, openapi, swagger]
difficulty: 中级
author: jezweb
version: 1.0
arguments:
  - name: api_spec
    description: API 规范或端点详情
    required: true
  - name: format
    description: 输出格式(markdown, openapi 等)
    required: false
    default: markdown
---

# API 文档生成器

为 {{api_spec}} 生成全面的文档,格式为 {{format}}。

包括:
- 端点描述
- 请求/响应示例
- 认证细节
- 错误代码
- 限速信息

🛠️ 可用工具

  1. 🔍 search_prompts - 总是从这里开始!按关键词、类别或标签搜索
  2. 📋 list_prompt_categories - 浏览可用类别及其数量
  3. 📖 get_prompt - 获取特定提示(使用搜索中的确切名称)
  4. create_github_prompt - 在 GitHub 上创建新提示
  5. 🔗 compose_prompts - 组合多个提示
  6. prompts_help - 获取上下文帮助和指导
  7. check_github_status - 验证 GitHub 连接

推荐工作流程

1. search_prompts → 查找现有提示
2. get_prompt → 查看完整内容
3. compose_prompts → 如需组合
4. create_github_prompt → 如果没有现成的

🔧 故障排除

常见问题

1. "GitHub 访问失败" 错误

# 检查您的令牌是否具有 repo 权限
# 验证 .env 文件中的令牌
GITHUB_TOKEN=ghp_your_actual_token

# 测试 GitHub 访问
GITHUB_TOKEN=your_token node test-server.js

2. "超出速率限制" 错误

  • 添加 GitHub 令牌以增加速率限制
  • 减少缓存刷新间隔
  • 使用 CACHE_TTL 进行长缓存

3. "未找到提示"

  • 检查存储库结构是否符合预期格式
  • 验证 GITHUB_PATH 是否使用子目录
  • 确保 .md 文件具有 YAML frontmatter

4. MCP 客户端无法连接

  • 配置中使用绝对路径
  • 检查 Node.js 是否在 PATH 中
  • 验证所有环境变量
  • 查看日志:tail -f ~/.claude/logs/mcp.log

5. 性能缓慢

  • 增加 CACHE_TTL 以减少更新频率
  • 减少存储库大小(归档旧提示)
  • 使用类别限制搜索范围

📈 扩展考虑

当前限制

  1. GitHub API 速率限制

    • 60 次请求/小时(未认证)
    • 5,000 次请求/小时(认证)
    • 每次目录获取 = 1 次请求
  2. 搜索限制

    • GitHub 没有原生语义搜索
    • 通过所有文件进行线性搜索
    • 100+ 提示时性能下降

扩展策略

对于 50-200 提示

  • ✅ 当前实现效果良好
  • 使用类别和标签进行组织
  • 实现本地缓存
  • 添加 GitHub 令牌以提高速率限制

对于 200-1000 提示

  • 🔄 实现索引文件
    # INDEX.md 在存储库根目录
    prompts:
      - name: api_generator
        path: development/api-generator.md
        category: development
        tags: [api, codegen]
    
  • 📊 添加搜索索引
    • 构建时生成搜索索引
    • 存储在 search-index.json
    • 通过 GitHub Actions 更新

对于 1000+ 提示

  • 🗄️ 数据库层
    • SQLite 用于本地缓存
    • 全文搜索功能
    • 定期与 GitHub 同步
  • 🔍 Elasticsearch/Algolia 集成
    • 正确的搜索基础设施
    • 分面搜索
    • 相关性排名

未来扩展功能(路线图)

  1. 搜索索引生成

    • GitHub Action 构建索引
    • 下载单个索引文件
    • 本地语义搜索
  2. 懒加载

    • 按需获取类别
    • 渐进式增强
    • 大列表虚拟滚动
  3. CDN 支持

    • 在边缘缓存提示
    • 减少 GitHub API 调用
    • 更快的全球访问

🚀 未来的 MCP 服务器想法

基于 GitHub 集成模式,以下是潜在的 MCP 服务器:

1. 代码片段 MCP 服务器

存储和管理 GitHub 上的可重用代码片段

  • 语言特定的组织
  • 语法高亮
  • 依赖管理
  • 版本历史

2. 文档模板 MCP

基于 GitHub 的文档模板库

  • README 生成器
  • API 文档模板
  • 项目文档
  • 从代码自动生成

3. AI 人格 MCP 服务器

管理 AI 人格配置

  • 专业知识定义
  • 沟通风格
  • 行为特征
  • 团队共享

4. 项目框架 MCP

完整的项目模板管理

  • 技术堆栈
  • 模板代码
  • 最佳实践
  • 配置预设

5. 学习资源 MCP

精选教育内容

  • 教程和指南
  • 代码示例
  • 进度跟踪
  • 技能推荐

6. 配置管理 MCP

版本控制的应用配置

  • 环境管理
  • 密钥处理
  • 团队同步
  • 回滚支持

7. 工作流自动化 MCP

GitHub Actions 集成

  • 工作流模板
  • CI/CD 管道
  • 自动化脚本
  • 跨存储库编排

8. 知识库 MCP

团队知识管理

  • 问答对
  • 故障排除指南
  • 最佳实践
  • 可搜索的维基

🧪 测试

该服务器包括全面的测试以确保可靠性和性能。

测试套件功能

  • 100% 测试覆盖率 关键功能
  • 性能基准测试 详细的指标
  • 可视化测试报告 交互式图表
  • 自动 CI/CD 通过 GitHub Actions

运行测试

# 运行完整测试套件
npm test

# 开发模式监视
npm run test:watch

# 生成覆盖率报告
npm run test:coverage

# 运行性能基准测试
npm run test:perf

# 验证安装
npm run test:verify

测试报告

测试结果会自动生成多种格式:

  • JSON:详细的分析结果(test-results/latest.json
  • Markdown:人类可读的报告(test-results/latest.md
  • HTML:交互式的视觉报告(test-results/latest.html

查看最新的测试结果:

🧪 开发

# 开发模式带热重载
npm run dev

# 构建生产环境
npm run build

# 启动生产服务器
npm start

🤝 贡献

我们欢迎贡献!请参阅 CONTRIBUTING.md 了解指南。

优先领域

  1. 搜索改进

    • 实现模糊搜索
    • 添加搜索结果排名
    • 支持正则表达式模式
  2. 性能优化

    • 实现连接池
    • 添加请求批处理
    • 优化缓存策略
  3. UI/可视化

    • 浏览的 Web 界面
    • 提示预览工具
    • 使用分析仪表盘

📄 许可证

MIT 许可证 - 详情见 LICENSE 文件。

🙏 致谢

📞 支持


<p align="center">为 MCP 社区制作 ❤️</p>