Skip to main content
Glama

Committee Members

committee_members
Read-onlyIdempotent

ANSWERS "who is on the House Appropriations committee" / "roster of the Senate Judiciary committee" / "Democratic members of Ways and Means" / "chair of the Armed Services Subcommittee on Cybersecurity" — returns one committee OR SUBCOMMITTEE's full membership with each member's party, rank and title (Chair / Ranking Member / plain member), plus its own chair and ranking member. Identify it by committee_id (the exact id from committee_leadership, e.g. "HSWM" for House Ways and Means, or a subcommittee id like "SSAS21") OR by name — name matching searches SUBCOMMITTEE names too (bare, e.g. "Cybersecurity", or combined with the parent committee, e.g. "Senate Armed Services Subcommittee on Cybersecurity"), ranked exact-name-first; a looser match is disclosed as alternatives rather than silently dropped. A name matching only the parent committee (no subcommittee) is returned as the committee with parent_only_match: true and a note — never as if it were the more specific thing you asked for. A name with no chamber that matches equally well in BOTH the House and Senate (e.g. bare "Appropriations") returns both as matches rather than guessing; pass chamber to pick one directly. A subcommittee response names its parent separately (parent_committee_id/parent_committee_name) — its chair/ranking_member are its OWN, never the parent's. For the chair/ranking member of EVERY (top-level) committee at once, use committee_leadership instead — it is cheaper when you do not need the full roster, but does not search subcommittees. SOURCE: github.com/unitedstates/congress-legislators (public domain), baked periodically, current (119th) Congress only.

Input Schema

NameRequiredDescriptionDefault
nameNoCommittee name or partial name to search for, e.g. "Appropriations", "Judiciary", "Foreign Affairs".
chamberNoOptional: "house", "senate" or "joint" — disambiguates a name that matches more than one chamber.
committee_idNoExact committee or subcommittee id, e.g. "HSWM" (House Ways and Means) or "SSJU" (Senate Judiciary). Takes priority over name.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior3/5

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

Annotations already cover the safe-read profile (readOnly, idempotent, non-destructive), and the description adds genuinely useful non-obvious behavior: looser matches surface as `alternatives`, parent-only matches return `parent_only_match: true` with a note, subcommittee chair/ranking are its own not the parent's, and data is limited to the 119th Congress. However, it says nothing about response size limits, pagination, or cost/latency for large rosters.

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 concrete example queries then the return shape, then edge cases, then the sibling alternative and source — a sensible order. It is dense and parenthetical-heavy with all-caps emphasis, but nearly every clause carries a distinct behavioral fact rather than filler.

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?

No output schema exists, so the description must describe returns, and it does: per-member party/rank/title, the committee's own chair and ranking member, plus the `matches`, `alternatives` and `parent_only_match` response fields, and parent_committee_id/parent_committee_name for subcommittees. An agent has everything needed to call and interpret this 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 coverage is 100%, so the baseline is 3, but the description adds semantics the schema lacks: name matching also searches subcommittee names (bare or parent-qualified) and is ranked exact-name-first, and chamber is the direct disambiguator when a bare name matches both chambers. committee_id priority is already stated in the schema, so that portion is redundant.

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 specific verb+resource with scope: returns one committee OR subcommittee's full membership with party, rank, title, chair and ranking member. It explicitly differentiates from the sibling committee_leadership, which covers only top-level chairs/ranking members, so an agent can route correctly without opening a 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?

Gives explicit routing: use committee_leadership when you only need chairs/ranking members of every top-level committee and don't need the full roster; use this for full membership and subcommittees. It also states when to pass chamber (name matches both chambers) and that committee_id takes priority over name.

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.