Delilah

com.delilahusa由 delilahusa.com 發布官方發布者v0.7.3更新於 Nov 7, 2026

Live U.S. bills, roll-call votes, legislators and statutes for all 50 states, D.C. and Congress.

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

概覽

AI 產生的概覽

遠端 MCP 伺服器,讓助理取得美國即時立法資料:50 州、華盛頓特區與國會的法案、記名表決、議員、聽證會、選舉與法規。

可以做什麼
  • 以結構化條件、自然語言語意搜尋或全詞關鍵字搜尋法案,再取得含表決、提案人、歷史、文本與分析的完整紀錄
  • 讀取並比較法案文本版本,包括統一差異與版本間變更時間軸
  • 查詢議員、其投票紀錄、評分卡、所提法案、委員會及委員會成員名單
  • 讀取委員會聽證會與院會逐字紀錄,可依位移分頁或在其中檢索
  • 分析會期:總覽儀表板、提案人排名、投票參與率、狀態與主題分布,以及變更訂閱與熱門法案
  • 查詢選舉與法律:候選人、2026 期中選舉名單、公投案、選區邊界以及州法規全文檢索
適用情境
當問題需要當前或歷史的美國州級或聯邦立法事實時使用:法案內容、某人如何投票、誰提出了什麼、會期進展、選票上有哪些議案,或法規如何規定。
執行需求
遠端 streamable HTTP 端點,無需本機安裝。無憑證時可使用共享的限流免費額度。選用的 Delilah API 金鑰透過 Authorization Bearer 標頭傳入,可取得獨立的每月配額。
安裝前請注意
未提供金鑰時,需與所有免費使用者共用一個每月配額與速率限制,大量使用可能被限流。API 金鑰屬於機密,只應透過 Authorization 標頭提供。資料為唯讀,但各州涵蓋程度不同,結果稀少時應先查看各州涵蓋情況再下結論。

安裝

在 SourceWeft 中

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

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

交給代理程式安裝

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

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

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

其他 MCP 客戶端

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

{
  "mcpServers": {
    "delilah": {
      "type": "http",
      "url": "https://mcp.delilahusa.com/"
    }
  }
}

工具

43

search_bills

Search bills

Search or list legislation with structured filters (GET /v1/bills). Use this when you know the jurisdiction, sponsor, topic, or status you want. Every filter is optional and they combine with AND. A bill number typed into q (e.g. 'HB 1', 'SB0002') matches that bill directly. Returns bill summaries plus pagination; call get_bill for the full record. Corpus is 2026-forward only. status_id values: 1=Introduced, 2=In Committee, 3=Passed One Chamber, 4=Passed Both Chambers (for a simple resolution, bill_type_id 2: Adopted, its final step), 5=Signed into Law, 6=Vetoed, 7=Failed/Dead, 8=Chaptered. Aggregate buckets: passed={4,5,8}, failed={6,7}, alive={1,2,3}.

輸入參數qlimitstatetopicoffsetsubjectstatus_idsession_idbill_numberupdated_sincetitle_containsinclude_sponsors另有 1 個

semantic_search_bills

Search bills by meaning

Vector search over the full text of every bill (GET /v1/search/semantic): describe what you want in plain English — 'protecting kids from social media', 'limits on rent increases' — and get the closest bills with a match_score. Prefer this over search_bills for questions and topics; prefer search_bills for a known bill number, sponsor, or status filter, and keyword_search_bills for exact terms that must all appear. Returns bill_id, bill_number, title, description, state_abbr, status_id. Corpus is 2026-forward only. status_id values: 1=Introduced, 2=In Committee, 3=Passed One Chamber, 4=Passed Both Chambers (for a simple resolution, bill_type_id 2: Adopted, its final step), 5=Signed into Law, 6=Vetoed, 7=Failed/Dead, 8=Chaptered. Aggregate buckets: passed={4,5,8}, failed={6,7}, alive={1,2,3}.

輸入參數limitquery必填statethreshold

get_bill

Get one bill

