Track MCP LogoTrack MCP
Track MCP LogoTrack MCP

The world's largest repository of Model Context Protocol servers. Discover, explore, and submit MCP tools.

Product

  • Categories
  • Top MCP
  • New & Updated
  • Submit MCP

Company

  • About

Legal

  • Privacy Policy
  • Terms of Service
  • Cookie Policy

© 2026 TrackMCP. All rights reserved.

Built with ❤️ by Krishna Goyal

    Datagov Mcp

    MCP server for Israel Government Data Python-based implementation.

    137 stars
    Python
    Updated Oct 28, 2025

    Table of Contents

    • What Can You Do With This?
    • 🏠 Explore the Housing Market
    • 🗺️ Map Public Infrastructure
    • Quick Start
    • Installation
    • Using with Claude Desktop
    • Try It with the MCP Inspector
    • Using with fastmcp dev apps
    • Example: Finding Real Estate Opportunities
    • Available Tools
    • Core Data Tools
    • Visualization Tools (MCP Apps) 📊
    • dataset_profile
    • chart_generator
    • map_generator
    • Useful Resource IDs
    • Architecture
    • MCP Apps
    • Async HTTP Layer
    • Data Safety
    • Development
    • Running Tests
    • Code Style
    • Project Structure
    • Contributing
    • Troubleshooting
    • Port Conflicts with MCP Inspector
    • Windows + OneDrive
    • Import Errors
    • License
    • Acknowledgments

    Table of Contents

    • What Can You Do With This?
    • 🏠 Explore the Housing Market
    • 🗺️ Map Public Infrastructure
    • Quick Start
    • Installation
    • Using with Claude Desktop
    • Try It with the MCP Inspector
    • Using with fastmcp dev apps
    • Example: Finding Real Estate Opportunities
    • Available Tools
    • Core Data Tools
    • Visualization Tools (MCP Apps) 📊
    • dataset_profile
    • chart_generator
    • map_generator
    • Useful Resource IDs
    • Architecture
    • MCP Apps
    • Async HTTP Layer
    • Data Safety
    • Development
    • Running Tests
    • Code Style
    • Project Structure
    • Contributing
    • Troubleshooting
    • Port Conflicts with MCP Inspector
    • Windows + OneDrive
    • Import Errors
    • License
    • Acknowledgments

    Documentation

    DataGov Israel MCP Server

    An MCP server for exploring Israeli government open data (data.gov.il) — with built-in interactive visualizations powered by MCP Apps.

    Search thousands of public datasets, profile their structure, generate charts, and plot geographic data on maps — all from your AI assistant.

    Tests

    Python 3.10+

    License: MIT

    ---

    What Can You Do With This?

    🏠 Explore the Housing Market

    Profile public housing datasets to understand unit sizes, locations, and availability:

    Dataset Profile — Public Housing

    See which cities have the most demand in government housing lotteries:

    Housing Lottery Subscribers by City

    Understand the distribution of apartment sizes across the country:

    Distribution of Public Housing Unit Sizes

    Track housing unit availability over time:

    Housing Units Available per Lottery

    🗺️ Map Public Infrastructure

    Visualize education institutions across Israel:

    Education Institutions Map

    Plot public transport stations:

    Public Transport Stations

    ---

    Quick Start

    Installation

    bash
    git clone https://github.com/aviveldan/datagov-mcp.git
    cd datagov-mcp
    
    # Create virtual environment and install (requires uv)
    uv venv
    source .venv/bin/activate  # On Windows: .venv\Scripts\activate
    uv pip install -e ".[dev]"

    Using with Claude Desktop

    bash
    fastmcp install claude-desktop server.py

    Restart Claude Desktop — you'll see the DataGovIL tools available immediately.

    Try It with the MCP Inspector

    bash
    fastmcp dev inspector server.py

    This opens a web UI where you can browse tools, test them interactively, and preview MCP App visualizations in the Apps tab.

    Using with fastmcp dev apps

    Preview the interactive visualization apps locally:

    bash
    fastmcp dev apps server.py

    ---

    Example: Finding Real Estate Opportunities

    Here's a real workflow for someone exploring the Israeli housing market:

    code
    You: "Search for discounted housing lottery datasets"
    
    → package_search(q="דירה בהנחה")
      Found: "נתונים תקופתיים - תכנית דירה בהנחה" (Discounted Housing Program)
      Resource ID: 7c8255d0-49ef-49db-8904-4cf917586031
    
    You: "Profile this dataset so I can understand what fields are available"
    
    → dataset_profile(resource_id="7c8255d0-49ef-49db-8904-4cf917586031")
      Shows: LamasName (city), Subscribers, Winners, PriceForMeter,
             LotteryHousingUnits, ProjectName, Neighborhood...
    
    You: "Show me which cities have the most subscribers competing for units"
    
    → chart_generator(
        resource_id="7c8255d0-49ef-49db-8904-4cf917586031",
        chart_type="bar",
        x_field="LamasName",
        y_field="Subscribers",
        title="Housing Lottery Subscribers by City"
      )
      → Interactive bar chart rendered in MCP Apps UI
    
    You: "Now show the public housing units — map them and show me sizes"
    
    → dataset_profile(resource_id="c3a68837-9b7a-4ee7-bd92-130678dc8ae3")
      Shows: CityLmsName, NumOfRooms (avg 2.4), Floor, TotalArea (21-110 m²)...
    
    → chart_generator(
        resource_id="c3a68837-9b7a-4ee7-bd92-130678dc8ae3",
        chart_type="histogram",
        x_field="TotalArea",
        title="Distribution of Housing Unit Sizes (m²)"
      )
      → Most units are 48-57 m², with a long tail up to 110 m²

    Insight: Cities like Ashkelon and Sderot show 25,000-35,000 subscribers per lottery — that's intense competition. Smaller cities in the periphery (Umm al-Fahm, Nazareth) have far fewer. If you're flexible on location, your odds improve dramatically.

    ---

    Available Tools

    Core Data Tools

    ToolDescription
    status_showGet CKAN version and site info
    license_listList available dataset licenses
    package_listGet all dataset IDs
    package_searchSearch datasets with filters and sorting
    package_showGet detailed metadata for a specific dataset
    organization_listList all organizations
    organization_showGet details of a specific organization
    resource_searchSearch for resources within datasets
    datastore_searchQuery data within a specific resource
    fetch_dataConvenience tool — find dataset by name and fetch its data

    Visualization Tools (MCP Apps) 📊

    These tools render interactive UI directly in MCP-compatible clients.

    dataset_profile

    Profile a dataset to understand its structure and quality.

    • Fields detected: integer, number, string, coordinate
    • Statistics: min, max, mean, null count, unique values
    • Output: Interactive DataTable with search/filter
    code
    dataset_profile(resource_id="c3a68837-9b7a-4ee7-bd92-130678dc8ae3", sample_size=200)

    chart_generator

    Generate interactive charts from any dataset.

    Chart TypeUse Case
    histogramDistribution of numeric values (e.g., apartment sizes)
    barCompare categories (e.g., subscribers per city)
    lineTrends over time (e.g., housing units per lottery)
    scatterCorrelations between two numeric fields
    code
    chart_generator(
      resource_id="7c8255d0-49ef-49db-8904-4cf917586031",
      chart_type="bar",
      x_field="LamasName",
      y_field="Subscribers",
      title="Housing Lottery Subscribers by City",
      limit=50
    )

    map_generator

    Plot geographic data on interactive Leaflet maps.

    code
    map_generator(
      resource_id="e873e6a2-66c1-494f-a677-f5e77348edb0",
      lat_field="Lat",
      lon_field="Long",
      limit=500
    )

    ---

    Useful Resource IDs

    Here are some interesting datasets to get started with:

    DatasetResource IDGood For
    ✈️ Flights (טיסות)e83f763b-b7d7-479e-b172-ae981ddc6de5Bar charts by airline
    🏠 Public Housing (דיור ציבורי)c3a68837-9b7a-4ee7-bd92-130678dc8ae3Histograms, profiling
    🎰 Housing Lotteries (דירה בהנחה)7c8255d0-49ef-49db-8904-4cf917586031Bar/line charts
    🚌 Transport Stations (תחנות)e873e6a2-66c1-494f-a677-f5e77348edb0Maps (has Lat/Long)
    🏫 Schools (מוסדות חינוך)5c5d6bb0-755d-470d-84b6-d7dd3135ba9cMaps (UTM_X/UTM_Y)

    ---

    Architecture

    MCP Apps

    Visualization tools use FastMCPApp providers with prefab-ui components:

    • **DataProfile app** → DataTable, Metric components
    • **Charts app** → BarChart, LineChart, ScatterChart, Histogram
    • **Maps app** → Embed with Leaflet HTML

    Tools registered via @app.ui() automatically get proper MCP Apps metadata and render in compatible clients.

    Async HTTP Layer

    All API calls use httpx.AsyncClient with:

    • 30-second timeout
    • Automatic retries for 5xx errors
    • Connection pooling

    Data Safety

    • Numeric values from CKAN are coerced (handles "25" → 25.0)
    • Map popup content is HTML-escaped to prevent XSS
    • Line charts are sorted by x-axis for correct rendering

    ---

    Development

    Running Tests

    bash
    pytest tests/ -v          # 39 tests
    pytest tests/ --cov=datagov_mcp  # With coverage

    Code Style

    bash
    ruff check .   # Lint
    ruff format .  # Format

    Project Structure

    code
    datagov-mcp/
    ├── datagov_mcp/
    │   ├── server.py          # Core CKAN tools + provider registration
    │   ├── apps.py            # FastMCPApp definitions (DataProfile, Charts, Maps)
    │   ├── visualization.py   # Visualization tools (@app.ui entry points)
    │   ├── api.py             # CKAN API helper
    │   └── client.py          # HTTP client
    ├── tests/                 # 39 tests with HTTP mocking
    │   ├── test_api.py
    │   ├── test_contracts.py
    │   ├── test_tools.py
    │   └── test_visualization.py
    ├── screenshots/           # Auto-generated demo screenshots
    ├── server.py              # Entrypoint
    └── pyproject.toml

    ---

    Contributing

    We welcome contributions! See CONTRIBUTING.md for guidelines.

    1. Fork the repository

    2. Create a feature branch

    3. Make changes with tests

    4. Submit a pull request

    ---

    Troubleshooting

    Port Conflicts with MCP Inspector

    bash
    pip install nano-dev-utils
    python -c "from nano_dev_utils import release_ports; release_ports.PortsRelease().release_all()"

    Windows + OneDrive

    Avoid running installation in OneDrive-synced folders. See uv#7906.

    Import Errors

    bash
    uv pip install -e ".[dev]"

    ---

    License

    MIT — see LICENSE.

    Acknowledgments

    • Built with FastMCP and prefab-ui
    • Data from Israel Open Data Portal
    • Maps powered by Leaflet + CARTO
    • Charts powered by Recharts (via prefab-ui)

    Similar MCP

    Based on tags & features

    • VI

      Video Editing Mcp

      Python·
      218
    • AS

      Aseprite Mcp

      Python·
      92
    • IS

      Isaac Sim Mcp

      Python·
      83
    • PL

      Playwright Plus Python Mcp

      Python·
      154

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k
    View All MCP Servers

    Similar MCP

    Based on tags & features

    • VI

      Video Editing Mcp

      Python·
      218
    • AS

      Aseprite Mcp

      Python·
      92
    • IS

      Isaac Sim Mcp

      Python·
      83
    • PL

      Playwright Plus Python Mcp

      Python·
      154

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k