使用说明
项目简介
Release Notes Server 是一个 MCP 服务器,旨在从 GitHub 仓库生成发布说明。它能够高效地抓取仓库的提交记录,并根据类型或其他标准进行组织,最终以清晰易读的 Markdown 格式呈现。
主要功能点
- GitHub 发布说明生成: 自动从 GitHub 仓库的提交历史中生成结构化的发布说明。
- 灵活的提交过滤: 支持按日期范围或提交 SHA 范围筛选需要包含在发布说明中的提交。
- 多维度分组: 可以将提交记录按类型(如特性、修复)、作者或影响范围进行分组,方便阅读和理解变更内容。
- 详细统计: 可选择包含提交统计信息,如总提交数、破坏性变更数、各类提交数量等。
- Markdown 格式输出: 生成的发布说明以 Markdown 格式输出,易于阅读和集成到文档中。
安装步骤
- 确保已安装 Node.js 和 npm。
- 如果尚未克隆仓库,请克隆仓库:'git clone https://github.com/nickbaumann98/release-notes-server.git'
- 进入仓库目录:'cd release-notes-server'
- 安装依赖:'npm install'
- 构建项目:'npm run build'
服务器配置
要将此服务器添加到 MCP 客户端,请将以下配置添加到客户端的 MCP 服务器设置中:
{ "mcpServers": { "release-notes": { "command": "node", "args": ["/path/to/release-notes-server/build/index.js"], // 将此路径替换为构建后的 index.js 文件的实际路径 "env": { "GITHUB_TOKEN": "YOUR_GITHUB_TOKEN" // 将此令牌替换为您的 GitHub 个人访问令牌,需要 repo 权限 } } } }
注意: 请将 '/path/to/release-notes-server/build/index.js' 替换为您本地文件系统中构建后的 'index.js' 文件的绝对路径。 还需要设置 'GITHUB_TOKEN' 环境变量为您的 GitHub 个人访问令牌,该令牌需要具有 'repo' 访问权限。
基本使用方法
在 MCP 客户端中配置好服务器后,您可以使用 'generate_release_notes' 工具来生成发布说明。以下是如何调用此工具的示例:
const result = await use_mcp_tool({ server_name: "release-notes", tool_name: "generate_release_notes", arguments: { owner: "github_用户名", // 替换为仓库所有者,例如 "nickbaumann98" repo: "仓库名", // 替换为仓库名称,例如 "release-notes-server" commitRange: { fromCommit: "起始提交 SHA" // 可选:起始提交 SHA }, format: { type: "markdown", // 输出格式:"markdown", "json", 或 "text" groupBy: "type", // 提交分组方式:"type", "author", 或 "scope" includeStats: true // 是否在输出中包含提交统计信息 } } }); console.log(result.content[0].text); // 打印生成的发布说明
请将 '"github_用户名"' 和 '"仓库名"' 替换为实际的仓库所有者和名称。 您还可以根据需要调整 'commitRange' 和 'format' 参数。
信息
分类
开发者工具