github / github/github-mcp-server

Use MCP Tasks for non-blocking GitHub Actions workflow monitoring

オープン
#3,201 コメント 0 件 リアクション 5 件 担当者 0 名 GitHub で見る
enhancement
主要言語
Go
スター
33k
フォーク
5k
平均マージ
2日 1時間
マージ済み PR(30日)
52

説明

### Describe the feature or problem you’d like to solve

GitHub MCP already exposes workflow runs, jobs, and logs. The remaining gap is waiting for CI without making the agent supervise it.

Today, an agent must repeatedly poll `actions_get` or block on `gh run watch`. Discussion #1088 recommends polling every 15–30 seconds. That keeps the agent occupied with orchestration instead of useful work.

The 2026-07-28 MCP specification introduced Tasks for long-running asynchronous operations. Workflow monitoring is a natural fit.

### Proposed solution

Add an Actions operation that waits for a workflow run as an MCP Task:

```json
{
"method": "watch_workflow_run",
"owner": "github",
"repo": "github-mcp-server",
"run_id": 123456789,
"until": "completed"
}
```

It would return immediately with a Task handle:

```json
{
"resultType": "task",
"taskId": "gh-actions-run-123456789",
"status": "working"
}
```

GitHub MCP would own the wait, completing the Task when the run reaches a terminal state. Clients could use `tasks/get` or task subscriptions instead of making the model poll Actions.

This requires no webhook, tunnel, or inbound connectivity for a local server. On failure, the Task could optionally return failed jobs and relevant log tails using existing Actions capabilities.

### Example prompts or workflows (for tools/toolsets only)

1. “Push this fix and watch CI. If it fails, investigate the failing job.”
2. Agent pushes → starts workflow Task → CI fails → Task returns failed-job context → agent fixes and pushes again.
3. “Trigger the deploy workflow and tell me when it finishes.”
4. “Watch this run; only bring me back in if something fails.”

### Additional context

GitHub MCP already has the Actions data plane. What is missing is the asynchronous waiting primitive.

Before MCP Tasks, client-driven polling was a reasonable workaround. Tasks now provide a protocol-native lifecycle for this operation.

Related:

- Discussion #1088 — current workflow iteration guidance relies on polling
- Issue #1722 — workflow status and log access for agents
- Issue #924 — job-log access for large workflows
- [MCP Tasks specification (2026-07-28)](https://modelcontextprotocol.io/specification/2026-07-28/basic/utilities/tasks)

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

Start by reading the MCP Tasks specification and the existing Actions operations, especially actions_get and the current workflow polling guidance in Discussion #1088. Done means a new workflow-monitoring operation returns a Task immediately and completes it when the run reaches a terminal state, optionally including failed-job context and log tails.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
github-actions, go
領域
backend-api-design, ci-cd, devtools
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
活発
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。