get_bill
Pack: congress · Endpoint: https://gateway.pipeworx.io/congress/mcp
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/get_bill for the schema, then POST the same URL with its arguments for the data.
Look up one congressional bill from GovTrack by its real-world identifier — congress number, bill type and bill number, e.g. the 118th Congress H.R. 1. Returns title, sponsor, current status with its date, introduced date and the GovTrack link. Does NOT return bill text, cosponsors, committee assignments or vote history.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
congress | number | yes | Congress number, e.g. 118 |
bill_type | string | yes | GovTrack bill type: house_bill, senate_bill, house_resolution, senate_resolution, house_joint_resolution, senate_joint_resolution, house_concurrent_resolution or senate_concurrent_resolution. ‘hr’ and ‘h.r.’ are accepted as house_bill, ‘s’ as senate_bill. |
number | number | yes | Bill number within that congress, e.g. 1 for H.R. 1 |
id | number | no | GovTrack internal numeric bill id. Legacy — v2 no longer returns it on any endpoint, so prefer congress + bill_type + number. |
Example call
Arguments
{
"congress": 118,
"bill_type": "house_bill",
"number": 1
}
curl
curl -X POST https://gateway.pipeworx.io/congress/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_bill","arguments":{"congress":118,"bill_type":"house_bill","number":1}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('get_bill', {
"congress": 118,
"bill_type": "house_bill",
"number": 1
});
Response shape
Always returns: id
| Field | Type | Description |
|---|---|---|
id | number | Bill ID |
bill_type | string | null | Bill type code |
bill_type_label | string | null | Bill type label |
number | number | null | Bill number |
congress | number | null | Congress number |
title | string | null | Full bill title |
title_without_number | string | null | Bill title without number prefix |
status | string | null | Current status code |
status_label | string | null | Current status label |
status_date | string | null | Date of current status |
introduced_date | string | null | Bill introduction date |
sponsor_name | string | null | Primary sponsor name |
link | string | null | GovTrack bill URL |
Full JSON Schema
{
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Bill ID"
},
"bill_type": {
"type": [
"string",
"null"
],
"description": "Bill type code"
},
"bill_type_label": {
"type": [
"string",
"null"
],
"description": "Bill type label"
},
"number": {
"type": [
"number",
"null"
],
"description": "Bill number"
},
"congress": {
"type": [
"number",
"null"
],
"description": "Congress number"
},
"title": {
"type": [
"string",
"null"
],
"description": "Full bill title"
},
"title_without_number": {
"type": [
"string",
"null"
],
"description": "Bill title without number prefix"
},
"status": {
"type": [
"string",
"null"
],
"description": "Current status code"
},
"status_label": {
"type": [
"string",
"null"
],
"description": "Current status label"
},
"status_date": {
"type": [
"string",
"null"
],
"description": "Date of current status"
},
"introduced_date": {
"type": [
"string",
"null"
],
"description": "Bill introduction date"
},
"sponsor_name": {
"type": [
"string",
"null"
],
"description": "Primary sponsor name"
},
"link": {
"type": [
"string",
"null"
],
"description": "GovTrack bill URL"
}
},
"required": [
"id"
]
}
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"congress": {
"url": "https://gateway.pipeworx.io/congress/mcp"
}
}
}
See Getting Started for client-specific install steps.