get_ticker_activity
Which officials have disclosed trades in a given ticker.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| ticker | Yes |
Which officials have disclosed trades in a given ticker.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| ticker | Yes |
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the description does not contradict them. However, it adds minimal behavioral context beyond stating the purpose, such as no mention of pagination, sorting, or output format. With annotations covering safety, a score of 3 is appropriate for the limited added value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no extraneous information. Every word adds value, and it is front-loaded with the core action, earning a top score for efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite low complexity (2 params, no output schema), the description fails to specify return values (e.g., list of officials, trade details). Without output schema, the description should compensate but does not, leaving the agent without crucial information for invoking the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, meaning the description carries full burden. It clarifies that 'ticker' is the stock symbol, but provides no meaning for the optional 'limit' parameter (e.g., max number of results). This leaves ambiguity for the agent.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool returns officials who have disclosed trades for a given ticker. It uses a specific verb ('disclosed trades') and resource ('officials'), clearly distinguishing it from sibling tools like get_person_trades (trades by person) and list_recent_trades (recent trades).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. Context signals list sibling tools (e.g., search_trades, get_person_trades), but the description lacks any comparison or exclusion criteria, leaving the agent to infer appropriateness.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Each tool targets a distinct operation: aggregates provides summary stats, search_trades for general search, list_recent_trades for recent entries, get_person_trades by individual, get_ticker_activity by ticker, and list_conflicts for flagged conflicts. No overlapping functionality.
All tool names follow a consistent verb_noun pattern using snake_case: list_ for listing, get_ for retrieval, search_ for searching, and aggregates as a descriptive noun. No mixing of conventions or inconsistent verbs.
With 6 tools, the server is well-scoped for a trades disclosure API. Each tool covers a core operation (search, list recent, by person, by ticker, conflicts, aggregates) without being excessive or sparse.
The tool set covers primary read operations and provides filtering via shared parameters. Minor gaps include no explicit 'get single trade by ID' or a tool to list available branches/roles, but the core workflow is well-supported for typical queries.