René's URL Explorer Experiment


Title: `pull_request_read` methods return unbounded payloads that crash IDE clients; `get_review_comments` pagination is broken (`after` param missing from schema) · Issue #2122 · github/github-mcp-server · GitHub

Open Graph Title: `pull_request_read` methods return unbounded payloads that crash IDE clients; `get_review_comments` pagination is broken (`after` param missing from schema) · Issue #2122 · github/github-mcp-server

X Title: `pull_request_read` methods return unbounded payloads that crash IDE clients; `get_review_comments` pagination is broken (`after` param missing from schema) · Issue #2122 · github/github-mcp-server

Description: Problem Several pull_request_read methods return responses large enough to crash IDE-based MCP clients (Cursor, VS Code). The root causes are: get_review_comments advertises cursor-based pagination but doesn't expose the after parameter ...

Open Graph Description: Problem Several pull_request_read methods return responses large enough to crash IDE-based MCP clients (Cursor, VS Code). The root causes are: get_review_comments advertises cursor-based pagination...

X Description: Problem Several pull_request_read methods return responses large enough to crash IDE-based MCP clients (Cursor, VS Code). The root causes are: get_review_comments advertises cursor-based pagination...

Opengraph URL: https://github.com/github/github-mcp-server/issues/2122

X: @github

direct link

Domain: github.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"`pull_request_read` methods return unbounded payloads that crash IDE clients; `get_review_comments` pagination is broken (`after` param missing from schema)","articleBody":"## Problem\n\nSeveral `pull_request_read` methods return responses large enough to crash IDE-based MCP clients (Cursor, VS Code). The root causes are:\n\n1. **`get_review_comments` advertises cursor-based pagination but doesn't expose the `after` parameter in its schema**, making pagination impossible\n2. **Three methods (`get`, `get_diff`, `get_reviews`) have no pagination support at all**, returning arbitrarily large payloads\n3. **There is no way for the client to control response size** for these methods — `perPage` and `page` are accepted but silently ignored\n\n### Impact\n\nMCP tool responses are loaded entirely into the AI agent's context memory. When a single response exceeds ~50-100 KB, IDE clients like Cursor spike to 100% CPU, become unresponsive, and require a hard restart. This is reproducible and happens consistently on PRs with CodeRabbit or similar AI reviewer comments.\n\nThis effectively makes `pull_request_read` unsafe to call from IDE-based MCP clients for any non-trivial PR.\n\n## Detailed breakdown\n\n### 1. `get_review_comments`: `after` parameter missing from schema\n\nThe method description says:\n\n\u003e Use cursor-based pagination (perPage, after) to control results.\n\nBut the tool's `inputSchema` only exposes:\n\n```json\n\"page\": { \"type\": \"number\", \"description\": \"Page number for pagination (min 1)\", \"minimum\": 1 },\n\"perPage\": { \"type\": \"number\", \"description\": \"Results per page for pagination (min 1, max 100)\", \"minimum\": 1, \"maximum\": 100 }\n```\n\nThere is no `after` parameter. As a result:\n\n- `perPage: 1` returns only the first thread — and there's no way to advance to the next\n- `page: 2, 3, ...` is silently ignored — every page returns the same first thread\n- The only way to get more than one thread is to increase `perPage`, which risks returning a payload large enough to crash the client\n- Agents discover this at runtime, then rationalize increasing `perPage` (\"there are only 5 threads, it should be fine\"), which triggers the crash\n\n### 2. `method: \"get\"` — no pagination, unbounded payload\n\nReturns the entire PR object including body, labels, and all metadata. A PR with a CodeRabbit review summary in the body alone can exceed 100 KB. There are no parameters to limit the response. This is often the first call an agent makes and is enough to crash Cursor by itself.\n\n### 3. `method: \"get_diff\"` — no pagination, unbounded payload\n\nReturns the full diff. Already reported in #625.\n\n### 4. `method: \"get_reviews\"` — no pagination, unbounded payload\n\nReturns full review bodies. A single CodeRabbit review can contain a full summary of all findings, code suggestions, and walkthrough — easily 50+ KB.\n\n## Reproduction\n\n1. Open Cursor IDE with the GitHub MCP server configured\n2. Open a PR that has 5+ CodeRabbit review comment threads\n3. Ask the agent: \"Resolve the PR comments on this branch\"\n4. The agent will call `pull_request_read` with `method: \"get_review_comments\"`\n5. On receiving the response, Cursor spikes to 100% CPU and becomes unresponsive\n\nAlternatively, calling `pull_request_read` with `method: \"get\"` on any PR with a long body (CodeRabbit review summary) is sufficient to trigger the hang.\n\n## Proposed fixes\n\n### Fix 1: Expose the `after` parameter for `get_review_comments`\n\nAdd `after` (string, optional) to the tool's `inputSchema` so cursor-based pagination actually works as documented. This would allow agents to safely fetch one thread at a time.\n\n### Fix 2: Add pagination to `get`, `get_reviews`, and `get_diff`\n\nThese methods currently return unbounded payloads. Options:\n\n- **`get`**: Add a `fields` parameter to select which PR properties to return (e.g., `number,title,state,headRefName` without `body`)\n- **`get_reviews`**: Support `perPage`/`page` pagination like `get_comments` does\n- **`get_diff`**: Support file-based or chunk-based pagination (as proposed in #625)\n\n### Fix 3: Response size limit with truncation\n\nAs a safety net, the MCP server could enforce a maximum response size (e.g., 25 KB) and truncate with a clear indicator:\n\n```json\n{\n  \"truncated\": true,\n  \"truncatedAt\": 25000,\n  \"message\": \"Response truncated. Use pagination parameters to retrieve remaining results.\"\n}\n```\n\nThis would prevent any single response from crashing the client, regardless of which method is called.\n\n## Related issues\n\n- #567 — PR review comments too large, need pagination (open)\n- #625 — `get_pull_request_diff` needs pagination (open)\n- #1286 — Excessive context usage for tools (closed)\n\n## Environment\n\n- **MCP Server**: GitHub MCP via `https://api.githubcopilot.com/mcp/`\n- **Client**: Cursor IDE (v0.48+)\n- **OS**: macOS\n\n---\n\nThat's the full issue. It references the existing issues (#567, #625, #1286) so the maintainers can see the pattern, but frames the problem more broadly — it's not just \"pagination would be nice,\" it's \"your tool actively crashes IDE clients because of unbounded responses and a broken schema.\" The three proposed fixes give them options at different levels: schema fix, pagination support, and a safety-net truncation mechanism.","author":{"url":"https://github.com/NielsKSchjoedt","@type":"Person","name":"NielsKSchjoedt"},"datePublished":"2026-03-02T15:29:36.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":1},"url":"https://github.com/2122/github-mcp-server/issues/2122"}

