Skip to main content
Glama

ExchangeRebel — pay-per-call APIs for AI agents (x402 on Solana)

fec_committees_lookup

$0.01 USDC on Solana per committee-level lookup - the payment buys one lookup in exactly one form: a committee profile by FEC committee id (identity factors plus committee-reported cycle aggregates and linked candidates), a name search (matching committees, capped at 25), or a cycle aggregate lookup (2024 or 2026), served from the D1 committee-level store (108,359 rows). Committee-level ONLY - itemized-donor data is statutorily barred (52 U.S.C. 30111(a)(4)) and never served.

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": "fec_committees_lookup"
  }
}

Input Schema

NameRequiredDescriptionDefault
cycleNoElection cycle: 2024 or 2026. Optional with committee_id / name_query; on its own it is form (c), the cycle aggregate lookup.
name_queryNoCommittee name search string, 2-80 characters. Form (b) of the lookup; mutually exclusive with committee_id.
committee_idNoFEC committee id: the letter C followed by 8 digits (e.g. C00401224). Form (a) of the lookup; mutually exclusive with name_query.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does substantial work: it discloses the price ($0.01 USDC on Solana), that payment buys exactly one lookup in one form, the 25-match cap on name search, and the backing store (D1, 108,359 rows). What is missing is failure behavior - whether a zero-match lookup or an invalid committee id still consumes the payment, and whether errors are refunded.

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?

It is a single dense sentence built from parentheticals, but the ordering is sensible: price first, then the enumerable forms, then the data source, then the hard exclusion. Every clause carries information; the only cost is readability, since the nested parentheses make it slower to parse than a short bulleted form list would be.

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?

There is no output schema, yet the description sketches the return shape per form - identity factors plus committee-reported cycle aggregates and linked candidates for the id form, a capped match list for search. Combined with pricing, caps, data source, and the statutory exclusion, an agent has everything needed to call it correctly and to predict what comes back.

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 description coverage is 100%, and the schema itself already documents the cycle values, the C+8-digit id format, the 2-80 character name range, and the mutual exclusivity of name_query and committee_id. The description restates the same three forms rather than adding new semantics, so it sits at the baseline for a fully documented 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?

The description states a specific verb and resource ('committee-level lookup') and enumerates the three exact request forms: profile by FEC committee id, name search, and cycle aggregate. It also draws a hard scope boundary ('Committee-level ONLY - itemized-donor data ... never served'), which separates it from any donor-level tool an agent might otherwise reach for.

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?

The three call forms and their parameter triggers are spelled out ('on its own it is form (c)'), giving clear context for how to invoke it. The exclusion of itemized-donor data also functions as a when-not. However, it never routes the agent to the obvious siblings (fec_committees_precheck / fec_committees_criteria) or says whether a preflight is required before paying.

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