Fetch a single bill by its numeric bill_id (GET /v1/bills/{bill_id}), optionally merging in sub-resources: votes (roll calls with tallies), sponsors, history (action timeline), texts (version metadata), amendments, subjects, analyses (staff analyses), calendar (scheduled events), citations (statutes the bill touches), referrals (committee referrals), sast (same-as / similar-to companion bills in the other chamber or other states), supplements (fiscal notes and summaries). analyses and citations are populated only for the deeper-coverage states. Each include is a separate API call, so ask only for what you need. Pass detail:true to get everything in one round trip instead. Get a bill_id from search_bills or semantic_search_bills. status_id values: 1=Introduced, 2=In Committee, 3=Passed One Chamber, 4=Passed Both Chambers (for a simple resolution, bill_type_id 2: Adopted, its final step), 5=Signed into Law, 6=Vetoed, 7=Failed/Dead, 8=Chaptered. Aggregate buckets: passed={4,5,8}, failed={6,7}, alive={1,2,3}.

輸入參數detailbill_id必填includemax_items

get_bill_diff

Diff two bill-text versions

Compare two versions of a bill's text (GET /v1/bills/{bill_id}/diff): a unified diff plus similarity, added/removed line and character counts, and changed-section highlights. Get the two version ids from get_bill with include:['texts'] — each text row's `text_id`. Pass them as `from` (the earlier version) and `to` (the later version). Diffs are precomputed, so only bills that have more than one text version return one.

輸入參數to必填from必填bill_id必填

keyword_search_bills

Search bills by exact keywords (all must match)

Keyword search where EVERY term must appear (GET /v1/search/bills). Use when the user gives specific words that all have to be present, e.g. ['short-term rental', 'tax']. Prefer semantic_search_bills for questions and search_bills for structured filters. Up to 10 terms. Returns bill summaries plus pagination. Corpus is 2026-forward only.

輸入參數limitstateoffsetkeywords必填

get_bill_text

Get the text of one bill version

The cleaned plain text of one bill-text version (GET /v1/texts/{text_id}), entities decoded, ready to quote or summarize. Get text_id from get_bill with include:['texts'] (each version has a date and type). Texts longer than 40,000 characters are clipped with a '[truncated]' marker.

輸入參數text_id必填

get_bill_text_history

Get every text diff for a bill

Timeline of all computed diffs between successive text versions of one bill (GET /v1/bills/{bill_id}/changes): what changed, when, and how much. Use get_bill_diff for one specific pair of versions. Get bill_id from search_bills or semantic_search_bills.

輸入參數bill_id必填include_whitespace

list_legislators

Search legislators

Search or list legislators (GET /v1/legislators) by jurisdiction, chamber, party, district, or name. This is how you turn a name into the people_id that get_legislator needs. Filters combine with AND.

輸入參數qlimitpartystateoffsetchamberdistrict

get_legislator

Get one legislator

Fetch a legislator's profile by people_id (GET /v1/legislators/{people_id}), optionally merging in votes (every roll call they are recorded on, newest first, with their individual position: 1=Yea, 2=Nay, 3=Not Voting, 4=Absent) and bills (legislation they sponsor, with sponsor_type_id 1=primary, 2=cosponsor). Find a people_id with list_legislators or from a bill's sponsors. Corpus is 2026-forward only.

輸入參數limitincludepeople_id必填

get_roll_call

Get one roll-call vote

Fetch a roll call by roll_call_id (GET /v1/votes/{roll_call_id}): the motion, chamber, date and yea/nay/absent tallies. Add include:['details'] to also pull how every individual member voted (vote_id 1=Yea, 2=Nay, 3=Not Voting, 4=Absent) — this is the tool for 'how did each legislator vote on this'. Get a roll_call_id from get_bill with include:['votes'].

輸入參數includemax_itemsroll_call_id必填

get_legislator_scorecard

Get a legislator's scorecard

One-call voting and sponsorship profile for a legislator (GET /v1/legislators/{people_id}/scorecard): participation, party-line alignment, bills sponsored and passed, notable votes. This is the tool for 'how does X vote' or 'is X effective'. Get people_id from list_legislators (q=name).

輸入參數people_id必填

list_committees

List committees

List legislative committees (GET /v1/committees), filterable by jurisdiction, chamber, or name search. Returns the committee_id values that get_committee needs.

輸入參數qlimitstatechamber

get_committee

Get one committee

Fetch a committee by committee_id (GET /v1/committees/{committee_id}), optionally merging in members (its roster, with roles) and hearings (its scheduled meetings). Find a committee_id with list_committees.

輸入參數includemax_itemscommittee_id必填

list_hearings

List hearings

