Congressgov Mcp Server

io.github.cyanheads由 GitHub 帳號 cyanheads 發布v0.10.0更新於 Nov 4, 2026

Access U.S. congressional data (bills, votes, members, committees) via MCP.

已驗證Streamable HTTP可網頁執行網頁搜尋與抓取知識與記憶

概覽

AI 產生的概覽

透過 Congress.gov 瀏覽與讀取美國國會資料:法案、修正案、法律、議員、委員會、記名表決、提名、CRS 報告與國會議事錄。

可以做什麼
  • 瀏覽與讀取法案、修正案與已頒布法律,包含行動紀錄、提案人、共同提案人、摘要與分段讀取的法案文本
  • 依州、選區或屆次查找議員,並檢視委員會及其法案、報告與提名
  • 取得參眾兩院記名表決及每位議員的投票立場,追蹤總統提名在參議院的確認流程
  • 瀏覽 CRS 法案摘要、CRS 政策報告、委員會報告與每日國會議事錄,以字元視窗讀取文件
  • 可選擇透過本機全文索引對法案標題與 CRS 摘要做關鍵字搜尋,並提供立法研究用的資源與提示詞
適用情境
適合需要研究聯邦立法、追蹤法案進展、查詢議員投票紀錄,或在不離開助理的情況下閱讀委員會與 CRS 分析的場合。適用於政策、新聞、倡議與公民研究類工作,而非一般網頁搜尋。
執行需求
可作為遠端託管端點使用,也可透過 npx(Node.js)或 Docker 在本機執行;原始碼建置需要 Bun 1.4.0+ 或 Node.js 24+。選用的 CONGRESS_API_KEY(來自 api.data.gov)可提高速率上限;未設定時示範金鑰限制為每小時 30 次、每個 IP 每天 50 次。關鍵字搜尋需設定 CONGRESS_MIRROR_ENABLED 並在本機建置索引。
安裝前請注意
僅讀取公開立法資料,不寫入、不涉及付款。選用的 CONGRESS_API_KEY 屬於憑證,應避免寫入共用設定。使用託管端點時查詢會送往第三方伺服器,伺服器另會存取 Congress.gov、參議院 LIS 來源與 Voteview。啟用 LOG_TOOL_FAILURE_PAYLOADS 會記錄失敗呼叫的輸入輸出,且僅依欄位名稱做去識別化。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Congressgov Mcp Server,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.cyanheads%2Fcongressgov-mcp-server/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "congressgov": {
      "type": "http",
      "url": "https://congressgov.caseyjhand.com/mcp"
    }
  }
}

README

@cyanheads/congressgov-mcp-server

Access U.S. congressional data (bills, votes, members, committees) via MCP. STDIO or Streamable HTTP.

12 Tools • 6 Resources • 2 Prompts • 1 Skill


Overview

US congressional data from Congress.gov and the Senate's official vote feed: bills, amendments, enacted laws, members, committees, roll call votes, nominations, CRS and committee reports, and the Congressional Record. Browse legislative activity, read bill and report text, and follow nominations through Senate confirmation.

Tools

ToolDescription
congressgov_bill_lookupBrowse and retrieve bills: actions, sponsors, summaries, text, related bills
congressgov_amendment_lookupBrowse and retrieve House and Senate amendments: sponsor, amended bill, actions, cosponsors, text
congressgov_enacted_lawsBrowse enacted public and private laws by congress
congressgov_member_lookupFind members by state, district, or congress, and retrieve their legislative portfolios
congressgov_committee_lookupBrowse committees and their legislation, reports, and nominations
congressgov_roll_votesRetrieve House and Senate roll call votes and each member's position
congressgov_senate_nominationsBrowse presidential nominations and track Senate confirmation
congressgov_bill_summariesBrowse recently updated CRS bill summaries
congressgov_crs_reportsBrowse and retrieve nonpartisan CRS policy reports
congressgov_committee_reportsBrowse and read committee reports accompanying legislation
congressgov_daily_recordBrowse and read the daily Congressional Record
congressgov_search_billsKeyword-search bill titles and CRS summaries via a local full-text mirror (opt-in)

Resources

ResourceDescription
congress://currentCurrent congress number, session dates, chamber info
congress://bill-typesReference table of valid bill type codes
congress://member/{bioguideId}Member profile by bioguide ID
congress://bill/{congress}/{billType}/{billNumber}Bill detail by congress, type, and number
congress://committee/{committeeCode}Committee detail by committee code
skill://congressgov-guide/SKILL.mdLegislative research guide: identifier sources, discovery boundaries, votes, and document evidence

