GitHub MCP Server
Provides tools for managing GitHub repositories, commits, issues, pull requests, and comments via the GitHub API.
Provides tools for monitoring and analyzing GitHub Actions workflow runs, jobs, and logs.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@GitHub MCP Servershow my open issues"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
GitHub MCP Server
一個功能強大的 GitHub MCP (Model Context Protocol) 伺服器,提供與 GitHub API 的完整整合。
功能特色
🚀 GitHub 核心功能
倉庫管理:列出、查看和管理 GitHub 倉庫
提交歷史:查看和分析 Git 提交記錄
GitHub Actions:監控和分析 Workflow 運行狀態
問題管理:創建、更新和查看 Issues
Pull Request:管理 PR 生命週期
評論功能:在 Issues 和 PR 中發表評論
文件讀取:讀取倉庫中的文件內容
Related MCP server: GitHub Enterprise MCP Server
安裝和設定
1. 克隆專案
git clone <repository-url>
cd github-mcp2. 安裝依賴
npm install
# 或
yarn install3. 環境配置
方式一:環境變數
在你的 ~/.zshrc 或 ~/.bashrc 文件中設定環境變數:
# GitHub 配置
export GITHUB_ACCESS_TOKEN="your_github_access_token"設定完成後,重新載入環境變數:
source ~/.zshrc # 或 source ~/.bashrc方式二:使用 .env 文件
複製 .env.example 為 .env:
cp .env.example .env編輯 .env 文件並填入你的 GitHub Access Token:
GITHUB_ACCESS_TOKEN=your_github_access_token4. 編譯和啟動
# 編譯
npm run build
# 開發模式
npm run dev
# 生產模式
npm start5. Claude 配置
在你的 Claude 設定中加入此 MCP 伺服器:
{
"mcpServers": {
"github-mcp": {
"command": "yarn",
"args": ["dev"],
"cwd": "/path/to/github-mcp"
}
}
}使用指南
GitHub 基本操作
列出倉庫
使用 github_get_repositories 工具列出您的 GitHub 倉庫查看提交歷史
使用 github_get_commits 工具查看倉庫的提交歷史
參數:
- repository: 倉庫標識 (格式: owner/repo)
- sha: 分支名稱 (可選)
- since/until: 時間範圍 (可選)監控 GitHub Actions
使用 github_get_workflow_runs 工具查看工作流運行狀態
使用 github_get_workflow_run_jobs 工具查看具體任務管理 Issues 和 PR
使用 github_create_issue 創建新問題
使用 github_create_pull_request 創建 Pull Request評論功能
使用 github_create_pr_comment 在 PR 中發表評論
使用 github_create_issue_comment 在 Issue 中發表評論獲取 GitHub Access Token
登入 GitHub
前往 Settings > Developer settings > Personal access tokens > Tokens (classic)
點擊 "Generate new token (classic)"
選擇必要的權限:
repo- 完整的倉庫控制權限workflow- 更新 GitHub Actions 工作流read:org- 讀取組織和團隊成員資訊write:discussion- 讀寫討論
生成並複製 Token
支援的工具
倉庫操作
github_get_repositories- 獲取倉庫列表github_get_repository- 獲取倉庫詳情github_get_file_content- 讀取文件內容
提交操作
github_get_commits- 獲取提交歷史github_get_commit- 獲取提交詳情
GitHub Actions
github_get_workflow_runs- 獲取工作流運行列表github_get_workflow_run- 獲取工作流運行詳情github_get_workflow_run_jobs- 獲取工作流任務github_get_job_logs- 獲取任務日誌
Issues
github_get_issues- 獲取問題列表github_get_issue- 獲取問題詳情github_create_issue- 創建新問題github_get_issue_comments- 獲取問題評論github_create_issue_comment- 發表問題評論
Pull Requests
github_get_pull_requests- 獲取 PR 列表github_get_pull_request- 獲取 PR 詳情github_create_pull_request- 創建 PRgithub_get_pr_files- 獲取 PR 文件變更github_get_pr_comments- 獲取 PR 評論github_create_pr_comment- 發表 PR 評論
範例使用案例
CI/CD 監控
1. 查看最近的工作流運行 → github_get_workflow_runs
2. 檢查失敗的任務 → github_get_workflow_run_jobs
3. 分析失敗日誌 → github_get_job_logs
4. 創建修復 Issue → github_create_issuePull Request 工作流
1. 查看最近的 PR → github_get_pull_requests
2. 檢查特定 PR → github_get_pull_request
3. 查看文件變更 → github_get_pr_files
4. 添加評論回饋 → github_create_pr_commentIssue 管理
1. 查看開放的 Issues → github_get_issues
2. 查看特定 Issue → github_get_issue
3. 創建新 Issue → github_create_issue
4. 添加評論 → github_create_issue_comment故障排除
常見問題
GitHub API 連接失敗
檢查
GITHUB_ACCESS_TOKEN是否正確確認 Token 有足夠的權限
檢查網絡連接
API 速率限制
GitHub API 有速率限制
認證用戶:每小時 5000 次請求
未認證用戶:每小時 60 次請求
MCP 伺服器無法啟動
檢查 Node.js 版本 (建議 Node.js 18+)
確認所有依賴都已安裝
查看錯誤日誌
日誌和偵錯
伺服器啟動時會在 stderr 輸出日誌:
GitHub MCP server 已啟動倉庫標識格式
所有需要指定倉庫的操作都使用 owner/repo 格式,例如:
octocat/Hello-Worldfacebook/reactmicrosoft/vscode
貢獻指南
歡迎貢獻!請:
Fork 此專案
創建功能分支
提交您的變更
創建 Pull Request
授權條款
MIT License - 詳見 LICENSE 文件
Available Tools
20 toolsgithub_create_issueC
創建新問題
| Name | Required | Description | Default |
|---|---|---|---|
| body | No | 問題描述 | |
| title | Yes | 問題標題 | |
| labels | No | 標籤列表 | |
| assignees | No | 指派給用戶的用戶名列表 | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure, yet it says nothing about required permissions, authentication, side effects, or whether the issue can be later modified. For a mutation tool this is a notable gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short phrase with no wasted words, but it is so terse that brevity tips into under-specification rather than efficient front-loading.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With five parameters, no annotations, and no output schema, the description should convey more about the required repository format, authentication, and return behavior. As written it is inadequate for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the five parameters (repository, title, body, labels, assignees) are already documented in the schema. The description adds no additional parameter meaning, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (create) and resource (issue), so an agent can understand the core action. It does not, however, differentiate from siblings like github_create_issue_comment or github_create_pull_request in terms of when this is the right choice.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, nor any prerequisites or context. The agent must infer everything from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_create_issue_commentC
在問題中發表評論
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | 評論內容 | |
| repository | Yes | 倉庫標識 (格式: owner/repo) | |
| issueNumber | Yes | 問題編號 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It implies a write operation but says nothing about authorization requirements, whether the comment is attributed to the authenticated user, rate limits, or what happens on failure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with no waste and the purpose front-loaded, but the extreme brevity leaves it under-specified rather than genuinely concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter mutation tool with no annotations and no output schema, the description should at least convey the effect and any prerequisites. It conveys only the bare action, leaving significant gaps for an agent to fill by inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters (body, repository, issueNumber) are already documented in the schema. The description adds no parameter meaning beyond that, which is the expected baseline when the schema does the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('發表' = post) and resource ('評論' = comment) applied to an issue ('問題'), so the agent can tell this creates an issue comment. It does not explicitly contrast with the sibling github_create_pr_comment, but the tool name plus description make the target resource unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as github_create_pr_comment or github_create_issue. The agent must infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_create_pr_commentC
在 Pull Request 中發表評論
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | 評論內容 | |
| pullNumber | Yes | Pull Request 編號 | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, and it does not state that this is a write/mutating operation, what permissions or auth token are needed, whether the comment is attributed to an authenticated user, or what the response contains. Only the basic 'posts a comment' behavior is conveyed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with zero waste and the action front-loaded. It is efficient, though the brevity comes at the cost of the missing guidance noted in other dimensions rather than through deliberate economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutating tool with no annotations and no output schema, the description should at least convey what happens on success or failure and any auth requirement. It leaves all of that unspecified, which is inadequate given the schema and annotations provide no behavioral context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each of the three parameters (body, pullNumber, repository) documented in the schema, so the baseline is 3. The description adds no formatting constraints, body-length limits, or repository resolution details beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb (發表/post) and resource (評論 on a Pull Request), so an agent can tell it creates a PR comment. It does not distinguish itself from the sibling github_create_issue_comment, nor clarify how it relates to github_get_pr_comments, so differentiation is missing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no preconditions, and no mention of the alternative github_create_issue_comment. The agent must infer on its own that this is the PR-scoped variant versus the issue-scoped one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_create_pull_requestC
創建新的 Pull Request
| Name | Required | Description | Default |
|---|---|---|---|
| base | Yes | 目標分支名稱 | |
| body | No | Pull Request 描述 | |
| head | Yes | 源分支名稱 | |
| draft | No | 是否為草稿 | |
| title | Yes | Pull Request 標題 | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the bare action and omits permissions required, side effects, authentication needs, or whether the operation is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short phrase with no structure. While extremely concise, it is under-specified for a six-parameter mutation tool and does not front-load any useful context beyond the name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema is rich, but the tool is a complex write operation with no annotations and no output schema. The description does not compensate by explaining usage, behavior, or return expectations, leaving important context missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameter meanings are already documented in the input schema. The description adds no additional semantics for required fields such as repository, title, head, or base, making the baseline of 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '創建新的 Pull Request' simply restates the tool name github_create_pull_request in Chinese, making it a tautology. It adds no further scope or detail to distinguish it from sibling write tools such as github_create_issue or github_create_pr_comment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. It does not mention prerequisites, differences from github_create_issue, or when creating a pull request is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_commitC
獲取特定提交的詳細資訊
| Name | Required | Description | Default |
|---|---|---|---|
| sha | Yes | 提交的 SHA 值 | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, yet it discloses nothing beyond the basic read operation — no note on permissions, rate limits, or what '詳細資訊' actually includes. For a tool with zero structured safety hints, this is a notable gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with the resource front-loaded and no wasted words. It is efficient, though its brevity is also the source of the missing routing and behavioral detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, no annotations, and only two well-documented parameters, the definition is minimally viable. It omits what the returned '詳細資訊' contains and how this differs from the plural commit-listing sibling, so it is adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (sha, repository) are fully documented in the schema, including the owner/repo format. The description adds no syntax or format detail beyond that, which is the expected baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('獲取') and resource ('特定提交'), so the operation is unambiguous. However, it does not differentiate itself from the sibling github_get_commits (plural), which likely lists commits, so an agent must infer the singular-vs-list distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus github_get_commits, github_get_file_content, or any other sibling, and no preconditions or exclusions are given. The description only says what it does, not when to choose it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_commitsC
獲取倉庫的提交歷史
| Name | Required | Description | Default |
|---|---|---|---|
| sha | No | 分支名稱或提交 SHA | |
| since | No | 起始時間 (ISO 8601 格式) | |
| until | No | 結束時間 (ISO 8601 格式) | |
| per_page | No | 每頁顯示數量 | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full behavioral burden. It does not disclose read-only nature, pagination behavior, rate limits, authentication requirements, or any details about ordering or default limits. This is a significant gap for a list-retrieval tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no wasted words. However, it could be more front-loaded with key details, but for its length it is appropriately structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and five parameters, the description is far too sparse. An agent would not know if this returns all commits, how pagination works, whether it is safe to call, or how to filter effectively, making the definition incomplete for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning all 5 parameters are documented in the schema itself. The description adds no additional parameter semantics beyond the schema. A baseline of 3 is appropriate when the schema fully handles parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '獲取倉庫的提交歷史' (Get the repository's commit history) states a clear verb+resource: retrieving commit history. It distinguishes itself from the sibling github_get_commit which fetches a single commit. The only missing element is any mention of scope or filtering.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives like github_get_commit or how to apply filters such as since/until. The description only states what it does, leaving the agent to infer appropriate situations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_file_contentC
讀取倉庫中的特定文件內容
| Name | Required | Description | Default |
|---|---|---|---|
| ref | No | 分支或提交 SHA (預設: main) | main |
| filePath | Yes | 文件路徑 (例如: src/index.js) | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. Beyond implying a read, it says nothing about authentication requirements, how the content is returned (GitHub's API typically returns base64-encoded payloads), file-size or truncation limits, or error behavior for missing paths/refs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with no filler and the core action front-loaded. It is efficient, though its brevity also reflects the missing detail noted elsewhere.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description should explain return semantics (encoding, truncation) and any access requirements, but it does not. For a tool exposing three parameters and binary-ish content, this leaves meaningful gaps for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so repository format (owner/repo), filePath (with example), and ref default (main) are already documented in the schema. The description adds no additional meaning about parameter interaction, which is the expected baseline when the schema does all the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('讀取' + '特定文件內容'), so an agent immediately knows this retrieves file contents from a repo. It does not differentiate from siblings such as github_get_commit or github_get_repository, but no listed sibling actually returns raw file content, so ambiguity is low.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use guidance, no prerequisites, and names no alternatives. An agent must infer from the name alone that this is the tool for reading a single file rather than browsing commits or repositories.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_issueC
獲取特定問題的詳細資訊
| Name | Required | Description | Default |
|---|---|---|---|
| repository | Yes | 倉庫標識 (格式: owner/repo) | |
| issueNumber | Yes | 問題編號 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden. It implies a read operation but discloses nothing about authentication requirements, error behavior for missing issues or private repos, rate limits, or what '詳細資訊' actually contains. Too thin for a tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with no wasted words and the core purpose front-loaded. It is efficient, though its brevity borders on under-specification rather than crispness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema and no annotations mean the description should say more about what is returned and under what conditions. As written, an agent knows only that it retrieves 'details' for one issue, which is insufficient for a tool in a large sibling namespace.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters are documented in the schema (repository format owner/repo, issueNumber). The description adds no additional parameter meaning, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb ('獲取') and resource ('特定問題的詳細資訊'), so an agent knows it fetches a single issue. However, it does not differentiate from the sibling github_get_issues (list issues) or github_get_issue_comments, leaving the single-vs-many distinction to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this versus github_get_issues, github_get_issue_comments, or github_create_issue. There are no stated prerequisites, no exclusions, and no routing cues for a namespace with 19 siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_issue_commentsC
獲取問題的評論列表
| Name | Required | Description | Default |
|---|---|---|---|
| per_page | No | 每頁顯示數量 (預設 100) | |
| repository | Yes | 倉庫標識 (格式: owner/repo) | |
| issueNumber | Yes | 問題編號 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, yet it only implies a read operation. It says nothing about ordering, pagination behavior (despite a per_page param), rate limits, or authentication requirements for private repositories.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with zero filler. It is efficient, though its brevity edges toward under-specification rather than being a model of structured clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with fully documented parameters, the description is minimally adequate, but with no output schema and no annotations it should say more about the shape of the returned comment list and pagination expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with repository format (owner/repo), issueNumber, and per_page all documented in the schema itself. The description adds no additional parameter meaning, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('獲取問題的評論列表' — get an issue's comment list), so the agent knows exactly what is returned. It does not, however, distinguish itself from close siblings such as github_get_issue, github_get_pr_comments, or github_create_issue_comment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus github_get_issue or github_get_pr_comments, nor any stated prerequisites (e.g., issue must exist, whether pagination is needed). The intended usage is only weakly implied by the name and the word '評論'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_issuesC
獲取倉庫的問題列表
| Name | Required | Description | Default |
|---|---|---|---|
| state | No | 問題狀態 | open |
| labels | No | 標籤列表 | |
| per_page | No | 每頁顯示數量 | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It does not say whether the call is read-only, whether it paginates (the per_page parameter hints at it but no default-window behavior is explained), or how results are ordered. Only the bare purpose is conveyed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short, front-loaded sentence with zero redundancy or filler. It is efficient, though its brevity is close to under-specification rather than deliberate concision.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With four parameters, no annotations, and no output schema, the minimal description leaves real gaps: no pagination/ordering semantics, no authentication expectations, and no indication of what a result entry contains. It is not enough for a confidently correct call on a richer tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters (state, labels, per_page, repository) are already documented in the schema, including the state enum and the owner/repo format. The description adds nothing beyond that, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('獲取倉庫的問題列表' – get the repository's issue list), which is enough for an agent to distinguish it from the singular sibling github_get_issue. It does not, however, name or differentiate itself from any other sibling such as github_get_pull_requests or github_get_issue_comments.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this list tool versus github_get_issue (single issue) or the comment/PR tools. No prerequisites, no pagination advice, no exclusions are given; usage must be inferred entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_job_logsC
獲取工作流任務的日誌
| Name | Required | Description | Default |
|---|---|---|---|
| jobId | Yes | 任務 ID | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, yet it offers nothing beyond the one-line purpose. It does not disclose permissions required, whether logs are truncated or paginated, roughly how large the output may be, or behavior on a failed job.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with no wasted words and the purpose front-loaded. It is efficient, though the extreme brevity is closer to under-specification than to well-structured conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a log-retrieval tool with no output schema and no annotations, the description should explain at least how to obtain the jobId and what the returned logs look like. Neither is covered, leaving significant gaps for an agent calling it correctly the first time.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both params (jobId, repository) documented in the schema including the owner/repo format. The description adds no parameter meaning beyond what the schema already supplies, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (獲取/get) and resource (工作流任務的日誌/workflow job logs), which is clear. It does not explicitly differentiate itself from siblings such as github_get_workflow_run_jobs or github_get_workflow_run, leaving the agent to infer that this returns logs rather than job metadata.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, nor any prerequisite such as first calling github_get_workflow_run_jobs to obtain a valid jobId. The agent must infer the workflow entirely on its own.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_pr_commentsC
獲取 Pull Request 的評論列表
| Name | Required | Description | Default |
|---|---|---|---|
| per_page | No | 每頁顯示數量 (預設 100) | |
| pullNumber | Yes | Pull Request 編號 | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden, and it discloses almost nothing: no mention of pagination behavior, auth requirements, rate limits, or whether review comments and issue-level comments are both returned. 'Get a list' is the only behavior communicated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with no filler and the resource front-loaded. It is efficient, though the brevity veers into under-specification rather than tight conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool embedded among near-identical siblings (github_get_issue_comments, github_create_pr_comment, github_get_pr_files), the description omits the distinguishing context an agent needs. With no annotations and no output schema, it should at minimum clarify scope and pagination expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents repository (owner/repo), pullNumber, and per_page including its default. The description adds no meaning beyond the schema, which is the expected baseline when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The Chinese description states a specific verb+resource: retrieving a Pull Request's comment list. That is clear enough to identify the operation. It does not, however, differentiate itself from the sibling github_get_issue_comments, which is the likeliest confusion given GitHub treats PR comments as a variant of issue comments.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no indication of when to use this tool versus the many sibling read tools, nor any prerequisites (auth scope, whether a PR must exist). The agent must infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_pr_filesC
獲取 Pull Request 的文件變更
| Name | Required | Description | Default |
|---|---|---|---|
| pullNumber | Yes | Pull Request 編號 | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, and it says nothing about auth requirements, rate limits, pagination, or whether patch/diff content is included. For a tool that fetches potentially large file-diff payloads from a remote API, this is a notable gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with no filler, and the resource is front-loaded. It is efficient, though the brevity contributes to the missing usage and behavioral context rather than being a deliberate trade-off.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description is the only source of behavioral information, and it provides none about the return shape (file list, patches, pagination) or usage context. For a two-parameter read tool this is under-specified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both repository (owner/repo format) and pullNumber documented in the schema itself. The description adds no extra meaning about these parameters, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (獲取/get) and resource (Pull Request 的文件變更/file changes), so an agent knows exactly what it retrieves. However, it does not distinguish itself from siblings like github_get_pull_request or github_get_file_content, which an agent might reasonably confuse for the same data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no indication of when to use this tool versus alternatives such as github_get_file_content or github_get_pull_request. There are no prerequisites, exclusions, or routing hints, leaving selection entirely to inference from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_pull_requestB
獲取特定 Pull Request 的詳細資訊
| Name | Required | Description | Default |
|---|---|---|---|
| pullNumber | Yes | Pull Request 編號 | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only restates the retrieval purpose and discloses nothing about authentication needs, rate limits, error behavior, or return characteristics beyond the implied read-only nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no wasted words. The purpose is immediately clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter retrieval tool with a fully described schema and no output schema, the definition is largely complete enough to invoke correctly. It could add a bit more context about what details are returned or when to prefer it over sibling PR tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (repository and pullNumber) are already documented in the input schema. The description adds no additional parameter meaning, which is acceptable at the baseline when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (獲取) and resource (特定 Pull Request 的詳細資訊), making clear it retrieves details for one PR. It implicitly distinguishes itself from the sibling list tool github_get_pull_requests by saying '特定', but does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, when-not-to-use, or alternative routing is provided. The phrase '特定 Pull Request' implies retrieving a single PR's details, but the agent receives no explicit guidance such as preferring github_get_pull_requests for listings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_pull_requestsC
獲取 Pull Request 列表
| Name | Required | Description | Default |
|---|---|---|---|
| base | No | 目標分支 | |
| head | No | 源分支 (格式: user:ref-name) | |
| state | No | Pull Request 狀態 | open |
| per_page | No | 每頁顯示數量 | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, and it discloses almost nothing. It implies a read/list operation but says nothing about pagination, default result limits (per_page=20), or result ordering, which matters for a list endpoint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. It is efficient, though the brevity reflects under-specification rather than disciplined editing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Five parameters, zero annotations, and no output schema mean the description should explain filtering and result behavior; it does none of that. Given the missing safety and pagination context, it is not complete enough for confident invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all five parameters (repository, base, head, state, per_page) are already documented with formats and defaults. The description adds no additional parameter meaning, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb+resource: '獲取 Pull Request 列表' (get Pull Request list). However, it does not distinguish this list endpoint from the sibling github_get_pull_request (single) or github_get_pr_files, so an agent must rely on the name alone to separate them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no mention of alternatives, no prerequisites. The description offers no context on when to call this versus github_get_pull_request or github_get_pr_comments.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_repositoriesC
獲取 GitHub 倉庫列表
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | 排序方式 | updated |
| type | No | 倉庫類型 | owner |
| per_page | No | 每頁顯示數量 (預設 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It implies a read-only retrieval operation, but does not disclose pagination behavior, authentication requirements, rate limits, or what the returned list contains or how it is ordered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It is appropriately concise, though its brevity leaves important behavioral and usage context to other fields.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list tool with no annotations, no output schema, and three parameters, the description is too sparse. It does not explain what repositories are returned, pagination expectations, or when this list operation is preferable to github_get_repository.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents sort, type, and per_page with enum values and defaults. The description adds no parameter meaning beyond what the schema provides, which is the baseline 3 case.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('獲取' = fetch/get) and resource ('GitHub 倉庫列表' = GitHub repository list), making it clear this returns a list rather than a single repository. It is distinguishable from the singular sibling github_get_repository, though it does not explicitly name that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as github_get_repository, nor any stated prerequisites or exclusions. Usage must be inferred entirely from the tool name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_repositoryB
獲取特定倉庫的詳細資訊
| Name | Required | Description | Default |
|---|---|---|---|
| repository | Yes | 倉庫標識 (格式: owner/repo,例如: "octocat/Hello-World") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
沒有任何 annotations,描述須獨自承擔行為揭露責任,但僅說「獲取詳細資訊」,未說明回傳哪些欄位、是否需要認證、是否會受速率限制或權限影響。雖然「獲取」隱含唯讀操作,但缺乏更進一步的行為資訊。
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
單句極簡描述,動詞與資源前置,沒有任何冗餘字詞,對一個只有單一參數的簡單讀取工具而言恰到好處。
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
工具複雜度低(單一參數、無巢狀物件、無輸出 schema),描述雖簡短但足以讓代理理解用途;惟「詳細資訊」究竟包含什麼內容完全未交代,且無 annotations 輔助,仍有明顯缺口。
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
schema 描述覆蓋率為 100%,repository 參數已在 schema 中完整說明格式(owner/repo 及範例),描述未再補充任何參數層級資訊。依規則此情況基準即為 3 分。
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
明確的動詞「獲取」加上資源「特定倉庫」,清楚指出這是取得單一倉庫的詳細資訊,與兄弟工具 github_get_repositories(列表)隱含區隔。但未明確點名任何兄弟工具作為對照,因此未達 5 分。
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
完全沒有說明何時該用此工具、何時該改用 github_get_repositories 或 github_get_file_content 等替代工具,也沒有提及任何前置條件。使用時機只能靠工具名稱推斷。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_workflow_runC
獲取特定工作流運行的詳細資訊
| Name | Required | Description | Default |
|---|---|---|---|
| runId | Yes | 工作流運行 ID | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full behavioral burden, yet it only says it 'gets detailed information'. It does not confirm read-only nature, required scopes/permissions, rate-limit behavior, or what '詳細資訊' actually contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no wasted words. It is efficient, though its brevity is partly under-specification rather than disciplined concision.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description should compensate by explaining the return shape or at least the scope of '詳細資訊', but it does not. For a two-parameter fetch tool the definition is barely sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with runId and repository both documented in the schema (including the owner/repo format), so the baseline is 3. The description adds no additional parameter meaning such as valid run ID ranges or repository resolution rules.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb (獲取) and resource (特定工作流運行的詳細資訊), so an agent knows it retrieves one workflow run's details. However, it does not differentiate from close siblings such as github_get_workflow_runs (the list variant) or github_get_workflow_run_jobs, leaving the boundary to be inferred.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no indication of when to use this tool versus github_get_workflow_runs or github_get_workflow_run_jobs, nor any prerequisites. Usage must be inferred entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_workflow_run_jobsB
獲取工作流運行的任務列表
| Name | Required | Description | Default |
|---|---|---|---|
| runId | Yes | 工作流運行 ID | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full behavioral burden. It only states that it lists jobs and does not disclose read-only status, authentication requirements, pagination behavior, or rate limits. This is minimal disclosure for a list endpoint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It is appropriately sized for a simple list tool and immediately conveys the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple and the schema is fully documented, but the description does not mention pagination or return format, which are useful for list endpoints. No output schema or annotations exist to fill these gaps, so the definition is adequate but incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (runId and repository) are already well documented. The description adds no additional parameter meaning beyond what the schema provides, making the baseline score of 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'get' plus 'list of jobs for a workflow run.' It is clear what the tool returns and its scope is distinguishable from siblings like github_get_job_logs or github_get_workflow_run. However, it does not explicitly name or differentiate itself from those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as github_get_job_logs or github_get_workflow_run. The purpose can be inferred from the name and description, but no explicit context or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
github_get_workflow_runsC
獲取倉庫的 GitHub Actions 工作流運行
| Name | Required | Description | Default |
|---|---|---|---|
| branch | No | 分支名稱 | |
| status | No | 運行狀態 | |
| per_page | No | 每頁顯示數量 | |
| repository | Yes | 倉庫標識 (格式: owner/repo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, yet it only says 'get'. It does not disclose that this is a paginated list operation, whether it requires authentication, how results are ordered or scoped, or any rate-limit behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short clause with no wasted words, which is good, but it is under-specified rather than genuinely concise. There is no front-loaded scope or filtering context to anchor the agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 4-parameter list tool with no annotations and no output schema, the description is too thin. It omits pagination behavior, result ordering, and how it relates to its near-identical siblings, which an agent needs in order to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with branch, status (enum), per_page, and repository all documented in the schema itself. The description adds no parameter meaning beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb+resource: getting a repository's GitHub Actions workflow runs. It is understandable in isolation, but it does not distinguish this list-style tool from the closely-named sibling github_get_workflow_run (singular detail) or github_get_workflow_run_jobs, leaving ambiguity about which tool an agent should pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of alternatives. With siblings like github_get_workflow_run and github_get_workflow_run_jobs in the same namespace, the absence of routing guidance is a real gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
20 tool updates
v1.0.0- First observed
github_create_issue - First observed
github_create_issue_comment - First observed
github_create_pr_comment - First observed
github_create_pull_request - First observed
github_get_commit - First observed
github_get_commits - First observed
github_get_file_content - First observed
github_get_issue - First observed
github_get_issue_comments - First observed
github_get_issues - First observed
github_get_job_logs - First observed
github_get_pr_comments - First observed
github_get_pr_files - First observed
github_get_pull_request - First observed
github_get_pull_requests - First observed
github_get_repositories - First observed
github_get_repository - First observed
github_get_workflow_run - First observed
github_get_workflow_run_jobs - First observed
github_get_workflow_runs
TDQS
Scored across 20 tools
Most tools have clearly distinct resource+action targets, and the singular/plural distinction between list and detail tools (get_issues vs get_issue) is understandable. Minor ambiguity exists between the workflow_run and workflow_runs tools and between job logs and workflow run jobs, but descriptions largely disambiguate.
The github_ prefix and verb_noun pattern is applied consistently across most tools, making the surface predictable. However, the set mixes full names and abbreviations for the same resource (get_pull_request vs get_pr_files/get_pr_comments), which is an avoidable inconsistency.
20 tools is on the heavier side but justified by the breadth of the GitHub domain (repos, issues, PRs, commits, workflows, files). Each tool maps to a distinct read or action, so the count stays reasonable rather than bloated.
The surface is read-heavy and covers listing/detail/creation for issues and PRs, plus comments, files, and workflow runs. Notable gaps remain: no update or close for issues/PRs, no merge_pull_request, no release/repo creation, and no search, which will cause dead ends for common write workflows.
Maintenance
Related MCP Connectors
Access the GitHub API, enabling file operations, repository management, search functionality, and…
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
Manage repositories, users, releases, and automate GitHub workflows
Read and write KukGit repositories, files, issues and pull requests from an AI assistant.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables comprehensive GitHub operations through natural language including file management, repository administration, issue tracking, and advanced code searching.4746 npm1MIT
- AlicenseBqualityDmaintenanceEnables interaction with GitHub repositories through the GitHub API, allowing file operations, repository management, issue tracking, and code search through natural language commands.333 npm4MIT
- AlicenseNot gradedqualityDmaintenanceEnables comprehensive interaction with the GitHub API, including file operations, repository management, issue tracking, pull request workflows, and advanced search functionality across code, issues, and users.88,163 npmMIT
- AlicenseNot gradedqualityNot gradedmaintenanceEnables comprehensive interaction with GitHub repositories, including code management, issues, pull requests, and full GitHub Actions workflow control with triggering, monitoring, and artifact management capabilities.103 npm-