Integrations
Provides tools for interacting with GitHub repositories, fetching the latest releases, and accessing repository information.
Enables fetching available GitHub Actions workflows from repositories, getting detailed information about specific actions, and triggering workflow dispatch events with custom inputs.
GitHub 动作触发器 MCP 服务器
用于 GitHub Actions 集成的模型上下文协议服务器。
概述
这是一个基于 TypeScript 的 MCP 服务器,专为 GitHub Actions 集成而设计。它提供以下功能:
- 从存储库获取可用 GitHub Actions 的工具
- 获取特定 GitHub Action 详细信息的工具
- 触发 GitHub 工作流调度事件的工具
- 从 GitHub 存储库获取最新版本的工具
特征
工具
get_github_actions
- 获取存储库可用的 GitHub Actions- 必需参数:
owner
(仓库所有者,用户名或组织)和repo
(仓库名称) - 可选参数:
token
(GitHub个人访问令牌,用于访问私有仓库或增加API速率限制) - 返回包含工作流 ID、名称、路径、状态、URL 和内容的 JSON 数据
- 必需参数:
get_github_action
- 获取有关特定 GitHub Action 的详细信息,包括输入及其要求- 必需参数:
owner
(操作所有者,用户名或组织)和repo
(操作的存储库名称) - 可选参数:
path
:动作定义文件的路径(默认值:'action.yml')ref
:Git 引用(分支、标签或提交 SHA,默认值:'main')token
:GitHub 个人访问令牌(可选)
- 返回有关操作的详细信息,包括名称、描述、作者、输入(以及是否需要)等。
- 必需参数:
trigger_github_action
- 触发 GitHub 工作流并传递相关参数- 必需参数:
owner
:存储库所有者(用户名或组织)repo
:存储库名称workflow_id
:要触发的工作流的 ID 或文件名
- 可选参数:
ref
:触发工作流程的 git 引用(默认值:'main')inputs
:传递给工作流的输入(必须与工作流定义的输入匹配)token
:GitHub 个人访问令牌(必须具有工作流范围)
- 返回工作流运行信息,包括状态、URL 等。
- 必需参数:
get_github_release
- 从 GitHub 存储库获取最新的 2 个版本- 必需参数:
owner
(仓库所有者,用户名或组织)和repo
(仓库名称) - 可选参数:
token
(GitHub个人访问令牌,可选) - 返回有关最新 2 个版本的信息
- 必需参数:
安装
推荐安装:使用 npx
最简单的安装和使用方法是通过 Claude Desktop 配置文件中的npx
命令,无需手动本地安装:
此方法的好处:
- 无需安装本地包
- 自动使用最新版本
- 一次设置即可使用
- 内置 GitHub 令牌配置
本地安装
如果您希望手动安装,请按照以下步骤操作:
- 安装软件包:
- 在 Claude Desktop 配置中使用:
在 MacOS 上: ~/Library/Application Support/Claude/claude_desktop_config.json
在 Windows 上: %APPDATA%/Claude/claude_desktop_config.json
GitHub 令牌配置
要访问 GitHub API(尤其是私有仓库或工作流触发器),您需要配置 GitHub 个人访问令牌。有几种方法可以做到这一点:
方法一(推荐):在 Claude Desktop 中直接配置
通过env
字段直接在 Claude Desktop 配置文件中设置令牌:
方法二:全局环境变量
设置GITHUB_TOKEN
环境变量:
方法三:本地配置文件
编辑配置文件:
设置你的 GitHub 令牌:
服务器第一次启动时会自动创建此配置文件的模板。
发展
安装依赖项:
构建服务器:
对于开发过程中的自动重建:
调试
使用 MCP Inspector 进行调试:
检查器将提供一个 URL 来访问浏览器中的调试工具。
发布到 npm
如果要将此包发布到 npm,请按照以下步骤操作:
- 确保您已登录 npm 并具有发布到
@nextdrive
组织的权限:Copy - 构建项目:Copy
- 发布到 npm(组织范围的包默认是私有的,使用
--access public
将其公开):Copy
发布后,任何人都可以使用npx @nextdrive/github-action-trigger-mcp
命令运行此工具或在其 Claude Desktop 配置中使用它。
使用示例
获取 GitHub Actions 列表
使用get_github_actions
工具获取存储库的 GitHub Actions:
如果配置了默认令牌,则访问私有存储库时将自动使用它。
响应示例:
获取详细的 GitHub Action 信息
使用get_github_action
工具获取特定 Action 的详细信息:
响应示例:
触发 GitHub 工作流
使用trigger_github_action
工具触发GitHub工作流程:
响应示例:
注意:触发工作流需要:
- 必须配置工作流以支持
workflow_dispatch
事件 - GitHub 令牌必须具有
workflow
范围权限 - 传递的输入参数必须与工作流中定义的参数匹配
获取最新版本
使用get_github_release
工具从存储库获取最新的 2 个版本:
响应示例:
You must be authenticated.
模型上下文协议服务器可与 GitHub Actions 集成,允许用户获取可用的操作、获取有关特定操作的详细信息、触发工作流调度事件以及获取存储库版本。