Bill, member, and committee data is also reachable through congressgov_bill_lookup, congressgov_member_lookup, and congressgov_committee_lookup (operation get), since many MCP clients are tool-only and never surface resources.

Prompts

PromptDescription
congressgov_bill_analysisStructured framework for analyzing a bill
congressgov_legislative_researchResearch framework for a policy area across Congress

Agent skill

congressgov-guide guides research across bills, laws, members, committees, votes, and floor debate. It covers identifier provenance, discovery limits, and version-specific document evidence. The guide ships with plugin installs, npm, MCPB, and Docker, and is served over MCP through the Skills extension and its skill:// resource.

Capability reference

congressgov_bill_lookup tool

  • list browses one congress, narrowed by billType and a fromDateTime/toDateTime range on the record's update date, newest first unless order: 'oldest'; get, actions, amendments, cosponsors, committees, subjects, summaries, text, titles, related, and content need congress + billType + billNumber
  • type and number from a bill row are accepted as billType and billNumber; bill type codes are case-insensitive. Send one name per field, since canonical and alias keys together are rejected
  • content reads the text version at textVersionIndex (0 is the most recent) and returns one character window in content.text with totalCharacters, truncated, and nextOffset
  • summaries takes an optional versionCode (00 introduced, 49 public law) and pages like congressgov_bill_summaries, using characterOffset/characterLimit
  • fromDateTime/toDateTime apply to list only; other operations are served with a notice naming them as ignored
  • An actions row that records exactly one roll call vote carries rollVote, the congressgov_roll_votes arguments for it (House votes from the 115th Congress, Senate from the 101st)

congressgov_amendment_lookup tool

  • An amendment is congress + amendmentType (hamdt, samdt, or suamdt, in any letter case; suamdt, Senate unprinted amendments, exists only in the 97th and 98th Congresses) + amendmentNumber (a number or a digit string). Those identifiers come from congressgov_bill_lookup amendments rows, House congressgov_roll_votes rows (amendmentType/amendmentNumber), and congressgov_member_lookup sponsored/cosponsored rows, which carry the number and the type only in the row's url
  • list browses one congress, optionally one amendmentType, newest update first unless order: 'oldest', with fromDateTime/toDateTime on the record's update date; it refuses amendmentNumber (incompatible_identity). Other operations are served with a notice naming a date bound as ignored
  • get returns the sponsor, purpose, description, the bill or amendment amended, and the latest action; actions, cosponsors, amendments (amendments to this amendment), and text page the sub-resources
  • An actions row that records exactly one roll call vote carries rollVote, the congressgov_roll_votes arguments for it
  • text lists the published text versions, each a Congressional Record page; content reads the HTML of the version at textVersionIndex as one characterOffset/characterLimit window. The page prints the amendment amid the surrounding floor proceedings, so it is often far longer than the amendment

congressgov_enacted_laws tool

  • list browses one congress, optionally by lawType (pub or priv), the enactment filter congressgov_bill_lookup lacks; get needs lawType + lawNumber, taken from a list row's laws[].number (118-90) or its bare number (90)
  • get returns the origin bill record, with the law citation on its laws[] array

congressgov_member_lookup tool

  • No name search: list filters by stateCode (plus district, 0 for at-large, which requires stateCode), congress, and currentMember
  • get returns the profile for a bioguideId (e.g. P000197); sponsored and cosponsored return that member's legislation

congressgov_committee_lookup tool

  • committeeCode is a chamber prefix (h/s/j), letters, and a 2-digit suffix (e.g. hsju00); get, bills, reports, and the Senate-only nominations infer chamber from the prefix, and read it from the committee roster when the prefix's chamber doesn't hold the code (jsat00 is a Senate committee); chamber is accepted in any letter case, as committee rows carry it (Senate)
  • A committee name in committeeCode resolves when exactly one committee matches, and otherwise returns candidate rows with a notice. With chamber set, only that chamber's committees are searched, so a name unique within one chamber (judiciary with chamber: 'senate') resolves in one step, and a lone fuzzy match there comes back as a candidate row; without chamber, a lone fuzzy match resolves and the notice says it is approximate. The resolved committee is read in the chamber its roster row names. list with filter name-matches every committee in scope, and fuzzy hits carry approximate: true
  • bills is newest first by default (order), and its rows carry no titles, so chain congressgov_bill_lookup get per row

