npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

knesset-mcp

v1.1.1

Published

MCP server for the Israeli Knesset parliamentary information API

Readme

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)

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