knesset-mcp
The Knesset MCP Server provides a standardized interface for retrieving and analyzing data from the Israeli Knesset's parliamentary information system. It supports various functionalities like accessing committee information, analyzing legislation, and obtaining Knesset member details, making it a powerful tool for AI applications.
Knesset MCP Server
A Model Context Protocol (MCP) server for accessing the Israeli Knesset's parliamentary information API. This server provides a standardized interface for AI applications like Claude to query and interact with Knesset data.
Features
-
Resources: Access Knesset data through URI-based resources
- Committee information by Knesset number
- Committee sessions
- Bills by type (private, government, committee)
- Knesset member information
-
Tools: Execute functions to get specific information
- Get bill information by ID
- Search bills by keyword
- Get committee information
- Get Knesset member details
- Get current Knesset number
-
Prompts: Pre-defined prompt templates for common analysis tasks
- Analyze legislation process
- Search for legislation related to specific topics
- Analyze Knesset member voting records
Installation
# Clone the repository
git clone https://github.com/yourusername/knesset-mcp-server.git
cd knesset-mcp-server
# Install dependencies
npm install
# Build
npm run build
Usage
Running the server
# Start the server
npm start
Using with Claude Desktop
- Make sure you have Claude Desktop installed
- Edit your Claude Desktop configuration at
~/Library/Application Support/Claude/claude_desktop_config.json
(Mac) or%APPDATA%\Claude\claude_desktop_config.json
(Windows):
{
"mcpServers": {
"knesset": {
"command": "node",
"args": [
"/ABSOLUTE/PATH/TO/knesset-mcp-server/build/knesset-mcp-server.js"
]
}
}
}
- Restart Claude Desktop
- The Knesset MCP tools will now be available in Claude
API Details
This server connects to the Knesset's ODATA API located at:
http://knesset.gov.il/Odata/ParliamentInfo.svc
Resource URIs
knesset://committees/{knessetNum}
- Get committees for a specific Knesset numberknesset://committee/{committeeId}/sessions
- Get sessions for a specific committeeknesset://bills/{billType}
- Get bills by type (private, government, committee)knesset://knesset-members/{knessetNum}
- Get members of a specific Knesset
Tools
get-bill-info
- Get detailed information about a specific bill by IDsearch-bills-by-name
- Search for bills by keyword in their nameget-committee-info
- Get information about a specific committee by IDget-knesset-member
- Get information about a specific Knesset member by IDget-current-knesset-number
- Get the number of the current Knesset
Prompts
analyze-legislation-process
- Analyze the legislative process of a billsearch-related-legislation
- Search for legislation related to a specific topicmk-voting-record
- Analyze the voting record of a Knesset member
Development
To run the server in development mode:
npm run dev
For testing your MCP server, you can use the MCP Inspector:
npx @modelcontextprotocol/inspector node build/index.js
License
MIT