congressgov_roll_votes tool

  • chamber is house (default, Congress.gov API) or senate (the Senate's LIS feed), in any letter case; every call needs congress + session (1 or 2), and get/members add voteNumber, which resets each session and is specific to one chamber
  • members filters by bioguideId (House only), stateCode, and party, all applied before paging: pagination.count counts the matches and memberFilter.rosterCount is the roster size. A Senate call with bioguideId fails unsupported_filter, whichever source answers, since the Senate feed identifies senators by its own IDs; filter senators by stateCode
  • list and get serve the call and name any of those filters as ignored
  • A congress's first year is session 1 and its second year session 2, but a second session can run into January 1–3 of the following year (the 116th Congress's second session voted on 2021-01-01)
  • list is newest first unless order: 'oldest'; get returns the question, result, tallies, and party breakdown, and members returns each member's position
  • House votes are covered from the 115th Congress (2017) and Senate votes from the 101st (1989), and Senate rows pair the feed's year-less voteDate with a derived voteDateIso (rows Voteview serves carry voteDateIso alone)
  • A House get or members call below the 115th Congress fails not_found before any request, naming that coverage and pointing at the Clerk's vote XML in a bill action's recordedVotes
  • When the Senate LIS feed can't answer a list, get, or members call (senate.gov refusing automated clients with HTTP 403 or its firewall page, another 4xx, a 5xx or timeout after retries, an empty body), Voteview's per-congress files answer instead, and the response carries source (name, url, latestVote, and Voteview's requested citation). Voteview's President's positions are dropped, and a vote after source.latestVote is not_found naming that vote. The feed's own not-found page, a cancelled call, a spent call budget, and congresses before the 101st never fall back. When the feed answers, the output is unchanged and Voteview is not contacted. Voteview's files are cached for 1 hour. House votes are unaffected

congressgov_senate_nominations tool

  • list browses one congress, newest update first; fromDateTime/toDateTime filter on the record's update date, not its received or action date. get, actions, committees, hearings, and nominees need a nominationNumber (1000 for PN1000; PN730-2, pn730-2, and 730-2 are equivalent), and nominees also needs an ordinal from the nominees array get returns
  • Multi-part nominations (e.g. PN851) keep their activity on partitioned children (851-1, 851-2, …); an empty sub-resource call on the bare number returns a notice pointing there
  • An action whose text cites its own Senate record vote (Record Vote Number: 225.) carries rollVote — { chamber: 'senate', congress, session, voteNumber }, the congressgov_roll_votes arguments for that vote. Every citing actions row gets one, cloture votes included, and so does latestAction on list rows and get; votes before the 101st Congress get none

congressgov_bill_summaries tool

  • Optional congress and billType (which requires congress); fromDateTime/toDateTime filter on the summary's update time, not the bill's action date, and cover the last 7 days when both are omitted
  • A page returns limit rows, and pagination.nextOffset resumes; a summary over 25,000 characters arrives windowed with textTotalCharacters, textTruncated, and textNextOffset
  • For one bill's summaries, or to read a windowed summary to the end, use congressgov_bill_lookup summaries

congressgov_crs_reports tool

  • list browses the catalog, newest update first; fromDateTime/toDateTime filter on the date Congress.gov last updated a report, not its publication date. get and content take a reportNumber: letters then digits (R40097, RL33612, IF12345) or, for older reports, two digit groups joined by a hyphen (96-548), in any case
  • id, reportId, and report_id are accepted as reportNumber; send only one identifier key
  • get returns authors, topics, summary, and download formats
  • content reads the report's HTML version as plain text in a characterOffset/characterLimit window (script, style, and comments dropped; tables as tab-separated rows). A PDF-only report fails format_unavailable, naming its PDF URL

congressgov_committee_reports tool

  • list browses one congress, optionally by reportType (hrpt House, srpt Senate, erpt Executive). fromDateTime/toDateTime filter on the date Congress.gov last updated a report record, and conference selects conference reports (true) or the others (false); get, text, and content need reportType + reportNumber
  • get returns the citation, title, committees, and associated bill; text lists {type, url} format links, and content reads the report as one character window
  • A multi-part report is filed as one record per part: part (default 1) selects one on get, text, and content, and parts lists every part number when there is more than one. A part the report lacks fails not_found, naming the parts it has

congressgov_daily_record tool

  • Navigation runs list (volumes) → issues (by volumeNumber) → articles (by volumeNumber + issueNumber)
  • content reads the article at articleIndex (0-based across the issue) as one character window; Record articles publish Formatted Text and PDF only, so format: 'xml' fails as format_unavailable

congressgov_search_bills tool

  • query keywords (AND-combined) over bill titles and CRS summaries, narrowed by congress, billType, and originChamber; limit 1–100, offset pagination
  • BM25-ranked rows carry billId plus congress/billType/billNumber for congressgov_bill_lookup, and a summaryPreview; policy area and full bill text are not indexed
  • Every response names the searchable congresses in mirroredCongresses; a congress outside them returns an empty result with a notice pointing at congressgov_bill_lookup
  • Listed only when CONGRESS_MIRROR_ENABLED=true; until bun run mirror:init builds the index, it returns an empty result with a notice

congress://current resource

  • Current congress number, session dates, and chamber info, the baseline for other queries
  • Cached publicly for 1 hour

congress://bill-types resource

  • The 8 bill type codes (hr, s, hjres, sjres, hconres, sconres, hres, sres) with description, chamber, and an example citation
  • Static, with no upstream call; cached publicly for 24 hours

congress://member/{bioguideId} resource

  • bioguideId is one uppercase letter and 6 digits (e.g. P000197)
  • Returns the member profile: name, state, party, terms, leadership, office, legislation counts

congress://bill/{congress}/{billType}/{billNumber} resource

  • congress and billNumber are positive integers; billType is one of the 8 bill type codes
  • Returns bill detail: sponsor, status, policy area, committees, latest action

congress://committee/{committeeCode} resource

  • committeeCode is h/s/j followed by 3–8 lowercase alphanumeric characters (e.g. hsju00); chamber comes from the first letter
  • Returns committee detail: name, chamber, subcommittees, history, legislation counts

congressgov_bill_analysis prompt

  • Arguments: congress, billType, and billNumber, all required
  • Returns one user message framing a seven-part analysis, from summary to outlook, with the tools to call for each part

congressgov_legislative_research prompt

  • Arguments: topic required; congress optional, defaulting to the current congress
  • With CONGRESS_MIRROR_ENABLED, the plan opens with congressgov_search_bills; without it, the prompt asks for a seed bill, member, committee, or CRS report ID, since no other tool takes a topic

Features

Built on @cyanheads/mcp-ts-core: stdio and Streamable HTTP transports, pluggable auth (none / jwt / oauth), swappable storage (in-memory, filesystem, Supabase, Cloudflare KV/R2/D1), structured logging with optional OpenTelemetry tracing.

Congress.gov-specific:

  • Type-safe client for the Congress.gov REST API v3, plus a client for the Senate's LIS XML feed that backs Senate roll votes, with Voteview's published vote files as the fallback when that feed can't be read
  • The Congress.gov API has no keyword search, so tools browse by congress, type, date range, chamber, state, and district; list operations page with limit 1–250 (default 20) and offset
  • content on bill text, amendment text, committee reports, Record articles, and CRS reports reads a document in a characterOffset/characterLimit window (1–100,000 characters, default 25,000), fetched only from www.congress.gov under a 25 MB ceiling; bill text, committee reports, and Record articles take format text (default) or xml, a CRS report is always read as its HTML version, and an amendment is read as the HTML of its Congressional Record page. A document longer than one window (up to 16 MB) is downloaded once and its later windows are served from a 10-minute in-memory cache
  • Each tool call or resource read gets 50 seconds for all of its upstream requests, retries and backoff included, whether it makes one request or chains several (a content call's metadata lookup and document fetch, a committee name resolved against the committee roster, one chamber's when chamber is set). A stalled upstream ends the call before the 60-second default timeout of MCP clients: upstream_timeout from Congress.gov, the retryable upstream_error from the Senate LIS feed and the Voteview fallback
  • Optional API key from api.data.gov: DEMO_KEY allows 30 requests/hour and 50/day per IP, registered keys 5,000/hour
  • Opt-in local SQLite FTS5 mirror (CONGRESS_MIRROR_ENABLED) adds keyword search over bill titles and CRS summaries

Agent-friendly output:

  • Every list response carries effectiveQuery and totalCount, with a notice when nothing matched
  • list refuses an identity field (member bioguideId, law lawNumber, committee committeeCode with a committee name pointed at filter, nomination nominationNumber, committee report part, and billNumber, voteNumber, reportNumber, volumeNumber) with an incompatible_identity error that names the operation to use instead
  • Inputs an operation doesn't use are served with a notice naming them as ignored; a member's sponsored and cosponsored legislation and a committee's bills, reports, and nominations span every congress
  • content returns offset, truncated, and nextOffset, so walking a multi-megabyte bill never skips or repeats a character
  • Typed failures (document_unavailable, format_unavailable, document_fetch_failed, document_too_large, offset_past_end, unsupported_filter, not_found, rate_limited, invalid_request, api_key_rejected, upstream_error, upstream_timeout), each with a recovery hint

Getting started

Connect to the hosted instance:

sh
claude mcp add --transport http congressgov-mcp-server https://congressgov.caseyjhand.com/mcp

Or run it locally:

sh
claude mcp add congressgov-mcp-server -- npx -y @cyanheads/congressgov-mcp-server

For other clients, add this to the MCP config file:

json
{  "mcpServers": {    "congressgov-mcp-server": {      "command": "npx",      "args": ["-y", "@cyanheads/congressgov-mcp-server"]    }  }}

Optional: set CONGRESS_API_KEY to a free api.data.gov key for 5,000 requests/hour instead of the demo key's 30/hour and 50/day per IP. For Docker or a source build, see Running the server.

Configuration

VariableDescriptionDefault
CONGRESS_API_KEYAPI key from api.data.gov.DEMO_KEY
CONGRESS_API_BASE_URLCongress.gov API base URL.https://api.congress.gov/v3
CONGRESS_MIRROR_ENABLEDEnable the local bill search mirror and the congressgov_search_bills tool.false
CONGRESS_MIRROR_PATHFilesystem path to the SQLite mirror index..mirror/bills.sqlite3
CONGRESS_MIRROR_REFRESH_CRONCron schedule for the in-process mirror refresh (HTTP transport only). Unset means running mirror:refresh yourself.—
CONGRESS_MIRROR_CONGRESSESComma-separated congress numbers to mirror (e.g. 118,119).current congress + 1 prior
MCP_TRANSPORT_TYPETransport: stdio or http.stdio
MCP_HTTP_PORTHTTP server port.3010
MCP_SESSION_MODEHTTP session mode: stateless, stateful, or auto; auto resolves to stateful.stateless
MCP_AUTH_MODEAuthentication: none, jwt, or oauth.none
MCP_LOG_LEVELLog level (debug, info, notice, warning, error, etc.).info
LOGS_DIRDirectory for log files (Node.js only).<project-root>/logs
OTEL_ENABLEDEnable OpenTelemetry.false
OTEL_EXPORTER_OTLP_ENDPOINTBase OTLP endpoint for traces and metrics.—
OTEL_EXPORTER_OTLP_LOGS_ENDPOINTExplicit OTLP logs endpoint; the base endpoint does not enable log export.—
LOG_TOOL_FAILURE_PAYLOADSLog failed-call input and output with key-based redaction; secrets inside free-form values are not redacted.false
LOG_TOOL_FAILURE_PAYLOAD_MAX_BYTESMaximum bytes per failed-call input or output record.16384

See .env.example for the full list of optional overrides.

Running the server

Requires Bun v1.4.0 or higher (or Node.js v24+).

sh
git clone https://github.com/cyanheads/congressgov-mcp-server.gitcd congressgov-mcp-server && bun installcp .env.example .env# Optionally set CONGRESS_API_KEY and the mirror variables in .env.

Local development

  • Build and run the production version:

    sh
    bun run rebuildbun run start:http   # or start:stdio
  • Build the bill search mirror from this checkout (with CONGRESS_MIRROR_ENABLED=true):

    sh
    bun run mirror:init      # full buildbun run mirror:refresh   # incremental refreshbun run mirror:verify    # readiness and integrity check

    The mirror CLI requires this checkout or the Docker image's path mapping; an npm installation cannot run these scripts.

  • Run checks and tests:

    sh
    bun run devcheck   # Lint, format, typecheck, securitybun run test       # Vitest test suitebun run lint:mcp   # Validate MCP definitions against spec

Docker

sh
docker run --rm -e CONGRESS_API_KEY=your-api-key -p 3010:3010 ghcr.io/cyanheads/congressgov-mcp-server:latest

The image defaults to HTTP transport, stateless session mode, and logs to /var/log/congressgov-mcp-server. For stdio, use docker run -i --rm -e MCP_TRANSPORT_TYPE=stdio ghcr.io/cyanheads/congressgov-mcp-server:latest. To build locally, run docker build -t congressgov-mcp-server .; OpenTelemetry peer dependencies are installed by default, with --build-arg OTEL_ENABLED=false to omit them. The image carries the mirror scripts, so docker exec <container> bun run mirror:init builds the index in place.

Project structure

DirectoryPurpose
src/index.tscreateApp() entry point: registers tools, resources, and prompts, inits services, and schedules the mirror refresh.
skills/Published legislative research guide for agents calling the server.
src/config/Server-specific environment variable parsing and validation with Zod.
src/mcp-server/tools/Tool definitions (definitions/*.tool.ts) plus shared input, formatting, and summary-window helpers.
src/mcp-server/resources/definitions/Resource definitions (*.resource.ts).
src/mcp-server/prompts/definitions/Prompt definitions (*.prompt.ts).
src/services/call-budget.tsThe 50-second budget every tool call's upstream requests share.
src/services/congress-api/Congress.gov API client: auth, pagination, rate limiting.
src/services/congress-documents/Bounded document-text fetch: host allowlist, byte ceiling, character window, and a 10-minute cache of document bodies.
src/services/congress-mirror/Local SQLite FTS5 bill-search mirror: ingest, normalize, schema.
src/services/senate-lis/Senate LIS XML client for Senate roll call votes, with a Voteview CSV fallback.
src/utils/HTML/XML character-reference decoding and congress-number arithmetic.
scripts/Build, devcheck, and release tooling, plus the mirror:init / mirror:refresh / mirror:verify CLIs.
tests/Unit and integration tests, mirroring the src/ structure.

Development guide

See CLAUDE.md for development guidelines and architectural rules. The short version:

  • Handlers throw, framework catches — no try/catch in tool logic
  • Use ctx.log for request-scoped logging, ctx.state for tenant-scoped storage
  • All tools are read-only, with readOnlyHint: true and idempotentHint: true annotations
  • Wrap external API calls: validate raw → normalize to a domain type → return the output schema; never fabricate missing fields

Contributing

Issues are welcome. Run checks and tests before submitting:

sh
bun run devcheckbun run test

License

Apache-2.0 — see LICENSE for details.

來源:README.md,提交 c2bf0e9

工具

12

congressgov_bill_lookup

Congress.gov Bill Lookup

Browse and retrieve U.S. legislative bill data from Congress.gov. Discover bills by filtering on congress, bill type, and date range — there is no keyword search. Use 'list' to browse (requires congress, defaults to most-recently-updated first), 'get' for full bill detail (sponsor, policy area, CBO estimates, law info), or drill into a specific bill with 'actions', 'amendments', 'cosponsors', 'committees', 'subjects', 'summaries', 'text', 'titles', or 'related' (each requires congress + billType + billNumber). 'text' lists the published versions and their format URLs; 'content' then reads one version's actual text, a bounded character window at a time. 'summaries' takes an optional versionCode selector and returns each row's text a bounded character window at a time — a row past the window carries textTotalCharacters/textTruncated/textNextOffset, and characterOffset reads on from there. An 'actions' row that records a roll call vote carries rollVote — the chamber, congress, session, and voteNumber congressgov_roll_votes takes to return that vote and each member's position. An 'amendments' row's type and number, with congress, are the amendmentType and amendmentNumber congressgov_amendment_lookup takes to return that amendment's sponsor, actions, cosponsors, and text.

輸入參數limitorderformatoffsetbillTypecongress必填operation必填billNumbertoDateTimeversionCodefromDateTimecharacterLimit另有 2 個

congressgov_amendment_lookup

Congress.gov Amendment Lookup

Browse and retrieve U.S. congressional amendments from Congress.gov — House (hamdt), Senate (samdt), and Senate unprinted (suamdt, 97th and 98th Congresses only). An amendment is addressed by congress + amendmentType + amendmentNumber, the identifiers other tools return: congressgov_bill_lookup 'amendments' rows (type and number), House votes from congressgov_roll_votes (amendmentType and amendmentNumber), and amendment rows from congressgov_member_lookup 'sponsored'/'cosponsored' (amendmentNumber, with the type in the row's url); either letter case is accepted. Use 'list' to browse one congress, optionally one amendmentType (newest update first; fromDateTime/toDateTime filter on update date), 'get' for the record (sponsor, purpose, description, the bill or amendment it amends, latest action), or drill in with 'actions', 'cosponsors', 'amendments' (amendments to this amendment), or 'text'. 'text' lists the published text versions — the Congressional Record pages that print the amendment, often alongside the surrounding floor proceedings — and 'content' reads one version's HTML as plain text, a bounded character window at a time. On that page a Senate amendment is printed under 'SA {number}' or 'Amendment No. {number}'; a House amendment is not printed under its HAMDT number — find it at the Record page its 'actions' rows cite ('text: CR H3582-3583' is the '[[Page H3582]]' marker) or under 'Amendment No. N Offered by', where N is the number the description from 'get' gives it ('An amendment numbered 64 printed in House Report 118-142'). An 'actions' row that records a roll call vote carries rollVote — the chamber, congress, session, and voteNumber congressgov_roll_votes takes to return that vote and each member's position.

輸入參數limitorderoffsetcongress必填operation必填toDateTimefromDateTimeamendmentTypecharacterLimitamendmentNumbercharacterOffsettextVersionIndex

congressgov_enacted_laws

Congress.gov Enacted Laws

Browse enacted public and private laws from Congress.gov by congress and law type ('pub' for public laws, 'priv' for private). 'list' filters by enactment status and law type — the discovery path 'bill_lookup' does not offer. 'get' returns the origin bill record (sponsor, actions, summaries, text), with the public/private law citation on the bill's 'laws' array (e.g. {"number":"118-2","type":"Public Law"}).

輸入參數limitoffsetlawTypecongress必填lawNumberoperation必填

congressgov_member_lookup

Congress.gov Member Lookup

Discover congressional members and their legislative activity. No name search. For 'list', filter by stateCode (optionally with district), by congress, or by both together (e.g., 118th Congress + CA, or CA district 12 in the 118th). Add currentMember=true to restrict to currently serving members. Once you have a bioguideId, use 'get' for full profile or 'sponsored'/'cosponsored' for their legislative portfolio. A 'sponsored'/'cosponsored' row that is an amendment carries amendmentNumber, with its amendment type in the row's url (/amendment/{congress}/{type}/{number}); pass congress, amendmentType, and amendmentNumber to congressgov_amendment_lookup for its sponsor, actions, and text.

輸入參數limitoffsetcongressdistrictoperation必填stateCodebioguideIdcurrentMember

congressgov_committee_lookup

Congress.gov Committee Lookup

Browse congressional committees and their legislation, reports, and nominations. Committee codes follow the pattern chamber-prefix (h/s/j) + abbreviation + 2-digit number — use 'list' (with optional 'filter' for name→code resolution) to discover codes, then 'get' or drill into 'bills', 'reports', or 'nominations' ('nominations' is Senate-only). 'get' and sub-resources only need committeeCode (chamber is inferred from the prefix, or read from the committee roster when the prefix's chamber does not hold the code); pass chamber explicitly to override. The 'bills' sub-resource defaults to 'recent' order (newest update-date first); pass order='oldest' for ascending update-date order. Upstream omits bill titles from the 'bills' sub-resource — rows carry only {congress, billType, billNumber, actionDate, relationshipType, url}; chain 'congressgov_bill_lookup get' per row to retrieve titles and policy area.

輸入參數limitorderfilteroffsetchambercongressoperation必填committeeCode

congressgov_roll_votes

Congress.gov Roll Votes

Retrieve U.S. congressional roll call votes and individual member voting positions for either chamber. Set 'chamber' to 'house' (default, from the Congress.gov API — Congress.gov publishes House roll call votes from the 115th Congress (2017) onward) or 'senate' (from the Senate's official LIS feed — the Senate publishes roll call votes from the 101st Congress (1989) onward). When the LIS feed can't be read (senate.gov refuses automated requests), Senate calls are answered from Voteview's published vote files instead, and 'source' names Voteview and its latest vote; a later vote is not found until Voteview adds it. Use 'list' to find votes by congress and session (newest first by default), 'get' for vote details (question, result, tallies, party breakdown, associated bill/nomination/amendment), or 'members' for how each member voted. 'members' narrows the roster by bioguideId (House only), stateCode, and party before paging, so one member's or one delegation's position takes one call. A bill action that records a roll call carries rollVote in congressgov_bill_lookup 'actions' — pass its chamber, congress, session, and voteNumber here. A House vote on an amendment carries amendmentType and amendmentNumber; pass them, with congress, to congressgov_amendment_lookup for the amendment's sponsor, actions, cosponsors, and text.

輸入參數limitorderpartyoffsetchambersession必填congress必填operation必填stateCodebioguideIdvoteNumber

congressgov_senate_nominations

Congress.gov Senate Nominations

Browse presidential nominations to federal positions and track the Senate confirmation process. Use 'list' to browse, 'get' for nomination detail, 'actions'/'committees'/'hearings' for confirmation pipeline data, or 'nominees' to retrieve individual appointees in a multi-nominee batch. Nominations use 'PN' (Presidential Nomination) numbering. Most nominations carry confirmation activity on the parent (e.g., PN1000); multi-part parents (e.g., PN851) carry no activity of their own — their actions, committees, hearings, and nominees live on partitioned children (PN851-1, PN851-2, …). 'get' on a parent that has no `nominees` array signals the partitioned form is needed for everything below it. nominationNumber takes either form bare or as its citation (1000 or PN1000, 730-2 or PN730-2). 'list' runs newest update first and takes fromDateTime/toDateTime, which filter on the date Congress.gov last updated a nomination record — not its received date or latest action date. An action that cites its own Senate record vote — an `actions` row, or `latestAction` on `list` and `get` — carries `rollVote`, the congressgov_roll_votes arguments for that vote.

輸入參數limitoffsetordinalcongress必填operation必填toDateTimefromDateTimenominationNumber

congressgov_bill_summaries

Congress.gov Bill Summaries

Browse recent CRS (Congressional Research Service) bill summaries — plain-language summaries of bills at each legislative stage, useful for answering "what's happening in Congress?". The fromDateTime/toDateTime filters apply to the summary's update time, not the bill's action date, so results include recently rewritten summaries of older bills. Defaults to summaries updated in the last 7 days. Each item shows both the bill's action date and the summary update date. A page returns limit rows, and a summary longer than the per-row window arrives as an exact character window carrying textTotalCharacters/textTruncated/textNextOffset; pagination.nextOffset continues the page and a row's textNextOffset continues its text. For summaries of one specific bill — and to read a windowed summary to the end — use congressgov_bill_lookup with operation='summaries' instead.

輸入參數limitoffsetbillTypecongresstoDateTimefromDateTime

congressgov_crs_reports

Congress.gov CRS Reports

Browse, retrieve, and read CRS (Congressional Research Service) reports — nonpartisan policy analyses by subject-matter experts at the Library of Congress, covering policy areas, legislative proposals, and legal questions. Report IDs are letters then digits (R40097, RL33612, IF12345) or, for older reports, two digit groups joined by a hyphen (96-548). Use 'list' to browse available reports, newest update first, 'get' for full detail (authors, topics, summary, download formats), or 'content' to read the report itself — its HTML version as plain text, a bounded character window at a time; feed nextOffset back as characterOffset to read on. The oldest reports publish only a PDF, which 'content' cannot read; the error names its URL. 'list' takes fromDateTime/toDateTime, which filter on the date Congress.gov last updated a report — not its publication date — so a window finds reports added or revised in it.

輸入參數limitoffsetoperation必填toDateTimefromDateTimereportNumbercharacterLimitcharacterOffset

congressgov_committee_reports

Congress.gov Committee Reports

Browse and retrieve committee reports from Congress.gov — reports accompany legislation reported out of committee and explain the bill's purpose, committee amendments, dissenting views, and the committee vote. Report types are 'hrpt' (House), 'srpt' (Senate), and 'erpt' (Executive). 'list' is not ordered by date; it takes fromDateTime/toDateTime, which filter on the date Congress.gov last updated a report record, and conference, which selects conference reports — list rows carry no conference field. 'text' lists the published format URLs; 'content' then reads the report's actual text, a bounded character window at a time. A multi-part report (Part 2, Book 3) is filed as one record per part under one report number: 'get', 'text', and 'content' serve Part 1 unless part names another, and list every part number in parts.

輸入參數partlimitformatoffsetcongress必填operation必填conferencereportTypetoDateTimefromDateTimereportNumbercharacterLimit另有 1 個

congressgov_daily_record

Congress.gov Daily Record

Browse the daily Congressional Record — floor speeches, debates, and legislative text published each day Congress is in session. Navigation is hierarchical: volumes (via 'list') → issues (via 'issues') → articles (via 'articles'). Use 'list' to find recent volumes, 'issues' to see what's in a volume, and 'articles' to access individual speeches and debate sections. 'articles' lists each article and its format URLs; 'content' then reads one article's actual text, a bounded character window at a time.

輸入參數limitformatoffsetoperation必填issueNumberarticleIndexvolumeNumbercharacterLimitcharacterOffset

congressgov_search_bills

Congress.gov Bill Search

Keyword-search U.S. bills by title and CRS summary text — the discovery path the Congress.gov API itself lacks (it has no keyword search). Backed by a local full-text index over a bounded window of congresses, which every response names in mirroredCongresses; title and summary are indexed, but policy area and full bill text are not. Returns BM25-ranked matches, each with the bill's derived id (congress/billType/billNumber) for follow-up congressgov_bill_lookup calls and a truncated summary preview. Narrow with the optional congress, billType, and originChamber filters; a congress outside mirroredCongresses returns an empty result with a notice, not a no-match. Searches the local mirror, not the live API — if the mirror has not finished its initial build it returns an empty result with a notice, not an error.

輸入參數limitquery必填offsetbillTypecongressoriginChamber

版本歷史

10
  1. v0.10.0最新Nov 4, 2026
  2. v0.9.1Nov 1, 2026
  3. v0.9.0Oct 29, 2026
  4. v0.8.1Oct 25, 2026
  5. v0.8.0Oct 13, 2026
  6. v0.7.4Oct 11, 2026
  7. v0.7.3Sep 27, 2026
  8. v0.7.2Sep 22, 2026
  9. v0.7.1Sep 20, 2026
  10. v0.7.0Sep 16, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分