返回 MCP 目录
public公开dns本地运行

release-notes-server

一个基于MCP的GitHub版本说明生成服务

article

README

🚀 发布说明生成服务器

发布说明生成服务器是一个MCP服务器,它能够从GitHub仓库中智能生成美观的发布说明。该服务器可高效获取提交记录,按类型组织这些记录,并以整洁易读的格式呈现,为用户提供便利。

✨ 主要特性

  • 🎯 可按日期或SHA智能过滤提交,精准定位所需信息。
  • 📊 提交按类型分组,如功能、修复等,方便查看和管理。
  • 🔍 丰富提交数据,包含拉取请求信息,提供更全面的内容。
  • 📈 包含详细统计信息,助您了解项目的整体情况。
  • 🎨 以清洁的Markdown格式呈现,并附带表情符号,提升可读性。
  • ⚡ 使用GitHub的since参数,高效使用API,节省资源。

📦 安装指南

npm install
npm run build

💻 使用示例

基础用法

将此服务器添加到您的MCP配置中:

{
  "mcpServers": {
    "release-notes": {
      "command": "node",
      "args": ["/path/to/release-notes-server/build/index.js"],
      "env": {
        "GITHUB_TOKEN": "your-github-token"
      }
    }
  }
}

高级用法

generate_release_notes

为GitHub仓库生成发布说明。

参数:

{
  "owner": string,           // 仓库所有者
  "repo": string,           // 仓库名称
  "commitRange": {
    "fromCommit"?: string,  // 起始提交SHA
    "toCommit"?: string    // 结束提交SHA
  },
  "format": {
    "type": "markdown",     // 输出格式
    "groupBy": "type",      // 按何种方式分组
    "includeStats": boolean // 是否包含统计信息
  }
}

示例:

const result = await use_mcp_tool({
  server_name: "release-notes",
  tool_name: "generate_release_notes",
  arguments: {
    owner: "owner",
    repo: "repo",
    commitRange: {
      fromCommit: "abc123" // 从此SHA开始获取提交
    },
    format: {
      type: "markdown",
      groupBy: "type",
      includeStats: true
    }
  }
});

📚 详细文档

输出格式

生成的发布说明包含:

  1. 头部,包括生成日期和统计信息。
  2. 按类型分组的章节:
    • 🚀 功能
    • 🐛 修复
    • 📚 文档
    • ⚡ 性能改进
    • ♻️ 重构
    • 🧪 测试
    • 🏗️ 构建
    • 🔧 其他
  3. 详细统计信息包括:
    • 总提交数
    • 破坏性变更
    • 按类型分类的提交
    • 按作者分类的提交

环境变量

  • GITHUB_TOKEN: 具备仓库访问权限的GitHub个人访问令牌

🔧 技术细节

该服务器通过以下方式实现高效获取提交:

  1. 尽可能使用GitHub的since参数以减少API调用。
  2. 在需要时回退到SHA基于过滤。
  3. 正确处理分页。
  4. 维持最新的优先顺序以用于发布说明。
  5. 当可用时丰富提交数据包含拉取请求信息。
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端