mcpField
G
Github Action Trigger Mcp

Github Action Trigger Mcp

ローカル
github.com/nextDriveIoEバージョン管理328 週間前に更新

Github Action Trigger Mcp について

GitHub Action Trigger MCP Serverは、AIクライアントからGitHub Actionsやリポジトリを調べ、ワークフローを実行し、リリースを取得し、プルリクエストの自動マージを有効にするTypeScript製サーバーです。

主な機能

  1. 01リポジトリのワークフロー一覧
  2. 02Actionの詳細と入力項目の確認
  3. 03ワークフローのディスパッチ
  4. 04最近のリリース取得
  5. 05プルリクエストの自動マージ有効化

活用シーン

  1. 01リポジトリで利用可能なワークフローの確認
  2. 02指定した入力でワークフローを開始
  3. 03更新前に最近のリリースを確認
  4. 04プルリクエストの自動マージを有効化

MCP 対応

MCPクライアントに、ワークフローの検索と実行、リリース取得、プルリクエストの自動マージなどのGitHub Actions・リポジトリツールを提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"github-action-trigger": {
"command": "npx",
"args": [
"-y",
"@nextdrive/github-action-trigger-mcp"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "<GITHUB_PERSONAL_ACCESS_TOKEN>"
}
}
}
}
起動コマンドnpx -y @nextdrive/github-action-trigger-mcp
設定が必要な環境変数
GITHUB_PERSONAL_ACCESS_TOKENシークレット

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@nextdrive/github-action-trigger-mcp

ツール

5

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
ownerstringはいリポジトリの所有者(ユーザー名または組織)
repostringはいリポジトリ名
tokenstringいいえGitHub のパーソナルアクセストークン(任意)

詳細

GitHub Action Trigger MCP サーバー

GitHub Actions と連携する Model Context Protocol サーバーです。

概要

GitHub Actions との連携を目的に設計された TypeScript ベースの MCP サーバーです。以下の機能を提供します。

  • リポジトリから利用可能な 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(Action のオーナーであるユーザー名または組織名)とrepo(Action のリポジトリ名)
    • オプションのパラメーター:
      • path:Action 定義ファイルへのパス(デフォルト:'action.yml')
      • ref:Git リファレンス(ブランチ、タグ、またはコミット SHA。デフォルト:'main')
      • token:GitHub 個人アクセストークン(任意)
    • 名前、説明、作成者、入力項目(必須かどうかを含む)など、Action の詳細情報を返します
  • trigger_github_action - GitHub ワークフローをトリガーし、関連するパラメーターを渡します

    • 必須パラメーター:
      • owner:リポジトリのオーナーであるユーザー名または組織名
      • repo:リポジトリ名
      • workflow_id:トリガーするワークフローの ID またはファイル名
    • オプションのパラメーター:
      • ref:ワークフローをトリガーする Git リファレンス(デフォルト:'main')
      • inputs:ワークフローに渡す入力値(ワークフローで定義された入力値と一致する必要があります)
      • token:GitHub 個人アクセストークン(workflow スコープが必要です)
    • ステータスや URL など、ワークフロー実行の情報を返します
  • get_github_release - GitHub リポジトリから最新の 2 件のリリースを取得します

    • 必須パラメーター:owner(リポジトリのオーナーであるユーザー名または組織名)とrepo(リポジトリ名)
    • オプションのパラメーター:token(GitHub 個人アクセストークン。任意)
    • 最新の 2 件のリリースに関する情報を返します
  • enable_pull_request_automerge - 特定のプルリクエストで自動マージを有効にします

    • 必須パラメーター:
      • owner:リポジトリのオーナーであるユーザー名または組織名
      • repo:リポジトリ名
      • pull_number:プルリクエスト番号
    • オプションのパラメーター:
      • merge_method:使用するマージ方法(MERGE、SQUASH、または REBASE。デフォルト:MERGE)
      • token:GitHub 個人アクセストークン(任意)
    • 成功ステータスとプルリクエストの情報を返します
    • 注:必要なチェックがすべて通過し、承認が得られると、PR は自動的にマージされます

インストール

推奨インストール方法:npx を使用

