search_issue_events can't page past 100 events

Open
#2,143 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
74/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Tech stack
typescript

Research direction

Start with the tool schema in packages/mcp-core/src/tools/catalog/search-issue-events.ts:121-125 and the API client in packages/mcp-core/src/api-client/client.ts:3864-3901. Trace how the Sentry response’s Link header is handled and compare with tools that already accept a cursor, such as find_projects. Done when callers can request subsequent event pages and the returned events no longer stop at 100.

Written by the indexing model from the issue text.

Description

search_issue_events caps limit at 100 and has no cursor input, so an agent can't cover an issue with more events than that in the window. The Sentry endpoint it calls paginates; the MCP drops the cursor.

  • Tool schema: limit is .max(100) and there is no cursor param (packages/mcp-core/src/tools/catalog/search-issue-events.ts:121-125).
  • API client sends only per_page: limit and returns data, so the Link header cursor is lost (packages/mcp-core/src/api-client/client.ts:3864-3901).
  • Sentry GET /organizations/{org}/issues/{issue}/events/ uses self.paginate(..., paginator=GenericOffsetPaginator(...)) (getsentry/sentry src/sentry/issues/endpoints/group_events.py:212-216 @ 419d3dc).
  • Observed in a hosted MCP call (server 0.42.0, Claude): limit=100, period=7d returned exactly 100 events with no note that more exist, for an issue with ~850 events in that window.

Reported through MCP user feedback (MCP-SERVER-GN2). Related: other tools already take a cursor (find_projects, find_organizations, find_dashboards).

via Sentry.

--

View Session [Sentry]

Dominant language
TypeScript
Stars
961
Forks
179
Avg merge
15h 33m
Merged PRs (30d)
476

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from getsentry/toolkit

All issues in getsentry/toolkit

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.