Provides programmatic access to the Israeli Central Bureau of Statistics (CBS) price indices and economic data, allowing retrieval and analysis of consumer price indices, housing market data, producer price indices, and other economic statistics for Israel.
Supports deployment and running via Docker containers, with published images available on Docker Hub.
Implements code quality checking with modern flat configuration and TypeScript rules.
Provides distribution as an NPM package for easy installation.
Uses pnpm for package management with specific development commands available.
Ensures consistent code formatting throughout the codebase.
Built with TypeScript providing type-safe validation for all inputs and outputs when interacting with the Israeli statistics data.
Uses Vitest for unit and integration testing of the MCP server functionality.
Provides parsing and transformation capabilities for XML responses from the CBS API.
Implements comprehensive schema validation for all inputs and outputs using Zod.
Israel Statistics MCP Server
A Model Context Protocol (MCP) server that provides programmatic access to the Israeli Central Bureau of Statistics (CBS) price indices and economic data. Built with TypeScript, this server offers 8 comprehensive tools for retrieving, analyzing, and calculating Israeli economic statistics.
🐳 Installation & Usage
Docker (Recommended)
NPX
Claude Desktop Integration
🚀 Features
📊 Comprehensive Economic Data Access
- Consumer Price Index (CPI) - General and detailed price indices
- Housing Market Index - Real estate prices with bi-monthly updates
- Producer Price Indices - Industrial, exports, and services
- Specialized Indices - Construction, agriculture, transportation, and more
- Price Linkage Calculator - Inflation adjustment calculations
🛡️ Enterprise-Grade Architecture
- Type-Safe Validation - Complete Zod schema validation for all inputs/outputs
- Rate Limiting - Built-in protection (5 concurrent operations max)
- Error Handling - Comprehensive CBS API error handling and retry logic
- Multi-Format Support - JSON and XML response parsing
- Housing Market Warnings - Automatic notifications for bi-monthly provisional data
🔄 Advanced Data Processing
- XML/JSON Transformation - Seamless conversion from CBS API formats
- Statistical Calculations - Automatic averages, counts, and summaries
- Date Range Filtering - Flexible period selection (monthly/quarterly)
- Search & Discovery - Full-text search across indices and topics
- Pagination Support - Handle large datasets efficiently (up to 1000 items/page)
📋 Available MCP Tools
Tool | Description | Key Parameters |
---|---|---|
get_index_topics | Browse all available index categories and topics | period , searchText , lang |
get_catalog_chapters | Get all index chapters (CPI, Housing, etc.) | lang , pagesize |
get_chapter_topics | Get topics within a specific chapter | chapterId , lang |
get_subject_codes | Get index codes for a specific topic | subjectId , searchText |
get_index_data | Retrieve historical price data for an index | code , startPeriod , endPeriod |
get_index_calculator | Calculate inflation-adjusted values | indexCode , value , fromDate , toDate |
get_main_indices | Get current main economic indices | oldFormat , lang |
get_all_indices | Get comprehensive index data with filtering | chapter , oldFormat |
🏗️ Architecture
🔒 Security Features
- Rate Limiting: Maximum 5 concurrent operations
- Input Validation: Comprehensive Zod schema validation
- URL Validation: Allowlist-based registry URL security
- Error Sanitization: Safe error message handling
- Timeout Protection: 30-second HTTP request timeouts
📝 Schema Architecture
📊 CBS API Coverage
The server implements complete coverage of the CBS Israel Statistics API:
Index Discovery Endpoints
GET /index/catalog/tree
→get_index_topics
GET /index/catalog/catalog
→get_catalog_chapters
GET /index/catalog/chapter
→get_chapter_topics
GET /index/catalog/subject
→get_subject_codes
Data Retrieval Endpoints
GET /index/data/price
→get_index_data
GET /index/data/calculator/{id}
→get_index_calculator
GET /index/data/price_selected
→get_main_indices
GET /index/data/price_selected_b
→get_main_indices_by_period
GET /index/data/price_all
→get_all_indices
Supported Index Categories
Chapter | Description | Examples |
---|---|---|
a | Consumer Price Index | Food, clothing, housing costs |
aa | Housing Market Index | Real estate prices (bi-monthly) |
b | Producer Price Index - Industrial | Manufacturing output prices |
ba | Producer Price Index - Exports | Export prices for industry |
bb | Producer Price Index - Services | Service industry prices |
c | Residential Building Input | Construction material costs |
ca | Commercial Building Input | Office building costs |
d | Road Construction Input | Infrastructure costs |
e | Agriculture Input | Agricultural input costs |
f | Bus Input | Public transportation costs |
fa | Public Minibus Input | Public transport vehicle costs |
⚠️ Housing Price Index Special Considerations
The server automatically detects and warns about Housing Price Index data:
- Bi-monthly Publication: Updates every 2 months vs. monthly for other indices
- Temporal Lag: Data reflects transactions from 2-3 months ago vs. 3-4 months ago
- Provisional Data: Last 3 indices may be updated when additional reports arrive
- Linkage Warnings: Automatic recommendations against using provisional periods
🧪 Testing & Quality Assurance
Comprehensive Test Suite
- Unit Tests: Complete handler coverage with Vitest
- Integration Tests: Real CBS API integration tests
- Mock Testing: Isolated handler testing with mocked dependencies
- Error Handling: Network error and API error simulation
- Schema Validation: Input/output validation testing
Code Quality Tools
- TypeScript: Strict type checking with no
any
types - ESLint: Modern flat config with TypeScript rules
- Prettier: Consistent code formatting
- Zod: Runtime type validation and inference
Development Commands
🔧 Development
Project Structure
- TypeScript ESM: Modern ES modules with TypeScript
- pnpm: Fast, efficient package management
- tsup: Fast TypeScript bundler with ESM output
- Docker: Multi-stage builds for optimized containers
- Vitest: Fast unit testing framework
Key Dependencies
@modelcontextprotocol/sdk
: MCP server implementationzod
: Type-safe validation and schema inferencenode-fetch
: HTTP client for CBS API callsxml2js
: XML response parsingtypescript
: Type system and compilation
Configuration Files
tsconfig.json
: TypeScript configuration with strict settingseslint.config.js
: Modern ESLint flat configurationprettier.config.cjs
: Code formatting rulesvitest.config.ts
: Test framework configurationtsup.config.ts
: Build tool configurationDockerfile
: Multi-stage container build
📈 Performance & Scalability
- Rate Limiting: 5 concurrent operations maximum
- Efficient Parsing: Optimized XML/JSON transformation
- Memory Management: Streaming for large datasets
- Caching: Schema validation caching
- Error Recovery: Graceful degradation and retry logic
📝 API Response Examples
Index Topics Discovery
Price Linkage Calculation
📄 License
MIT License - see LICENSE file for details.
🔗 Links
- Repository: https://github.com/reuvenaor/israel-statistics-mcp
- Docker Hub: reuvenaor/israel-statistics-mcp
- NPM Package: @reuvenorg/israel-statistics-mcp
- CBS API Documentation: Israel Central Bureau of Statistics
- MCP Protocol: Model Context Protocol Specification
Built with ❤️ for the Israeli tech community and economic research
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
MCP server that provides programmatic access to the Israeli Central Bureau of Statistics (CBS) price indices and economic data
Related MCP Servers
- AsecurityAlicenseAqualityMCP server that provides AI assistants access to stock market data including financial statements, stock prices, and market news through a Model Context Protocol interface.Last updated -11433PythonMIT License
- AsecurityAlicenseAqualityProvides an MCP server that allows large language models to access real-time and historical Bitcoin market data from Binance, including current prices, order book data, recent trades, and price history through a standardized interface.Last updated -1101JavaScriptMIT License
CoinStats MCP Serverofficial
AsecurityAlicenseAqualityMCP Server for the CoinStats API. Provides access to cryptocurrency market data, portfolio tracking, and news.Last updated -305795TypeScriptMIT License- AsecurityAlicenseAqualityAn MCP server that provides comprehensive financial insights and analysis by leveraging real-time market data, news, and advanced analytics for stocks, options, financial statements, and economic indicators.Last updated -1740PythonMIT License