使用说明

项目简介

MCPRules服务器是一个实现了 Model Context Protocol (MCP) 的后端服务,专门用于管理和提供编程规范与规则。它旨在帮助开发者在不同的开发工具和环境中保持一致的编码标准。通过 MCP 协议,该服务器可以与支持 MCP 协议的客户端(如代码编辑器插件、LLM 应用等)集成,为它们提供编程规则数据,从而提升代码质量和开发效率。

主要功能点

  • 规则管理与访问: 通过 MCP 协议提供的工具,客户端可以轻松获取编程规则。规则可以按类别进行过滤,方便用户查找特定领域的规则。
  • 灵活的规则来源: 支持从本地文件系统或 GitHub 仓库加载规则,适应不同的项目和团队需求。规则以 Markdown 格式定义,易于编写和维护。
  • 结构化规则组织: 规则按照明确的类别组织,例如核心编程原则、代码风格、特定语言指南等,方便管理和检索。
  • 可扩展性: 作为一个 MCP 服务器,它可以方便地集成到各种支持 MCP 协议的工具和平台中,为 LLM 应用提供结构化的编程规范上下文。

安装步骤

  1. 克隆仓库

    git clone https://github.com/bartwisch/MCPRules.git
    cd MCPRules/rules-server
  2. 安装依赖

    npm install
  3. 构建服务器

    npm run build
  4. 配置环境变量

    • 'RULES_FILE_PATH': 必须配置。指定规则文件的路径。可以是本地 Markdown 文件路径,也可以是 GitHub 仓库中 Markdown 文件的 URL。
      • 本地文件路径示例:'/path/to/your/rules.md'
      • GitHub URL 示例:'https://github.com/yourusername/your-rules-repo/blob/main/rules.md' 或 'https://raw.githubusercontent.com/yourusername/your-rules-repo/main/rules.md'
    • 'GITHUB_TOKEN': 可选配置。如果 'RULES_FILE_PATH' 指向私有 GitHub 仓库,则需要设置 GitHub Token 以进行身份验证。

    在终端中设置环境变量示例:

    export RULES_FILE_PATH=/path/to/your/rules.md
    # 或
    export RULES_FILE_PATH=https://github.com/yourusername/your-rules-repo/blob/main/rules.md
    # 可选,如果使用私有 GitHub 仓库
    export GITHUB_TOKEN=your_github_token

服务器配置

对于 MCP 客户端(例如 VSCode Cline 扩展 或 Claude Desktop),您需要配置 MCP 服务器的启动命令。以下是配置示例,请根据您的实际安装路径进行调整。

MCP 服务器名称: 'rules' (或其他您自定义的名称)

启动命令 (command): 'node'

启动参数 (args): '["/path/to/rules-server/build/index.js"]' (请将 '/path/to/rules-server' 替换为 'rules-server' 目录的实际绝对路径)

配置示例 (JSON 格式,用于 MCP 客户端配置):

{
  "mcpServers": {
    "rules": { // 服务器名称,客户端通过此名称引用
      "command": "node", // 启动服务器的命令
      "args": ["/path/to/rules-server/build/index.js"], // 启动命令的参数,指向编译后的服务器入口文件
      "disabled": false, // 是否禁用此服务器,通常设置为 false
      "alwaysAllow": []  // 总是允许的操作,默认为空数组
    }
  }
}

请注意:

  • 上述 '/path/to/rules-server' 必须替换 为您 'rules-server' 目录在您计算机上的实际绝对路径。例如,如果您将 'rules-server' 克隆到用户根目录下的 'projects' 文件夹中,那么路径可能类似于 '/Users/yourusername/projects/MCPRules/rules-server/build/index.js' (macOS/Linux) 或 'C:\Users\yourusername\projects\MCPRules\rules-server\build\index.js' (Windows)。
  • 具体的客户端配置文件位置请参考仓库 README.md 中 "Configuration" 部分的说明。

基本使用方法

配置完成后,MCP 客户端 (如支持 MCP 的代码编辑器或 LLM 应用) 就可以通过以下工具与 MCPRules 服务器交互:

  1. 获取规则 (get_rules)

    客户端可以调用 'get_rules' 工具来获取所有规则,或者根据类别过滤规则。

    • 获取所有规则: 发送空的参数对象 '{}'。
    • 按类别获取规则: 发送包含 'category' 字段的参数对象,例如 '{"category": "Code Style and Formatting"}'。

    服务器会返回 JSON 格式的规则列表。

  2. 获取类别 (get_categories)

    客户端可以调用 'get_categories' 工具来获取所有可用的规则类别列表。

    • 获取所有类别: 发送空的参数对象 '{}'。

    服务器会返回 JSON 格式的类别列表。

使用示例 (在支持 MCP 协议的客户端中调用工具):

假设您使用的 MCP 客户端允许您手动调用工具,您可能会看到类似以下的界面或操作方式:

  • 调用工具名称: 'rules/get_rules' (假设您配置的服务器名称为 'rules')
  • 工具参数: '{ "category": "Code Style and Formatting" }' (例如,获取 "Code Style and Formatting" 类别的规则)

或者

  • 调用工具名称: 'rules/get_categories'
  • 工具参数: '{}' (获取所有规则类别)

具体的调用方式取决于您使用的 MCP 客户端的功能和界面。请参考您所使用的 MCP 客户端的文档。

信息

分类

开发者工具