github TypeScript re-analysis due

congressgov-mcp-server

github

Access U.S. congressional data - bills, votes, members, committees via MCP. STDIO & Streamable HTTP.

maintainer
cyanheads
licence
Apache-2.0
first seen
2026-05-22
last seen
2026-08-31
releases · 30d
7
short id

Drift inferred · capture-to-capture

  1. MEDIUM gained fs · 3 tools changed permissions · 9 descriptions changed (high-adoption) · …
  2. MEDIUM gained db
  3. MEDIUM gained untrusted · 1 tool changed permissions

tool count over time

05-30 13:51 06-13 13:55 now
10t
10t
10t
10t
capabilities 10 tools
transport stdio · streamable-http · http verified reported listed in the official MCP registry counts 10 tools · 2 res · 2 prompts permission surface via registry introspection

tools

  • congressgov_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).

    in ▸ limit order offset billType congress operation billNumber toDateTime fromDateTime

  • congressgov_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. For summaries of one specific bill, use congressgov_bill_lookup with operation='summaries' instead.

    in ▸ limit offset billType congress toDateTime fromDateTime

  • congressgov_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); 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.

    in ▸ limit order filter offset chamber congress operation committeeCode

  • congressgov_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).

    in ▸ limit offset congress operation reportType reportNumber

  • congressgov_crs_reports

    Browse and retrieve 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 use letter-number codes (e.g., R40097, RL33612, IF12345). Use 'list' to browse available reports or 'get' for full detail (authors, topics, summary, download formats).

    in ▸ limit offset operation reportNumber

  • congressgov_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.

    in ▸ limit offset operation issueNumber volumeNumber

  • congressgov_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"}).

    in ▸ limit offset lawType congress lawNumber operation

  • congressgov_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.

    in ▸ limit offset congress district operation stateCode bioguideId currentMember

  • congressgov_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) or 'senate' (from the Senate's official LIS feed). 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.

    in ▸ limit order offset chamber session congress operation voteNumber

  • congressgov_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.

    in ▸ limit offset ordinal congress operation nominationNumber

resources

  • bill-types Reference table of valid bill type codes (hr, s, hjres, etc.) with descriptions.
  • current-congress Current congress number, session dates, and chamber info. Baseline context for queries.

prompts

  • congressgov_bill_analysis Structured framework for analyzing a bill: summary, sponsors, committee referrals, action timeline, related legislation, policy implications, and outlook.
  • congressgov_legislative_research Research framework for investigating a policy area across Congress: relevant bills, key members, committee activity, CRS reports, and floor activity.
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit 479472c · analyzer v33 · 2w ago

skills & prompt files 34

code evidence vv0.5.1 · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 95

filesystem 20

  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/build-changelog.ts :32 import { existsSync, readdirSync, readFileSync, writeFileSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/build.ts :17 import { readFileSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/check-dependency-specifiers.ts :38 import { existsSync, readFileSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/check-docs-sync.ts :22 import { existsSync, readFileSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/check-framework-antipatterns.ts :39 import { existsSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/check-skill-versions.ts :33 import { existsSync, readFileSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/check-skills-sync.ts :37 import { existsSync, readdirSync, readFileSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/clean-mcpb.ts :29 import { existsSync, statSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/clean.ts :15 import { readdir, rm } from 'node:fs/promises';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/devcheck.ts :3 import { existsSync, readFileSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/lint-mcp.ts :19 import { existsSync, readdirSync, readFileSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/lint-packaging.ts :52 import { existsSync, readdirSync, readFileSync } from 'node:fs';
show 8 more
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/list-skills.ts :21 import { existsSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/release-github.ts :33 import { existsSync, readFileSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/split-changelog.ts :24 import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/scripts/tree.ts :24 import type { Dirent } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/tests/mcp-server/tools/definitions/search-bills.tool.test.ts :10 import { existsSync, rmSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/tests/services/congress-mirror/congress-mirror-service.test.ts :9 import { existsSync, rmSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/tests/services/senate-lis/parse.test.ts :13 import { readFileSync } from 'node:fs';
  • fs (weak) cyanheads-congressgov-mcp-server-479472c/tests/services/senate-lis/senate-vote-service.test.ts :7 import { readFileSync } from 'node:fs';

shell / exec 7

  • shell (weak) cyanheads-congressgov-mcp-server-479472c/scripts/build.ts :16 import { execFile } from 'node:child_process';
  • shell (weak) cyanheads-congressgov-mcp-server-479472c/scripts/check-framework-antipatterns.ts :38 import { spawnSync } from 'node:child_process';
  • shell (weak) cyanheads-congressgov-mcp-server-479472c/scripts/check-skill-versions.ts :32 import { spawnSync } from 'node:child_process';
  • shell (weak) cyanheads-congressgov-mcp-server-479472c/scripts/clean-mcpb.ts :28 import { execFileSync } from 'node:child_process';
  • shell (weak) cyanheads-congressgov-mcp-server-479472c/scripts/devcheck.ts :2 import { type ChildProcess, spawn, spawnSync } from 'node:child_process';
  • shell (weak) cyanheads-congressgov-mcp-server-479472c/scripts/lint-packaging.ts :51 import { execFileSync } from 'node:child_process';
  • shell (weak) cyanheads-congressgov-mcp-server-479472c/scripts/release-github.ts :32 import { spawnSync } from 'node:child_process';

tool registrations 11

  • congressgov_bill_lookup cyanheads-congressgov-mcp-server-479472c/src/mcp-server/tools/definitions/bill-lookup.tool.ts :53
  • congressgov_bill_summaries cyanheads-congressgov-mcp-server-479472c/src/mcp-server/tools/definitions/bill-summaries.tool.ts :25
  • congressgov_committee_lookup cyanheads-congressgov-mcp-server-479472c/src/mcp-server/tools/definitions/committee-lookup.tool.ts :121
  • congressgov_committee_reports cyanheads-congressgov-mcp-server-479472c/src/mcp-server/tools/definitions/committee-reports.tool.ts :39
  • congressgov_crs_reports cyanheads-congressgov-mcp-server-479472c/src/mcp-server/tools/definitions/crs-reports.tool.ts :18
  • congressgov_daily_record cyanheads-congressgov-mcp-server-479472c/src/mcp-server/tools/definitions/daily-record.tool.ts :27
  • congressgov_enacted_laws cyanheads-congressgov-mcp-server-479472c/src/mcp-server/tools/definitions/enacted-laws.tool.ts :21
  • congressgov_member_lookup cyanheads-congressgov-mcp-server-479472c/src/mcp-server/tools/definitions/member-lookup.tool.ts :19
  • congressgov_roll_votes cyanheads-congressgov-mcp-server-479472c/src/mcp-server/tools/definitions/roll-votes.tool.ts :23
  • congressgov_search_bills cyanheads-congressgov-mcp-server-479472c/src/mcp-server/tools/definitions/search-bills.tool.ts :25
  • congressgov_senate_nominations cyanheads-congressgov-mcp-server-479472c/src/mcp-server/tools/definitions/senate-nominations.tool.ts :19

declared dependencies 14

  • @cyanheads/mcp-ts-core@^0.11.5
  • better-sqlite3@^13.0.3
  • fast-xml-parser@^5.10.1
  • node-cron@^4.6.0
  • pino-pretty@^13.1.3
  • zod@^4.4.3
  • @biomejs/biome@^2.5.8
  • @socketsecurity/bun-security-scanner@^1.1.2
  • @types/node@^26.2.0
  • depcheck@^1.4.7
  • ignore@^7.0.6
  • tsc-alias@^1.9.1
show 2 more
  • typescript@^7.0.2
  • vitest@^4.1.10