Skip to content

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

@kidrov

Description

@kidrov

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.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions