Skip to main content
Glama
joalbrecht

Capitol Ledger — Congressional Stock Disclosures

get_portfolio_changes

Read-only

Retrieve purchases, sales, and weight changes for a saved report period by passing the portfolio result's report_id; inspect coverage warnings to validate coverage.

Instructions

Get purchases, sales, and weight changes for a saved report period; inspect coverage warnings.

Pass the portfolio result's report_id to use exactly the same period.

Input Schema

NameRequiredDescriptionDefault
as_ofNo
report_idNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered externally. The description adds that coverage warnings are included and that report_id preserves the saved period, but it does not describe return format, limitations, or data coverage details.

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

Conciseness5/5

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

The description is two focused sentences with no wasted text. The main purpose is front-loaded, and the second sentence gives a concrete usage instruction.

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

Completeness3/5

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

The tool has an output schema and annotations, reducing the description's burden. Still, for a 2-parameter tool with 0% schema description coverage, the description leaves as_of unexplained and does not clarify the choice between report_id and as_of.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for both parameters. It explains report_id's intended use for matching the portfolio report period, but it does not explain as_of at all, leaving one of two parameters undocumented in both schema and description.

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

Purpose4/5

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

The description states a specific verb and resource: it gets purchases, sales, and weight changes for a saved report period, and also surfaces coverage warnings. It is clear on its own, but it does not explicitly distinguish itself from sibling tools such as get_portfolio.

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

Usage Guidelines3/5

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

The description provides useful usage context by saying to pass the portfolio result's report_id to reuse exactly the same period. However, it does not say when to choose this tool over get_portfolio or search_disclosures, nor does it explain when to use as_of instead of report_id.

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