Skip to main content
Glama

congress_trades

US Congress stock transactions from official Senate ePTR and House Clerk disclosures (public domain). Every record carries happened_at (transaction date), disclosed_at (filing date) and observed_at (when this pipeline first saw it). Because the STOCK Act permits ~45 days between trade and disclosure, disclosed_at is the field to use for point-in-time work. Senate data is parsed to ticker level; House filings are metadata only.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "congress_trades"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameNoSubstring match on member name
paidNotrue = request the pay-per-call (x402) quote or the live tier. Without a payment attached the call returns the x402 PaymentRequired object as an isError result; attach the signed payment at _meta["x402/payment"] (or the PAYMENT-SIGNATURE header) and retry. Omit for the free, delayed tier.
sinceNoOnly transactions on/after this YYYY-MM-DD
tickerNoFilter to one ticker, e.g. NVDA
chamberNo
tickersNoComma-separated tickers (max 100)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / paid
      Added value: +{
      +  "description": "true = request the pay-per-call (x402) quote or the live tier. Without a payment attached the call returns the x402 PaymentRequired object as an isError result; attach the signed payment at _meta[\"x402/payment\"] (or the PAYMENT-SIGNATURE header) and retry. Omit for the free, delayed tier.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / tickers
      Added value: +{
      +  "description": "Comma-separated tickers (max 100)",
      +  "type": "string"
      +}
  2. First observed

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden and does it well: it discloses pipeline-observation semantics (observed_at), the trade-to-disclosure lag, and a critical coverage difference (Senate parsed to ticker level, House metadata only). It omits rate limits, pagination and the paid-tier mechanics, which live only in the schema.

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?

Three dense sentences, all load-bearing: provenance, temporal fields, then the one analytical caveat an agent would otherwise get wrong. Front-loaded and free of filler.

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

Completeness4/5

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

With no output schema, the description usefully enumerates the three timestamp fields a caller will receive and flags the House/Senate granularity gap. Missing are return shape, volume/pagination expectations and tiering, so it is strong but not fully self-sufficient.

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

Parameters3/5

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

Schema coverage is 83%, so the schema already documents name/since/ticker/tickers/chamber/paid. The description's timestamp explanation concerns output fields rather than inputs and adds no syntax or format detail for the parameters themselves, so the baseline 3 applies.

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?

States a specific resource (US Congress stock transactions) with its authoritative sources (Senate ePTR, House Clerk disclosures). It is unambiguous against siblings like insider_buys/insider_sells, though it never names an alternative to contrast with, so it falls just short of a 5.

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

Usage Guidelines4/5

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

Gives real analytical guidance: disclosed_at is the field for point-in-time work because of the STOCK Act's ~45-day window, which steers the agent away from look-ahead bias. It stops short of explicit when-to-use-this-vs-sibling routing.

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.

Resources