Committee hearings and meetings across committees (GET /v1/hearings), newest first, filterable by jurisdiction and start date. Use this to answer 'what is being heard this week' or to track when a committee next meets. Rows with has_transcript:true carry a verbatim transcript (transcript_chars long); read it with get_hearing. For hearings on one specific committee use get_committee with include:['hearings']; for one specific bill use get_bill with include:['calendar']. Floor sessions are in list_floor_transcripts.

輸入參數limitsincestateoffsethas_transcript

get_hearing

Get one hearing and read its transcript

One committee hearing or meeting (GET /v1/hearings/{hearing_id}) with its verbatim transcript where one exists (has_transcript in list_hearings; NY public hearings and FL committee meetings carry them). Transcripts can exceed a million characters, so this returns a window of the text (offset, max_chars, next_offset to keep reading) or, with search, every passage that mentions a phrase. transcript_url is the official document. Find hearing_id with list_hearings or get_committee include:['hearings'].

輸入參數offsetsearchmax_charshearing_id必填

list_floor_transcripts

List floor-session transcripts

Verbatim stenographic records of chamber floor sessions (GET /v1/floor-transcripts), newest first: each sitting's date, session type, length and official PDF. Coverage: the New York Senate, every sitting from 2025 on. Read one with get_floor_transcript. For committee hearings use list_hearings.

輸入參數limitsincestateuntiloffsetchamber

get_floor_transcript

Read one floor-session transcript

The verbatim record of one chamber sitting (GET /v1/floor-transcripts/{transcript_id}): debate, explanations of vote and roll calls as spoken on the floor. A sitting can run to 850,000 characters, so this returns a window (offset, max_chars, next_offset) or, with search, every passage that mentions a phrase such as a bill number or a member's name. Get transcript_id from list_floor_transcripts.

輸入參數offsetsearchmax_charstranscript_id必填

get_changes

Get the bill change feed

Near-real-time feed of what changed (GET /v1/changes). Poll with since=<ISO timestamp> to get everything newer than your cursor; with no since it defaults to the last hour. Reason types include NewBill, StatusChange, Text, Vote and Amendment. Use this for monitoring and incremental sync — 'what moved in Florida since yesterday' — rather than re-scanning search_bills.

輸入參數limitsincestatereason

list_topics

List topics

The canonical topic taxonomy with per-topic bill counts (GET /v1/topics). Call this first to find the right slug for the topic filter on search_bills, instead of guessing one. Pass a slug to get that topic's detail and a sample of the raw subject names folded into it (GET /v1/topics/{slug}); to get the topic's actual bills, use search_bills with topic=<slug>.

輸入參數slugmax_items

list_subjects

List subjects

The raw subject taxonomy with per-subject bill counts (GET /v1/subjects). Subjects are the fine-grained categories the legislatures themselves assign to bills — narrower and more numerous than the curated topic slugs from list_topics. Use this to find a subject_id to filter search_bills by, or to gauge what a jurisdiction is legislating on. Scope with `state` and narrow with `q`.

輸入參數qstatemax_items

list_sessions

List legislative sessions

Legislative sessions (GET /v1/sessions): regular and special sessions with their years, start/sine-die dates and a session_id. Use this to resolve which session a bill belongs to, to find the current session for a state, or to pass session_id as a filter to search_bills. Omit `state` to list every jurisdiction's sessions. Corpus is 2026-forward only.

輸入參數statemax_items

get_session_dashboard

Session dashboard

Headline counts for one legislative session (GET /v1/sessions/{id}/dashboard): bills filed, passed, signed, vetoed, roll calls, active legislators. Start here for 'how is the 2026 Florida session going'. Get session_id from list_sessions.

輸入參數session_id必填

get_session_sponsor_stats

Top sponsors in a session

Legislators ranked by bills sponsored and passed in one session (GET /v1/sessions/{id}/sponsor-stats). Each row has bills_sponsored, bills_primary, bills_passed, bills_primary_passed and pass_rate (passed = status 4, 5 or 8). This is the one call for 'who is most active or effective this session' and 'which senator passed the most bills': set chamber and sort:'passed' (or 'primary_passed' to count only bills they carried). Committees filed as sponsors are excluded by default. Get session_id from list_sessions.

輸入參數sortlimitpartychambersession_id必填include_committees

get_session_vote_participation

Roll-call participation per legislator

