datagouv-mcp  by datagouv

Conversational access to French Open Data for AI

Created 4 months ago
1,075 stars

Top 35.1% on SourcePulse

GitHubView on GitHub
Project Summary

This project provides an official Model Context Protocol (MCP) server for data.gouv.fr, the French national Open Data platform. It enables AI chatbots like Claude, ChatGPT, and Gemini to search, explore, and analyze datasets through conversational queries, offering a direct and efficient way to access open data without manual website navigation.

How It Works

The MCP server acts as an intermediary, translating natural language requests from AI chatbots into actionable queries against data.gouv.fr's catalog of datasets and dataservices. It leverages the Streamable HTTP transport protocol to facilitate communication. The server exposes a suite of tools for discovering datasets, retrieving detailed metadata, listing dataset resources, querying tabular data via the Tabular API, downloading and parsing large files, searching external dataservices (APIs), and fetching usage metrics for datasets and resources.

Quick Start & Requirements

  • Hosted Instance: A public instance is available at https://mcp.data.gouv.fr/mcp.
  • Local Deployment: Requires cloning the repository. Docker is the recommended setup method. Alternatively, manual installation using uv is supported.
  • Prerequisites: Docker (for Docker setup), uv (for manual setup), Node.js with npx (for the MCP Inspector interactive testing tool).
  • Links: Public instance: https://mcp.data.gouv.fr/mcp. MCP Inspector: npx @modelcontextprotocol/inspector.

Highlighted Details

  • Enables conversational data exploration and analysis for various AI chatbots.
  • Provides tools to interact with datasets, dataservices (external APIs), and retrieve metrics from data.gouv.fr.
  • Supports Streamable HTTP transport for MCP communication.
  • Offers both a convenient hosted endpoint and flexible local deployment options.

Maintenance & Community

The project outlines contribution guidelines emphasizing small, focused Pull Requests and human review. Code quality is maintained through Ruff for linting/formatting and ty for type checking, with pre-commit hooks automating these checks. A tag_version.sh script manages releases, tags, and changelog updates. No specific community channels (e.g., Discord, Slack) are listed.

Licensing & Compatibility

This project is licensed under the MIT License, permitting broad use, modification, and distribution, including for commercial purposes.

Limitations & Caveats

The MCP server currently exposes only read-only tools. It exclusively supports the Streamable HTTP transport protocol; STDIO and SSE transports are not implemented. The get_metrics tool is restricted to the production environment of data.gouv.fr.

Health Check
Last Commit

1 day ago

Responsiveness

Inactive

Pull Requests (30d)
49
Issues (30d)
23
Star History
1,040 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.