Release Notes Server

Release Notes Server

site icon
2025.01.28 2
TypeScript发布说明生成GitHub 工具开发效率
Release Notes Server 是一个 MCP 服务器,用于从 GitHub 仓库生成美观的发布说明。它能够高效地获取提交记录,按类型组织,并以清晰可读的格式呈现。
View on GitHub

Overview

基本能力

产品定位

Release Notes Server 是一个专门用于生成 GitHub 仓库发布说明的工具,旨在帮助开发团队高效地整理和展示版本更新内容。

核心功能

  • 🎯 智能按日期或 SHA 过滤提交记录
  • 📊 按类型(功能、修复等)分组提交记录
  • 🔍 使用 PR 数据丰富提交记录
  • 📈 包含详细的统计信息
  • 🎨 使用表情符号的干净 Markdown 格式化
  • ⚡ 使用 GitHub 的 since 参数高效调用 API

适用场景

  • 开发团队需要为 GitHub 仓库生成发布说明
  • 需要按类型组织提交记录并展示统计信息
  • 希望以美观的格式呈现版本更新内容

工具列表

generate_release_notes

生成 GitHub 仓库的发布说明。

参数说明:

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

常见问题解答

  • 如何获取 GitHub Token? 需要在 GitHub 上生成一个具有仓库访问权限的个人访问令牌,并设置为 GITHUB_TOKEN 环境变量。

使用教程

使用依赖

确保已安装 Node.js 和 npm。

安装教程

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"
      }
    }
  }
}

生成发布说明的示例:

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
    }
  }
});

许可证

该项目遵循 MIT 开源许可条款。