Skip to main content
Glama
zohar

Knesset MCP Server

by zohar

Knesset MCP Server

A Model Context Protocol (MCP) server for accessing the Israeli Knesset's parliamentary information API. Exposes a focused set of tools so AI assistants like Claude can query bills, committees, and members from the Knesset OData service.

Requirements

  • Node.js >= 20.10.0 (older versions fail with SELF_SIGNED_CERT_IN_CHAIN against knesset.gov.il)

Related MCP server: CongressMCP-full

Installation

git clone https://github.com/yourusername/knesset-mcp-server.git
cd knesset-mcp-server
npm install
npm run build

Usage

Running the server

npm start       # run the built server
npm run dev     # run TypeScript directly via ts-node

Using with Claude Desktop

  1. Install Claude Desktop.

  2. Edit your Claude Desktop configuration at ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "knesset": {
      "command": "npx",
      "args": ["-y", "knesset-mcp"]
    }
  }
}
  1. Restart Claude Desktop — the Knesset tools will be available.

The npx -y flag auto-installs the package on first run and caches it. Requires Node.js >= 20.10.0.

Tools

Bills

  • get-bill-info — Detailed info for a bill by BillID, including initiators.

  • search-bills-by-name — Keyword search over bill names (up to 20 most recent matches). Optional knessetNum filter.

  • list-bills-by-status — Bills filtered by a raw StatusID from KNS_Status, ordered by LastUpdatedDate desc.

  • list-recent-bills-by-stage — Bills at a named legislative stage: first-reading-approved, first-reading-plenum, second-third-approved, second-third-plenum, third-reading-plenum, passed. Note: the Knesset combines 2nd and 3rd readings into one vote, so second-third-approved is the closest proxy to "passed second reading"; passed means the bill became law.

  • list-bills-by-type — Bills by origin: private, government, or committee. Optional knessetNum.

Committees

  • get-committee-info — Committee details by CommitteeID.

  • list-committees — Committees for a given Knesset number, with optional onlyCurrent filter.

Members & Factions

  • list-factions — Lists parties (factions) in a given Knesset. Use this first to find the FactionID of the party you care about. Optional onlyCurrent filter to exclude factions that have disbanded or merged.

  • list-knesset-members — Lists Knesset members (MKs) with their party affiliation. Optional factionId filter returns only members of a specific party (pair with list-factions to discover IDs). Optional onlyCurrent filter limits results to active memberships.

How to get a party's MK roster:

  1. Call list-factions with the Knesset number → find the FactionID of the party.

  2. Call list-knesset-members with that knessetNum and factionId → get the member list.

Note: an MK who switched parties mid-term appears once per stint. Pass onlyCurrent: true to see only the active membership.

Example prompts

Sample prompts in Hebrew you can try once the server is wired up. Each one exercises a specific tool or combination of tools.

Single-tool prompts

list-factions

  • "אילו סיעות פעילות כיום בכנסת ה-25?"

  • "תראה לי את כל הסיעות שהיו בכנסת ה-24, כולל כאלה שהתפצלו או התאחדו."

list-knesset-members

  • "מי חברי סיעת הליכוד בכנסת הנוכחית?"

  • "תן לי את רשימת כל חברי הכנסת המכהנים כרגע בכנסת ה-25."

list-committees

  • "אילו ועדות פעילות היום בכנסת?"

  • "מה הן כל הוועדות שפעלו בכנסת ה-24?"

get-committee-info

  • "תן לי פרטים על ועדת הכספים."

  • "מה המידע על הוועדה עם המזהה 2010?"

search-bills-by-name

  • "חפש הצעות חוק שמכילות את המילה 'פנסיה'."

  • "מצא הצעות חוק על 'דיור ציבורי' בכנסת ה-25."

list-bills-by-type

  • "תראה לי את הצעות החוק הממשלתיות האחרונות בכנסת ה-25."

  • "מה הן 20 הצעות החוק הפרטיות העדכניות ביותר?"

