Skip to main content
Glama

AStockEvent

scan_recent_events

Discover one filing event type across companies using linked filing dates within the last seven Beijing calendar days including today. Dates omitted use this whole window; one omitted end uses the corresponding allowed boundary. Partial overlap is clamped; reversed or wholly outside dates are errors. effective_since/effective_until report the actual dates. A new filing mentioning an old case qualifies without claiming new case progress.

Call this for market-wide recent filings. Do NOT use it for a full company state. Each event appears once, newest matching filing date first. matched_filing contains the qualifying filing id, date and its own PDF link; root source_pdf_url and phase describe current event context, not historical state at the selected date. phase filters current stage. At most 100 events per page. Pass cursor to continue; only non-null cursor means another page. Omit dates/phase on continuation or repeat their effective values; changing filters requires a fresh call. event_type must remain the same; limit/locale may change. matched_count counts the whole frozen window, so truncated can remain true on the last page. Windows that move outside the allowed dates fail with cursor_expired; restart without cursor. Results are a dynamic view, not a snapshot: new filings, stage changes or merges can move events between pages. Poll from the first page and deduplicate by aevt_. Empty results mean no matches after this position, not an empty database. coverage_since is data coverage, not permission to scan history. For a known company/entity use get_entity_state; for a known event use get_event_with_context.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo1..100. Default 50.
phaseNoRestrict to one stage of the case. Must belong to the chosen event_type; the error message lists the valid values.
sinceNoInclusive start date, YYYY-MM-DD.
untilNoInclusive end date, YYYY-MM-DD (the whole day counts).
cursorNoReturn the previous cursor unchanged to continue within its frozen dates.
localeNoLanguage of data labels only.en
event_typeYesWhich filing type to scan. Call list_coverage for the current scope.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
cursorYesContinuation within the frozen effective dates; null means no next page. An expired window is an error: restart without cursor.
eventsYes
truncatedYesTrue when the whole-window count exceeds this page's size, even on the last page. Only a non-null cursor means another page exists.
disclaimerYes
matched_countYesHow many events matched in the whole window, before the limit was applied.
coverage_sinceNo
window_clampedYesRequested dates were intersected with the allowed recent window.
effective_sinceYesInclusive matching filing start date actually queried, YYYY-MM-DD.
effective_untilYesInclusive matching filing end date actually queried, YYYY-MM-DD.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full behavioral burden and does so unusually well: it discloses cursor expiry behavior, that only a non-null cursor signals another page, that truncated can remain true on the last page, that results are a dynamic view rather than a snapshot, deduplication by aevt_, and that empty results mean no matches at this position rather than an empty database. It also explains the distinction between matched_filing (historical) and root-level source_pdf_url/phase (current context). Auth and rate limits are the only unmentioned traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core purpose and scope, then ordered into usage, window semantics, pagination, and routing. The text is dense and long, but nearly every clause carries operational information (clamping, cursor expiry, dedup key). A few sentences could be tightened, but nothing is padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 7-parameter, paginated, filter-bound tool with no annotations, the description covers purpose, window rules, error conditions, pagination lifecycle, result dynamism, and sibling routing. An output schema exists but the description still pre-empts the most confusing return fields, so an agent has everything needed to call and iterate correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3, but the description adds real semantics the schema lacks: default window behavior when since/until are omitted, the one-sided-omission boundary rule, clamping on partial overlap, and errors for reversed or out-of-range dates, plus the effective dates returned. It also clarifies that event_type must stay fixed across pagination while limit/locale may change. Only the phase/cursor interplay is left mostly to the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a precise verb and resource: 'Discover one filing event type across companies using linked filing dates within the last seven Beijing calendar days'. It also distinguishes itself from siblings by scope (market-wide recent filings vs. full company state) and explicitly names get_entity_state and get_event_with_context as the alternatives. An agent can route correctly without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit when-to-use ('Call this for market-wide recent filings'), explicit when-not ('Do NOT use it for a full company state'), and named alternatives for both the known-company and known-event cases. The continuation rules (omit dates/phase or repeat effective values; changing filters requires a fresh call) further disambiguate correct invocation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.