最も簡単な方法は、ローカルに手動でインストールせずに、Claude Desktop の設定ファイルでnpxコマンドを使用してインストールし、利用することです。

{
  "mcpServers": {
    "github-action-trigger-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@nextdrive/github-action-trigger-mcp"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "your_github_token_here"
      }
    }
  }
}

この方法のメリット:

  • ローカルへのパッケージインストールは不要です
  • 最新バージョンが自動的に使用されます
  • 一度設定すれば、すぐに利用できます
  • GitHub トークンの設定機能が組み込まれています
ローカルインストール

手動でインストールする場合は、以下の手順に従ってください。

  1. パッケージをインストールします:
npm install -g @nextdrive/github-action-trigger-mcp
  1. Claude Desktop の設定で使用します:

MacOS の場合:~/Library/Application Support/Claude/claude_desktop_config.json Windows の場合:%APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "github-action-trigger-mcp": {
      "command": "@nextdrive/github-action-trigger-mcp",
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "your_github_token_here"
      }
    }
  }
}
GitHub トークンの設定

GitHub API にアクセスするには、特にプライベートリポジトリへのアクセスやワークフローのトリガーで、GitHub 個人アクセストークンを設定する必要があります。設定方法はいくつかあります。

方法 1(推奨):Claude Desktop での直接設定

env フィールドを使用して、トークンを Claude Desktop の設定ファイルに直接設定します。

"env": {
  "GITHUB_PERSONAL_ACCESS_TOKEN": "your_github_token_here"
}
方法 2:グローバル環境変数

GITHUB_TOKEN 環境変数を設定します。

# On Linux/MacOS
export GITHUB_TOKEN=your_github_token

# On Windows
set GITHUB_TOKEN=your_github_token
方法 3:ローカル設定ファイル

設定ファイルを編集します。

~/.nextdrive-github-action-trigger-mcp/config.json

GitHub トークンを設定します。

{
  "githubToken": "your_github_token"
}

この設定ファイルのテンプレートは、サーバーの初回起動時に自動的に作成されます。

開発

依存関係をインストールします。

npm install

サーバーをビルドします。

npm run build

開発中に自動で再ビルドするには、次のコマンドを実行します。

npm run watch
デバッグ

デバッグには MCP Inspector を使用します。

npm run inspector

Inspector から、ブラウザーでデバッグツールにアクセスするための URL が提供されます。

npm への公開

このパッケージを npm に公開する場合は、次の手順に従ってください。

  1. npm にログインし、@nextdrive 組織への公開権限があることを確認します。

    npm login
    
  2. プロジェクトをビルドします。

    npm run build
    
  3. npm に公開します(組織スコープのパッケージはデフォルトで非公開です。公開するには --access public を使用します)。

    npm publish --access public
    

公開後は、誰でも npx @nextdrive/github-action-trigger-mcp コマンドを使用してこのツールを実行するか、Claude Desktop の設定で使用できます。

使用例

GitHub Actions の一覧を取得する

get_github_actions ツールを使用して、リポジトリの GitHub Actions を取得します。

{
  "owner": "username-or-org",
  "repo": "repository-name"
}

デフォルトのトークンが設定されている場合、プライベートリポジトリへのアクセス時に自動的に使用されます。

レスポンス例:

[
  {
    "id": 12345678,
    "name": "CI",
    "path": ".github/workflows/ci.yml",
    "state": "active",
    "url": "https://github.com/owner/repo/actions/workflows/ci.yml",
    "content": "name: CI\n\non:\n  push:\n    branches: [ main ]\n  pull_request:\n    branches: [ main ]\n\njobs:\n  build:\n    runs-on: ubuntu-latest\n    steps:\n    - uses: actions/checkout@v2\n    - name: Setup Node.js\n      uses: actions/setup-node@v2\n      with:\n        node-version: 16.x\n    - name: Install dependencies\n      run: npm ci\n    - name: Build\n      run: npm run build\n    - name: Test\n      run: npm test\n"
  }
]
GitHub Action の詳細情報を取得する

get_github_action ツールを使用して、特定の Action の詳細情報を取得します。