How many roll calls each legislator voted in versus missed during one session (GET /v1/sessions/{id}/vote-participation). Use for attendance questions. Get session_id from list_sessions.

輸入參數limitsession_id必填

list_session_legislators

Legislators active in a session

Every legislator who served in one session (GET /v1/sessions/{id}/legislators), with people_id. Use list_legislators for the current roster by state; use this for a specific past or special session. Get session_id from list_sessions.

輸入參數session_id必填

get_session_breakdown

Bill counts by status or subject

Bill count per status (by:'status', on the status_id ladder) or per subject (by:'subject') for one session (GET /v1/sessions/{id}/status-counts or /subject-counts). Get session_id from list_sessions. status_id values: 1=Introduced, 2=In Committee, 3=Passed One Chamber, 4=Passed Both Chambers (for a simple resolution, bill_type_id 2: Adopted, its final step), 5=Signed into Law, 6=Vetoed, 7=Failed/Dead, 8=Chaptered. Aggregate buckets: passed={4,5,8}, failed={6,7}, alive={1,2,3}.

輸入參數by必填session_id必填

list_states

List states & jurisdictions

The jurisdiction directory (GET /v1/states): the 50 states, D.C. and the U.S. Congress with their state_id, 2-letter code and full name. Returns the full list (52 rows) so you can resolve a name to a code or enumerate everything the corpus covers. For how COMPLETE each jurisdiction's data is, use get_coverage instead.

無需輸入參數。

get_coverage

Get per-state data coverage

Per-state depth snapshot (GET /v1/coverage): how COMPLETE each jurisdiction's data is — bill counts, the share of bills holding at least one vote, text or sponsor, and whether the legislature is currently in session. Use it before drawing conclusions from a thin result set, to tell 'no such bills' apart from 'this state is thinly covered'. Read the completeness ratios rather than the raw percentages: most bills die in committee without ever getting a roll call, so a low pct_with_votes usually reflects the legislature, not a gap in the data. Served from a materialised snapshot; `computed_at` gives its age.

輸入參數max_items

list_bills_by_stage

Bills that moved to a stage recently

Bills whose LATEST action in the window falls in a stage (GET /v1/bills-by-stage): introduced, committee, passed, executive (with the governor, signed, or vetoed), amendments, other. Fleet-wide across all jurisdictions — there is no state filter, so filter the rows by state_id or state_name yourself. Classified from the action text, not status_id. Use for 'what passed this week' or 'what reached the governor'. Stage values are lowercase.

輸入參數dayslimitstage必填

get_weekly_stage_breakdown

Fleet-wide counts per stage

One row per stage with the number of bills whose latest action landed there in the window (GET /v1/bills-weekly-breakdown). All jurisdictions combined. Use for a national 'how much moved this week' number; use get_session_dashboard for one state.

輸入參數days

list_candidates

Search election candidates

Search the election-candidate directory (GET /v1/candidates): people running for office. Filters combine with AND. Roughly a third carry an FEC filer id and sitting members of Congress carry a Bioguide id; both are null otherwise. Rows also carry people_id where the person has a legislative voting record — pass it to get_legislator / get_legislator_scorecard to go from candidate to voting history in one hop. Covers STATE and federal candidates. Pass a candidate id to get_candidate for the full record.

輸入參數cyclelimitstatefec_idofficeoffsetbioguide

get_candidate

Get a candidate

Fetch one election candidate by id (GET /v1/candidates/{id}): their party, office, district and cycle, plus an FEC filer id where the campaign has filed and a Bioguide id for sitting members of Congress. When people_id is set, the candidate has a legislative voting record — pass it to get_legislator or get_legislator_scorecard to go from candidate to voting history in one hop. Get an id from list_candidates.

輸入參數id必填

get_midterms

2026 midterm election slate

The election slate for 2026-11-03 (GET /v1/midterms): races, candidates and ballot measures per state, with official results where available. All data is official state election-office and FEC content collected by Delilah — no third-party attribution is required. live_results carries ONE ENTRY PER CONTEST, each with `contest` (e.g. primary:DEM, runoff:REP) and `party`: a closed primary returns each party separately and vote_pct is the share of THAT party's ballot, so never compare or rank candidates across two contests. Use for 'who is running for X' and results questions. Never call or project a race; report counts exactly as reported.

輸入參數qyearlevellimitstateoffsetchamber

get_ballot_measure

Statewide ballot measures

