Describe the feature or problem you'd like to solve
There's currently no tool in the GitHub MCP server to read an issue's or pull request's timeline events. That means an agent can't tell when a review was requested (or re-requested) on a PR.
The data exists: GitHub shows it in the PR UI, and the REST API returns it via the Timeline endpoint (GET /repos/{owner}/{repo}/issues/{issue_number}/timeline) as review_requested / review_request_removed events with created_at, requested_reviewer and review_requester. None of the current tools expose it.
We hit this building a review-tracking agent in our project management system, which talks to GitHub only through this MCP server. The agent has to figure out which PRs are waiting on a re-review, meaning the author re-requested review after the reviewer's last review. Without the request timestamp it can't reliably tell a re-review apart from a stale PR.
Proposed solution
Add a read-only tool, e.g. list_issue_timeline_events (or get_pull_request_timeline), that wraps the Timeline endpoint:
- Inputs:
owner, repo, issue_number / pullNumber, optional event_types filter (e.g. ["review_requested", "review_request_removed"]), plus standard pagination
- Output: event type,
created_at, actor, and event-specific fields (requested_reviewer / requested_team, review_requester)
Another option is to add a timeline method to the existing pull_request_read / issue_read tools.
Benefit: agents can reason about when things happened on a PR/issue, not just its current state. Review SLAs, re-review detection and reviewer workload reporting all depend on this. It's read-only, so it fits the existing permission model.
Describe the feature or problem you'd like to solve
There's currently no tool in the GitHub MCP server to read an issue's or pull request's timeline events. That means an agent can't tell when a review was requested (or re-requested) on a PR.
The data exists: GitHub shows it in the PR UI, and the REST API returns it via the Timeline endpoint (
GET /repos/{owner}/{repo}/issues/{issue_number}/timeline) asreview_requested/review_request_removedevents withcreated_at,requested_reviewerandreview_requester. None of the current tools expose it.We hit this building a review-tracking agent in our project management system, which talks to GitHub only through this MCP server. The agent has to figure out which PRs are waiting on a re-review, meaning the author re-requested review after the reviewer's last review. Without the request timestamp it can't reliably tell a re-review apart from a stale PR.
Proposed solution
Add a read-only tool, e.g.
list_issue_timeline_events(orget_pull_request_timeline), that wraps the Timeline endpoint:owner,repo,issue_number/pullNumber, optionalevent_typesfilter (e.g.["review_requested", "review_request_removed"]), plus standard paginationcreated_at, actor, and event-specific fields (requested_reviewer/requested_team,review_requester)Another option is to add a
timelinemethod to the existingpull_request_read/issue_readtools.Benefit: agents can reason about when things happened on a PR/issue, not just its current state. Review SLAs, re-review detection and reviewer workload reporting all depend on this. It's read-only, so it fits the existing permission model.