{
  "owner": "actions",
  "repo": "checkout",
  "ref": "v4"
}

レスポンス例:

{
  "name": "Checkout",
  "description": "Check out a Git repository at a particular version",
  "author": "GitHub",
  "inputs": [
    {
      "name": "repository",
      "description": "Repository name with owner. For example, actions/checkout",
      "default": "",
      "required": false
    },
    {
      "name": "ref",
      "description": "The branch, tag or SHA to checkout.",
      "default": "",
      "required": false
    }
  ],
  "runs": {
    "using": "node20",
    "main": "dist/index.js"
  }
}
GitHub ワークフローをトリガーする

trigger_github_action ツールを使用して、GitHub ワークフローをトリガーします。

{
  "owner": "username-or-org",
  "repo": "repository-name",
  "workflow_id": "ci.yml",
  "inputs": {
    "deploy_environment": "production",
    "debug_enabled": "true"
  }
}

レスポンス例:

{
  "success": true,
  "message": "Workflow dispatch event triggered successfully",
  "run": {
    "id": 12345678,
    "url": "https://github.com/owner/repo/actions/runs/12345678",
    "status": "queued",
    "conclusion": null,
    "created_at": "2025-03-19T06:45:12Z",
    "triggered_by": "API"
  }
}

注意:ワークフローをトリガーするには、次の条件が必要です。

  1. ワークフローが workflow_dispatch イベントに対応するよう設定されていること
  2. GitHub トークンに workflow スコープの権限があること
  3. 渡す入力パラメーターが、ワークフローで定義されているものと一致すること
最新リリースを取得する

get_github_release ツールを使用して、リポジトリの最新 2 件のリリースを取得します。

{
  "owner": "username-or-org",
  "repo": "repository-name"
}

レスポンス例:

{
  "count": 2,
  "releases": [
    {
      "id": 12345678,
      "name": "v1.0.0",
      "tag_name": "v1.0.0",
      "published_at": "2025-03-15T10:00:00Z",
      "draft": false,
      "prerelease": false,
      "html_url": "https://github.com/owner/repo/releases/tag/v1.0.0",
      "body": "Release notes for version 1.0.0",
      "assets": [
        {
          "name": "app-v1.0.0.zip",
          "size": 1234567,
          "download_count": 42,
          "browser_download_url": "https://github.com/owner/repo/releases/download/v1.0.0/app-v1.0.0.zip",
          "created_at": "2025-03-15T10:05:00Z",
          "updated_at": "2025-03-15T10:05:00Z"
        }
      ],
      "author": {
        "login": "username",
        "html_url": "https://github.com/username"
      }
    },
    {
      "id": 87654321,
      "name": "v0.9.0",
      "tag_name": "v0.9.0",
      "published_at": "2025-03-01T10:00:00Z",
      "draft": false,
      "prerelease": true,
      "html_url": "https://github.com/owner/repo/releases/tag/v0.9.0",
      "body": "Pre-release notes for version 0.9.0",
      "assets": [],
      "author": {
        "login": "username",
        "html_url": "https://github.com/username"
      }
    }
  ]
}
プルリクエストの自動マージを有効にする

enable_pull_request_automerge ツールを使用して、特定のプルリクエストの自動マージを有効にします。

{
  "owner": "username-or-org",
  "repo": "repository-name",
  "pull_number": 123,
  "merge_method": "SQUASH"
}

レスポンス例:

{
  "success": true,
  "message": "Auto-merge enabled successfully",
  "pullRequest": {
    "id": "PR_kwDOABCD123_456",
    "title": "Add new feature",
    "number": 123,
    "autoMergeEnabled": true,
    "enabledAt": "2025-08-21T03:00:00Z",
    "mergeMethod": "SQUASH"
  }
}

注意:自動マージを有効にするには、次の条件が必要です。

  1. リポジトリの設定で自動マージが有効になっていること
  2. GitHub トークンにリポジトリへの書き込み権限があること
  3. プルリクエストがオープンで、自動マージがまだ有効になっていないこと
  4. 有効にすると、必要なステータスチェックがすべて通過し、承認が得られた時点で PR が自動的にマージされます

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。