datagouv-mcp
Official data.gouv.fr Model Context Protocol (MCP) server that allows AI chatbots to search, explore, and analyze datasets from the French national Open Data platform, directly through conversation.
Install / Use
claude mcp add datagouv -- npx -y github:datagouv/datagouv-mcpIf the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
Customer SupportSupported Platforms
Tags
Skill content
View source on GitHubdata.gouv.fr MCP Server
<img width="1200" height="675" alt="image" src="https://github.com/user-attachments/assets/5d20e992-349a-4b3b-9a0a-ebe308735cc9" />[!TIP] Got feedback? Tell us about it here
Model Context Protocol (MCP) server that allows AI chatbots (Claude, ChatGPT, Gemini, etc.) to search, explore, and analyze datasets from data.gouv.fr, the French national Open Data platform, directly through conversation.
Instead of manually browsing the website, you can simply ask questions like "Quels jeux de données sont disponibles sur les prix de l'immobilier ?" or "Montre-moi les dernières données de population pour Paris" and get instant answers.
[!TIP] Use it now: A public instance is available for everyone at https://mcp.data.gouv.fr/mcp with no access restrictions. To connect your favorite chatbot, simply follow the connection instructions below.
🌐 Connect your chatbot to the MCP server
Use the hosted endpoint https://mcp.data.gouv.fr/mcp (recommended). If you self-host, swap in your own URL.
The MCP server configuration depends on your client. Use the appropriate configuration format for your client:
AnythingLLM | Autohand Code | ChatGPT | Claude Code | Claude Desktop | Cursor | Gemini CLI | HuggingChat | IBM Bob | Kiro CLI | Kiro IDE | Le Chat (Mistral) | Mistral Vibe | OpenCode | VS Code | Windsurf
AnythingLLM
-
Locate the
anythingllm_mcp_servers.jsonfile in your AnythingLLM storage plugins directory:- Linux:
~/.config/anythingllm-desktop/storage/plugins/anythingllm_mcp_servers.json - MacOS:
~/Library/Application Support/anythingllm-desktop/storage/plugins/anythingllm_mcp_servers.json - Windows:
C:\Users\<username>\AppData\Roaming\anythingllm-desktop\storage\plugins\anythingllm_mcp_servers.json
- Linux:
-
Add the following configuration:
{
"mcpServers": {
"datagouv": {
"type": "streamable",
"url": "https://mcp.data.gouv.fr/mcp"
}
}
}
For more details, see the AnythingLLM MCP documentation.
Autohand Code
Use the Autohand Code CLI to register the hosted endpoint:
autohand mcp add --transport http datagouv https://mcp.data.gouv.fr/mcp
Add --scope project to keep the registration in the current workspace.
ChatGPT
Available for paid plans only (Plus, Pro, Team, and Enterprise).
- Access Settings: Open ChatGPT in your browser, go to
Settings, thenApps and connectors. - Enable Dev Mode: Open
Advanced settingsand enable Developer mode. - Add Connector: Return to
Settings>Connectors>Browse connectorsand click Add a new connector. - Configure the connector: Set the URL to
https://mcp.data.gouv.fr/mcpand save to activate the tools.
Claude Code
Use the claude mcp command to add the MCP server:
claude mcp add --transport http datagouv https://mcp.data.gouv.fr/mcp
Claude Desktop
Add the following to your Claude Desktop configuration file (typically ~/.config/Claude/claude_desktop_config.json on Linux, ~/Library/Application Support/Claude/claude_desktop_config.json on MacOS, or %APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": {
"datagouv": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.data.gouv.fr/mcp"
]
}
}
}
Claude Desktop on Windows: If the server appears in the list but never connects (no handshake, tools missing), Claude may be using its built-in Node.js runtime, which does not see packages installed with your system npm (including a global mcp-remote). Set isUsingBuiltInNodeForMcp to false at the root of the same config file so npx uses your installed Node — then restart Claude Desktop:
{
"isUsingBuiltInNodeForMcp": false,
"mcpServers": {
"datagouv": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.data.gouv.fr/mcp"
]
}
}
}
See issue #69 for background.
Cursor
Cursor supports MCP servers through its settings. To configure the server:
- Open Cursor Settings
- Search for "MCP" or "Model Context Protocol"
- Add a new MCP server with the following configuration:
{
"mcpServers": {
"datagouv": {
"url": "https://mcp.data.gouv.fr/mcp",
"transport": "http"
}
}
}
Gemini CLI
Add the following to your ~/.gemini/settings.json file (Linux: ~/.gemini/settings.json, MacOS: ~/.gemini/settings.json, Windows: %USERPROFILE%\.gemini\settings.json):
{
"mcpServers": {
"datagouv": {
"httpUrl": "https://mcp.data.gouv.fr/mcp"
}
}
}
HuggingChat
- Access Settings: In the chat interface, click the + icon, select
MCP Servers, and clickManage MCP Servers. - Add Server: Click the +
Add Serverbutton in the server management window. - Configure the Server: Enter a Server Name (e.g., "Data Gouv") and set the Server URL to
https://mcp.data.gouv.fr/mcp. ClickAdd Serverto save. - Verify Connection: Click the
Health Checkbutton on the new server card to confirm it displays as Connected. Ensure the toggle is activated to use the tools in your chat.
IBM Bob
IBM Bob supports MCP servers through its settings. To configure the server:
- Click the setting icon in the Bob panel.
- Select the MCP tab.
- Click the appropriate button:
- Edit Global MCP: Opens the global
mcp_settings.jsonfile - Edit Project MCP: Opens the project-specific
.bob/mcp.jsonfile (Bob creates it if it does not exist)
Both files use JSON format with an mcpServers object containing named server configurations.
{
"mcpServers": {
"datagouv": {
"url": "https://mcp.data.gouv.fr/mcp",
"type": "streamable-http"
}
}
}
Kiro CLI
Add the following to ~/.kiro/settings/mcp.json (Linux: ~/.kiro/settings/mcp.json, MacOS: ~/.kiro/settings/mcp.json, Windows: %USERPROFILE%\.kiro\settings\mcp.json):
{
"mcpServers": {
"datagouv": {
"url": "https://mcp.data.gouv.fr/mcp"
}
}
}
Kiro IDE
Add the following to your Kiro MCP configuration file (.kiro/settings/mcp.json in your workspace, or for global config: Linux: ~/.kiro/settings/mcp.json, MacOS: ~/.kiro/settings/mcp.json, Windows: %USERPROFILE%\.kiro\settings\mcp.json):
{
"mcpServers": {
"datagouv": {
"url": "https://mcp.data.gouv.fr/mcp"
}
}
}
Le Chat (Mistral)
Available on all plans, including free.
- Go to Connectors: Open Mistral in your browser, then go to
Intelligence>Connectors. - Add a custom connector: Click
Add connector>Custom MCP Connector, give it a name (for exampleDataGouv), and set the server URL tohttps://mcp.data.gouv.fr/mcp. - No authentication: Leave authentication disabled.
- Create: Click Create.
Mistral Vibe CLI
Edit your Vibe config (default: Linux: ~/.vibe/config.toml, MacOS: ~/.vibe/config.toml, Windows: %USERPROFILE%\.vibe\config.toml) and add the MCP server:
[[mcp_servers]]
name = "datagouv"
transport = "streamable-http"
url = "https://mcp.data.gouv.fr/mcp"
See the full Vibe MCP options in the official docs: MCP server configuration.
OpenCode
Add to opencode.json (e.g. ~/.config/opencode/opencode.json or your project root). Remote servers use the top-level mcp object with type: "remote". See OpenCode MCP servers.
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"datagouv": {
"type": "remote",
"url": "https://mcp.data.gouv.fr/mcp",
"enabled": true
}
}
}
VS Code
Add the following to your VS Code mcp.json file (Linux: ~/.config/Code/User/mcp.json, MacOS: ~/Library/Application Support/Code/User/mcp.json, Windows: %APPDATA%\Code\User\mcp.json). Run MCP: Open User Configuration from the Command Palette to open it.
{
"servers": {
"datagouv": {
"url": "https://mcp.data.gouv.fr/mcp",
"type": "http"
}
}
}
Windsurf
Add the following to your ~/.codeium/windsurf/mcp_config.json (Linux: ~/.codeium/windsurf/mcp_config.json, MacOS: ~/.codeium/windsurf/mcp_config.json, Windows: %USERPROFILE%\.codeium\windsurf\mcp_config.json):
{
"mcpServers": {
"datagouv": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.data.gouv.fr/mcp"
]
}
}
}
Note:
- The hosted endpoint is
https://mcp.data.gouv.fr/mcp. If you run the server yourself, replace it with your own URL (see “Run locally” below for the default local endpoint). - This MCP server only exposes read-only tools for now, so no API key is required.
🖥️ Run locally
1. Run the MCP server
Before starting, clone this repository and browse into it:
git clone git@github.com:datagouv/datagouv-mcp.git
cd datagouv-mcp
Docker is required for the recommended setup. Install it via Docker Desktop or any compatible Docker Engine before continuing.
🐳 With Docker (Recommended)
# With default settings (port 8000, prod environment)
docker compose up -d
# With custom environment variables
MCP_PORT=8007 DATAGOUV_API_ENV=demo LOG_LEVEL=DEBUG docker compose up -d
# Stop
docker compose down
Environment variables:
MCP_HOST: host to bind to (defaults to0.0.0.0). Set to127.0.0.1for local development to follow MCP security best practices.MCP_PORT: port for the MCP HTTP server (defaults to8000when unset).MCP_ENV: environment name reported to Sentry (defaults tolocalwhen unset). Set explicitly toprod,preprod, ordemoin your deployment.DATAGOUV_API_ENV:prod(default) ordemo. This controls which data.gouv.fr environement it uses the data from (https://www.data.gouv.fr or https://demo.data.gouv.fr). By default the MCP server talks to the production data.gouv.fr. SetDATAGOUV_API_ENV=demoif you specifically need the demo environment.LOG_LEVEL: Python logging level for the application (defaults toINFO). Common values:DEBUG,INFO,WARNING,ERROR,CRITICAL.SENTRY_DSN: Sentry DSN to enable error and performance monitoring. Monitoring is disabled when unset.SENTRY_SAMPLE_RATE: sampling rate for Sentry traces and profiles (float0.0–1.0, defaults to1.0).
⚙️ Manual Installation
You will need uv to install dependencies and run the server.
- Install dependencies
uv sync
- Prepare the environment file
Copy the example environment file to create your own .env file:
cp .env.example .env
Then optionally edit .env and set the variables that matter for your run:
MCP_HOST=127.0.0.1 # (defaults to 0.0.0.0, use 127.0.0.1 for local dev)
MCP_PORT=8007 # (defaults to 8000 when unset)
MCP_ENV=local # environment name sent to Sentry (defaults to local when unset)
DATAGOUV_API_ENV=prod #
Truncated for display — read the full file on GitHub.
Related Skills
Agent-Reach
84.4kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
headroom
73.4kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
ruflo
73.0k🌊 The original agent harness. Deploy intelligent multi-player swarms, coordinate autonomous workflows, and build conversational AI systems. Features adaptive memory, self-learning intelligence, federation, vector RAG integration, and native Claude Code / Codex / Hermes and many more Integrated
CowAgent
47.1kOpen-source super AI assistant & Agent Harness. Plans tasks, runs tools and skills, self-evolves with memory and knowledge. Multi-agent, multi-model, multi-channel. Lightweight, extensible, one-line install.
