一个强大的模型上下文协议(MCP)工具包,用于管理GitHub发布。此服务器提供了全面的工具,可以访问、比较和分析GitHub存储库发布的丰富格式和详细信息。
该服务器接受以下可选环境变量:
GITHUB_PERSONAL_ACCESS_TOKEN:GitHub个人访问令牌(可选)。如果提供,它将用于认证API请求,允许更高的速率限制和访问私有存储库。您可以使用npx运行此MCP服务器:
# 使用环境变量
GITHUB_PERSONAL_ACCESS_TOKEN=your_token npx @slinerodev/github-releases-mcp
# 或使用.env文件
echo "GITHUB_PERSONAL_ACCESS_TOKEN=your_token" > .env
npx @slinerodev/github-releases-mcp
该服务器可以与各种MCP客户端一起使用。在您的客户端配置文件中添加以下配置:
~/.cursor/mcp.json.vscode/settings.json(使用mcp.servers而不是mcpServers)claude_desktop_config.jsonwindsurf_config.json{
"mcpServers": {
"github-releases": {
"command": "npx",
"args": [
"-y",
"@slinerodev/github-releases-mcp"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "your_token_here"
}
}
}
}
{
"mcpServers": {
"github-releases": {
"command": "npx",
"args": [
"-y",
"tsx",
"${workspaceRoot}/main.ts"
]
}
}
}
注意:
mcpServers为mcp.servers。your_token_here替换为您自己的GitHub个人访问令牌,如果您需要访问私有存储库或更高的速率限制。该服务器提供了三个专门用于处理GitHub发布的工具:
获取特定发布版本的详细信息。
const result = await mcp.invoke("github_release_info", {
owner: "owner-name",
repo: "repo-name",
version: "1.0.0" // 支持 v1.0.0, @1.0.0, 1.0.0
});
适用于:
比较两个版本之间的更改。
const result = await mcp.invoke("github_releases_compare", {
owner: "owner-name",
repo: "repo-name",
fromVersion: "1.0.0",
toVersion: "2.0.0"
});
适用于:
列出所有发布,并带有过滤选项。
const result = await mcp.invoke("github_releases_list", {
owner: "owner-name",
repo: "repo-name",
limit: 10, // 可选:限制发布的数量
includePreReleases: false // 可选:是否包含预发布版本
});
适用于:
所有工具以一致且带有表情符号的格式返回响应:
🔖 v1.0.0 (第一个稳定版)
🗓️ 2024-03-15T10:30:00Z
📝 这是发布说明...
---
🔖 v0.9.0 (Beta) (预发布)
🗓️ 2024-03-01T08:15:00Z
📝 带有新功能的测试版...
这些工具优雅地处理各种错误情况:
每个错误都会返回一个清晰的消息,解释出错的原因。
安装依赖:
pnpm install
运行服务器:
pnpm start
git checkout -b feature/amazing-feature)git commit -m 'Add some amazing feature')git push origin feature/amazing-feature)ISC
Sergio Linero