Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Feature Request: High-level helper tools for GitHub Projects V2 (e.g. move_issue_to_column)

未关闭
#2,603 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
5/5
预计耗时
一周以上
新手友好度
45/100
Issue 类型
功能
描述清晰度
基本清楚
活跃度
活跃
技术栈
github, go, graphql
领域
api, tooling

调研方向

首先阅读现有的 add_project_item 和 update_project_item_field 工具,以及 issue 中提议的参数和查找流程。定义能够解析 Projects、Items、Fields 和状态选项的高级 Project helpers 的范围和行为,然后验证最终的工具支持所描述的 issue-to-project 和状态移动工作流。

由索引模型根据 Issue 内容生成。

描述

request ai review

Currently, the github-mcp-server provides lower-level Projects V2 tools such as add_project_item and update_project_item_field.

However, these tools are highly dependent on raw GraphQL Global Node IDs (such as item_id, field_id, option_id, etc.) which are difficult for AI agents to retrieve, resolve, and manage dynamically.

For example, to move an issue (e.g. #42 in repository owner/repo) to a project board (e.g. Project Number 1 / Title "Development") in the "In Progress" status column, an AI agent currently has to perform multiple manual lookups:

  1. Fetch the project list or ID.
  2. Fetch the project items to locate the global node ID of the issue item.
  3. Query the project fields to locate the Status field ID and the specific option ID matching "In Progress".
  4. Call update_project_item_field with these raw GraphQL node IDs.

This is highly error-prone, requires multiple API round-trips, and makes Projects integration fragile for AI agents.

Proposed Feature:

We would love to see high-level wrapper tools that automate these lookups. For example:

  1. add_issue_to_project:

    • Parameters:
      • project_number (int) or project_id (string)
      • repository_owner (string)
      • repository_name (string)
      • issue_number (int)
    • Behavior: Automatically resolves the issue's global node ID and adds it to the specified project.
  2. move_project_item (or update_project_item_status):

    • Parameters:
      • project_number (int) or project_id (string)
      • repository_owner (string)
      • repository_name (string)
      • issue_number (int) (or pull_request_number / item_id)
      • status_name (string, e.g. "In Progress", "Done")
    • Behavior: Under the hood, resolves the item ID, finds the Project's "Status" field ID, finds the option ID matching the string status_name, and performs the update.

These higher-level helper tools would make Projects V2 management significantly easier and more robust for AI agents using the Model Context Protocol.

主要语言
Go
星标
33.1k
派生
5k
平均合并
2 天 1 小时
30 天内合并 PR
25

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

github/github-mcp-server 的其他 Issue

查看 github/github-mcp-server 的全部 Issue

相似的 Issue

更多 Go Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。