get_roll_call_votes
Returns congressional roll-call vote metadata (House + Senate) from api.congress.gov. Use this when the user asks about: recent votes in either chamber, votes on a specific bill, votes by date range, or to chain to per-member positions via the source_data_url. Sources: api.congress.gov v3 for House votes; senate.gov XML (legislative/LIS/roll_call_lists/) for Senate votes — joined into one collection. Captures roll-call (recorded) votes only — voice votes and unanimous-consent passages aren't roll calls and don't appear here. v1A returns vote-level metadata: chamber, roll call number, vote type, result, the legislation being voted on (linked via bill_id), and links to the Clerk's authoritative XML data. Per-member positions (yea/nay/present/not voting per bioguide_id) live in the XML at source_data_url; agents fetch that directly when they need member detail. v1.1 will add a separate roll_call_member_votes tool/ collection for queryable per-member positions. Vote identifiers are stable composite keys: '{chamber}-{congress}- {session}-{rcNumber}', e.g., 'house-119-1-240' or 'senate-119-1-15'. Common vote_type values: 'Yea-And-Nay' (regular recorded vote), '2/3 Yea-And-Nay' (suspension of rules, requires 2/3 majority), 'Recorded Vote', 'Quorum'. Common result values: 'Passed', 'Failed', 'Agreed to', 'Rejected', 'Motion Agreed To', 'Motion Failed'. When a vote is on a bill, legislation_type + legislation_number are populated and bill_id is set to the composite key — use that to join to get_bills. For procedural votes (motion to recommit, motion to adjourn, etc.), those fields may be empty. Amendment + Senate detail: House votes ON AN AMENDMENT carry amendment_number, amendment_author (sponsor + label), and amendment_type (e.g. 'HAMDT'). Senate votes carry vote_title (descriptive title — e.g. a confirmation or motion), measure (the specific measure a question references, e.g. 'S.Amdt. 5740'), and en_bloc_matters[] (one {issue, question, result} per matter when a batch of nominations is decided en bloc). All are empty / [] where not applicable.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum votes to return. Default 50, max 500. | |
| since | No | Vote-start date lower bound (ISO YYYY-MM-DD inclusive). | |
| until | No | Vote-start date upper bound (ISO YYYY-MM-DD inclusive). | |
| result | No | Substring match against result text (e.g., 'passed', 'failed', 'agreed'). | |
| bill_id | No | Filter to votes on a specific bill (composite key like '119-HR-134'). Use to chain a bill lookup → votes on that bill. | |
| chamber | No | Filter to House or Senate roll calls. | |
| sort_by | No | Default: start_date (most recent votes first). | |
| vote_id | No | Composite vote identifier ('{chamber}-{congress}-{session}-{rcNumber}', e.g., 'house-119-1-240'). Direct doc lookup, fastest path. | |
| congress | No | Congress number (e.g., 119). | |
| sort_order | No | Default: desc. | |
| session_number | No | Session within the Congress. Session 1 = first calendar year of the Congress; Session 2 = second year. | |
| legislation_type | No | Filter to votes on a specific legislation type. |