发行说明服务器
一个 MCP 服务器,可以从 GitHub 仓库生成精美的发行说明。它可以高效地获取提交,按类型组织它们,并以简洁易读的格式呈现。
特征
- 🎯 按日期或 SHA 智能提交过滤
- 📊 按类型(功能、修复等)对提交进行分组
- 🔍 使用 PR 数据丰富提交
- 📈 包含详细的统计数据
- 🎨 使用表情符号清理 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"
}
}
}
}
可用工具
生成发布说明
为 GitHub 存储库生成发行说明。
参数:
{
"owner": string, // Repository owner
"repo": string, // Repository name
"commitRange": {
"fromCommit"?: string, // Starting commit SHA
"toCommit"?: string // Ending commit SHA
},
"format": {
"type": "markdown", // Output format
"groupBy": "type", // How to group commits
"includeStats": boolean // Include commit statistics
}
}
例子:
const result = await use_mcp_tool({
server_name: "release-notes",
tool_name: "generate_release_notes",
arguments: {
owner: "owner",
repo: "repo",
commitRange: {
fromCommit: "abc123" // Get commits from this SHA
},
format: {
type: "markdown",
groupBy: "type",
includeStats: true
}
}
});
输出格式
生成的发行说明包括:
- 带有生成日期和统计信息的标题
- 按提交类型分组的部分:
- 🚀 功能
- 🐛 修复
- 📚 文档
- ⚡ 性能
- ♻️ 重构
- 🧪 测试
- 🏗️ 构建
- 🔧 其他
- 详细统计数据包括:
环境变量
GITHUB_TOKEN
:具有 repo 访问权限的 GitHub 个人访问令牌
实现细节
服务器通过以下方式实现高效的提交提取:
- 尽可能使用 GitHub 的
since
参数来减少 API 调用 - 必要时回退到基于 SHA 的过滤
- 正确处理分页
- 保持发行说明的最新优先顺序
- 使用可用的 PR 数据来丰富提交
执照
麻省理工学院