roll_call_positions
Pack: congress-member-votes · Connect: https://pipeworx.io/mcp (see Connect below for a single-pack URL)
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/roll_call_positions for the schema, then POST the same URL with its arguments for the data.
ANSWERS “who voted against roll call 100”, “how did Texas Republicans split on roll 250”, “how many Democrats voted Yea” — every House member’s position on ONE roll call from the U.S. House Clerk’s roll-call votes, with Yea/Nay/Present/Not Voting tallies by party. Pass party (D/R/I), state or position (yea/nay/present/not_voting) to list matching members; with none of these only the tallies and the roll’s question, result and bill are returned. A roll number that does not exist in that session returns a named reason.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
roll_number | number | yes | Roll call number within the session, e.g. 100. |
party | string | no | ”D”, “R” or “I” to list only that party. |
state | string | no | Two-letter state code to list only that state’s members. |
position | string | no | yea, nay, present or not_voting. |
Example call
Arguments
{
"roll_number": 100,
"congress": 119,
"session": 1,
"party": "R",
"position": "nay"
}
curl
curl -X POST https://gateway.pipeworx.io/congress-member-votes/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"roll_call_positions","arguments":{"roll_number":100,"congress":119,"session":1,"party":"R","position":"nay"}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('roll_call_positions', {
"roll_number": 100,
"congress": 119,
"session": 1,
"party": "R",
"position": "nay"
});
Response shape
| Field | Type | Description |
|---|---|---|
found | boolean | |
source | string | |
chamber | string | |
congress | number | |
session | number | |
data_as_of | string | |
rolls_covered | object | |
live_topup | object | |
roll | object | |
members_on_roll | number | |
tallies_by_party | object | |
matching_members | number | |
members | array |
Full JSON Schema
{
"type": "object",
"properties": {
"found": {
"type": "boolean"
},
"source": {
"type": "string"
},
"chamber": {
"type": "string"
},
"congress": {
"type": "number"
},
"session": {
"type": "number"
},
"data_as_of": {
"type": "string"
},
"rolls_covered": {
"type": "object",
"properties": {
"first": {
"type": "number"
},
"last": {
"type": "number"
},
"count": {
"type": "number"
}
},
"additionalProperties": true
},
"live_topup": {
"type": "object",
"properties": {
"rolls_added_beyond_stored_table": {
"type": "number"
},
"stored_table_through_roll": {
"type": "number"
}
},
"additionalProperties": true
},
"roll": {
"type": "object",
"properties": {
"roll_number": {
"type": "number"
},
"date": {
"type": "string"
},
"bill": {
"type": "string"
},
"question": {
"type": "string"
},
"description": {
"type": "string"
},
"vote_type": {
"type": "string"
},
"result": {
"type": "string"
},
"kind": {
"type": "string"
}
},
"additionalProperties": true
},
"members_on_roll": {
"type": "number"
},
"tallies_by_party": {
"type": "object",
"properties": {
"R": {
"type": "object",
"properties": {
"Yea": {
"type": "number"
},
"Nay": {
"type": "number"
},
"Present": {
"type": "number"
},
"Not Voting": {
"type": "number"
},
"Candidate-name vote": {
"type": "number"
}
},
"additionalProperties": true
},
"D": {
"type": "object",
"properties": {
"Yea": {
"type": "number"
},
"Nay": {
"type": "number"
},
"Present": {
"type": "number"
},
"Not Voting": {
"type": "number"
},
"Candidate-name vote": {
"type": "number"
}
},
"additionalProperties": true
}
},
"additionalProperties": true
},
"matching_members": {
"type": "number"
},
"members": {
"type": "array",
"items": {
"type": "object",
"properties": {
"bioguide_id": {
"type": "string"
},
"name": {
"type": "string"
},
"party": {
"type": "string"
},
"state": {
"type": "string"
},
"position": {
"type": "string"
}
},
"additionalProperties": true
}
}
},
"additionalProperties": true
}
Connect
Add this to your MCP client config — every tool in the catalog, including this one — or use one-click install buttons:
{
"mcpServers": {
"pipeworx": {
"url": "https://pipeworx.io/mcp"
}
}
}
Connect to just the congress-member-votes pack
{
"mcpServers": {
"congress-member-votes": {
"url": "https://gateway.pipeworx.io/congress-member-votes/mcp"
}
}
}
See Getting Started for client-specific install steps.