Ballot measures (GET /v1/measures): the list for a state, or one measure by its number (e.g. 'Amendment 1') with full text, summary and official source URL. Use for 'what's on the ballot in X' and 'what does Amendment N do'.

輸入參數qtypelimitstate必填numberoffset

list_districts

Electoral districts (and boundaries)

District metadata by state and type (GET /v1/districts): congressional, state senate, state house. Pass district_id with boundary:true to get the polygon as GeoJSON (GET /v1/districts/{id}/boundary) — it is large, so set simplify (degrees, e.g. 0.01) to shrink it. Match districts NUMERICALLY (district_number), never by label text.

輸入參數typelimitstateoffsetboundarysimplifydistrict_id

get_candidate_photo

Candidate portrait URL

The URL of a candidate's official portrait (GET /v1/photos/{candidate_id} returns the image bytes). Sources are official state-legislature and congressional portraits, public-domain and licensed images only — never a third party's photo library — and each carries a license and attribution string that MUST be shown when the license requires it (Wikimedia CC BY). Returns null when the candidate has no accepted portrait — which is the COMMON case: only about a tenth of the 2026 field has one (11%), so design for an initials-avatar default. Candidate rows from list_candidates and get_midterms already include photo_url, so call this only when you have just an id.

輸入參數candidate_id必填

list_statute_coverage

Statute coverage and codes

Which jurisdictions' codified law is loaded, and how big and current it is (GET /v1/statutes/coverage): per state the number of codes, sections, bill links and the edition it is current through. Pass state to list that state's codes (GET /v1/statutes/codes) — the code_id values used by get_statute lookups. Call this first to know whether a state's statutes are available.

輸入參數state

search_statutes

Search statutes

Full-text search of a state's codified law (GET /v1/statutes/search). Use for 'what does the law say about X' and to find the section a bill or ballot measure changes. Returns matching sections with headings and excerpts; fetch the whole section with get_statute. Only states whose code is loaded resolve to section text (see list_statute_coverage); a link to a section we hold carries resolved:true and the text, otherwise just the citation as written.

輸入參數q必填codelimitstate必填

get_statute

One statute section

One section of law with full text and its place in the code (GET /v1/statutes/sections/{section_id}, or by citation via GET /v1/statutes/lookup). Give section_id from a search or a bill/measure link, or state + citation exactly as the code prints it (e.g. '39:4-50', '790.01', '18-3-102'). Set include_bills:true to also return the bills that amend, create, repeal or cite the section. Only states whose code is loaded resolve to section text (see list_statute_coverage); a link to a section we hold carries resolved:true and the text, otherwise just the citation as written.

輸入參數codestatecitationsection_idinclude_bills

get_bill_statutes

Laws a bill changes

The sections of existing law a bill amends, creates, repeals or cites (GET /v1/bills/{bill_id}/statutes), classified by how it touches each, with the current text of sections we hold. Use for 'what current law does this bill change'. Get bill_id from search_bills. Only states whose code is loaded resolve to section text (see list_statute_coverage); a link to a section we hold carries resolved:true and the text, otherwise just the citation as written.

輸入參數bill_id必填

get_measure_statutes

Laws a ballot measure changes

The sections of existing law a 2026 ballot measure amends, creates, repeals or cites (GET /v1/measures/{state}/{number}/statutes). Use for 'which laws does Prop X / Question Y change'. Read from the measure's official text: constitutional amendments cite the constitution (not loaded), and a measure whose text is not yet published returns nothing. Treat the list as a floor. Only states whose code is loaded resolve to section text (see list_statute_coverage); a link to a section we hold carries resolved:true and the text, otherwise just the citation as written.

輸入參數state必填number必填

get_usage

Your API usage this month

The current key's tier, monthly cap, requests used and remaining, and when the period resets (GET /v1/_meta/usage). Call this when a request is rate-limited (HTTP 429) or the user asks about their plan.

無需輸入參數。

版本歷史

2
  1. v0.7.3最新Nov 7, 2026
  2. v0.7.2Sep 25, 2026

評分

已滿足適用檢查項的 83%

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

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

    請宣告包含 README 的 GitHub 儲存庫,或在 OAuth 受保護資源後設資料中提供 resource_documentation。

  • 授權條款不適用

    託管服務按其提供方的條款使用,因此這裡不要求授權條款。此檢查項不計入百分比。