route-pattern/_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format)
route-controllervoltron_issues_fragments
route-actionissue_layout
fetch-noncev2:8ea3ce3f-1589-7a15-534d-1875511fed46
current-catalog-service-hash81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114
request-idBDEE:1DD66:30CF2F:450FC1:6A62F432
html-safe-nonce84fa12f5c0d3e4532d0b159f029ddf552351ed7c9e3760fbc1f639abd8ef6fef
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCREVFOjFERDY2OjMwQ0YyRjo0NTBGQzE6NkE2MkY0MzIiLCJ2aXNpdG9yX2lkIjoiNjg4NzM0NDExODQxMjcwODM0IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmacd3049e8660b97d67aa761b47c5cf9fed4c7d2ee3c21864bcc34a5234503acde1
hovercard-subject-tagissue:4011862410
github-keyboard-shortcutsrepository,issues,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/issues_fragments/issue_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/github/github-mcp-server/2122/issue_layout
twitter:imagehttps://opengraph.githubassets.com/78f3cfa6694d7a7f1a2d168f116471871fa2810098b6d07d70e70bccde351b38/github/github-mcp-server/issues/2122
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/78f3cfa6694d7a7f1a2d168f116471871fa2810098b6d07d70e70bccde351b38/github/github-mcp-server/issues/2122
og:image:altProblem Several pull_request_read methods return responses large enough to crash IDE-based MCP clients (Cursor, VS Code). The root causes are: get_review_comments advertises cursor-based pagination...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernameNielsKSchjoedt
hostnamegithub.com
expected-hostnamegithub.com
Noneb415018e190e73858133ddcaa36acce7b3f3572fe54dda84bd3b21a6ec714c30
turbo-cache-controlno-preview
go-importgithub.com/github/github-mcp-server git https://github.com/github/github-mcp-server.git
octolytics-dimension-user_id9919
octolytics-dimension-user_logingithub
octolytics-dimension-repository_id942771284
octolytics-dimension-repository_nwogithub/github-mcp-server
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id942771284
octolytics-dimension-repository_network_root_nwogithub/github-mcp-server
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release22f98521e99f504294ab0812b66104d50eb75a70
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/github/github-mcp-server/issues/2122#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fgithub%2Fgithub-mcp-server%2Fissues%2F2122
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
Code QualityEnforce quality at mergehttps://github.com/features/code-quality
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fgithub%2Fgithub-mcp-server%2Fissues%2F2122
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fissues_fragments%2Fissue_layout&source=header-repo&source_repo=github%2Fgithub-mcp-server
Reloadhttps://github.com/github/github-mcp-server/issues/2122
Reloadhttps://github.com/github/github-mcp-server/issues/2122
Reloadhttps://github.com/github/github-mcp-server/issues/2122
Please reload this pagehttps://github.com/github/github-mcp-server/issues/2122
github https://github.com/github
github-mcp-serverhttps://github.com/github/github-mcp-server
Notifications https://github.com/login?return_to=%2Fgithub%2Fgithub-mcp-server
Fork 4.6k https://github.com/login?return_to=%2Fgithub%2Fgithub-mcp-server
Star 31.7k https://github.com/login?return_to=%2Fgithub%2Fgithub-mcp-server
Code https://github.com/github/github-mcp-server
Issues 172 https://github.com/github/github-mcp-server/issues
Pull requests 162 https://github.com/github/github-mcp-server/pulls
Discussions https://github.com/github/github-mcp-server/discussions
Actions https://github.com/github/github-mcp-server/actions
Models https://github.com/github/github-mcp-server/models
Security and quality 2 https://github.com/github/github-mcp-server/security
Insights https://github.com/github/github-mcp-server/pulse
Code https://github.com/github/github-mcp-server
Issues https://github.com/github/github-mcp-server/issues
Pull requests https://github.com/github/github-mcp-server/pulls
Discussions https://github.com/github/github-mcp-server/discussions
Actions https://github.com/github/github-mcp-server/actions
Models https://github.com/github/github-mcp-server/models
Security and quality https://github.com/github/github-mcp-server/security
Insights https://github.com/github/github-mcp-server/pulse
#2489https://github.com/github/github-mcp-server/pull/2489
pull_request_read methods return unbounded payloads that crash IDE clients; get_review_comments pagination is broken (after param missing from schema)https://github.com/github/github-mcp-server/issues/2122#top
#2489https://github.com/github/github-mcp-server/pull/2489
bugSomething isn't workinghttps://github.com/github/github-mcp-server/issues?q=state%3Aopen%20label%3A%22bug%22
request ai reviewhttps://github.com/github/github-mcp-server/issues?q=state%3Aopen%20label%3A%22request%20ai%20review%22
https://github.com/NielsKSchjoedt
NielsKSchjoedthttps://github.com/NielsKSchjoedt
on Mar 2, 2026https://github.com/github/github-mcp-server/issues/2122#issue-4011862410
#625https://github.com/github/github-mcp-server/issues/625
Add pagination support for get_pull_request_diff to handle large PRs #625https://github.com/github/github-mcp-server/issues/625
PR Review comments too large, need to be able to paginate them #567https://github.com/github/github-mcp-server/issues/567
Add pagination support for get_pull_request_diff to handle large PRs #625https://github.com/github/github-mcp-server/issues/625
Excessive context usage for tools #1286https://github.com/github/github-mcp-server/issues/1286
#567https://github.com/github/github-mcp-server/issues/567
#625https://github.com/github/github-mcp-server/issues/625
#1286https://github.com/github/github-mcp-server/issues/1286
bugSomething isn't workinghttps://github.com/github/github-mcp-server/issues?q=state%3Aopen%20label%3A%22bug%22
request ai reviewhttps://github.com/github/github-mcp-server/issues?q=state%3Aopen%20label%3A%22request%20ai%20review%22
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.