list-bills-by-status

  • "אילו הצעות חוק עברו בקריאה שלישית לאחרונה (סטטוס 118)?"

  • "תן לי את הצעות החוק שאושרו בוועדה לקריאה שנייה ושלישית בכנסת ה-25."

list-recent-bills-by-stage

  • "אילו חוקים עברו ונכנסו לספר החוקים לאחרונה?"

  • "תן לי את ההצעות שאושרו בקריאה ראשונה בכנסת הנוכחית."

get-bill-info

  • "תן לי את כל הפרטים והיוזמים של הצעת החוק עם המזהה 2145694."

  • "מי יזם את הצעת החוק הזו ומה הסטטוס הנוכחי שלה? (BillID: ...)"

Multi-tool prompts

Two tools

  • "תראה לי את כל הסיעות החרדיות בכנסת ה-25, ואז פרט את חברי הכנסת של 'יהדות התורה'." → list-factions + list-knesset-members

  • "חפש הצעות חוק על 'אלימות במשפחה' בכנסת הנוכחית, ואז תן לי את הפרטים המלאים והיוזמים של הכי רלוונטית." → search-bills-by-name + get-bill-info

  • "תראה לי את כל הוועדות הפעילות בכנסת, ואז תן לי את המידע המפורט על ועדת החוקה." → list-committees + get-committee-info

  • "אילו חוקים עברו בקריאה שלישית לאחרונה? בחר את 3 החשובים ביותר ותן לי פרטים על כל אחד." → list-recent-bills-by-stage + get-bill-info

Three tools

  • "מצא את הסיעה 'יש עתיד' בכנסת ה-25, ראה מי חבריה, ואז חפש הצעות חוק שמזכירות אחד מהם בשם — בחר את מרב מיכאלי לדוגמה." → list-factions + list-knesset-members + search-bills-by-name

  • "תראה לי 10 הצעות חוק ממשלתיות אחרונות ו-10 הצעות פרטיות אחרונות, ואז פרט את ההצעה הפרטית שהכי מתקדמת בתהליך החקיקה." → list-bills-by-type (×2) + get-bill-info

  • "חפש הצעות חוק על 'תחבורה ציבורית', סנן את אלו שאושרו לקריאה ראשונה (סטטוס 109), ותן לי פרטים על הפעילה ביותר." → search-bills-by-name + list-bills-by-status + get-bill-info

Four or more tools

  • "צור לי פרופיל שלם של סיעת 'העבודה' בכנסת ה-25: רשימת החברים, באילו ועדות הם פעילים, ודוגמה להצעת חוק שהם יזמו. התחל ממציאת מזהה הסיעה." → list-factions + list-knesset-members + list-committees + search-bills-by-name + get-bill-info

  • "הכן לי סיכום חקיקה: 5 חוקים שעברו לאחרונה, 5 הצעות שאושרו לקריאה שנייה-שלישית, ו-5 הצעות שאושרו לקריאה ראשונה — עבור הכנסת הנוכחית. עבור החוק החשוב ביותר שעבר, תן לי את הפרטים המלאים." → list-recent-bills-by-stage (×3) + get-bill-info

  • "אני מתעניין בחקיקת סביבה. חפש הצעות חוק על 'אקלים' ו'זיהום', תן לי פרטים על כל אחת כולל היוזמים, ובדוק לאיזו סיעה משתייך כל יוזם — האם זה חוצה קואליציה/אופוזיציה?" → search-bills-by-name + get-bill-info + list-factions + list-knesset-members

API

Backed by the Knesset OData service at:

https://knesset.gov.il/Odata/ParliamentInfo.svc

Ordering uses LastUpdatedDate because the OData API does not expose per-stage transition dates on KNS_Bill.

Development

For ad-hoc testing of the server you can use the MCP Inspector:

npx @modelcontextprotocol/inspector node build/knesset-mcp-server.js

A minimal smoke test is included:

node test-mcp.mjs

License

MIT

Install Server
A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
4dResponse time
0dRelease cycle
2Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/zohar/knesset-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server