
datagouv-mcp
让 AI 直接查法国官方开放数据,对话出结论
datagouv-mcp 是法国国家开放数据平台 data.gouv.fr 的官方 MCP 服务器,用 Python 编写。它把平台上大量公共数据集(交通、人口、环境、企业等)封装成 AI 助手可直接调用的工具,让 Claude、ChatGPT 等支持 MCP 的聊天机器人能在对话中搜索、浏览和分析这些数据,而无需用户手动下载 CSV 或写代码。核心能力包括:按关键词检索数据集、查看数据集元信息与资源列表、读取具体数据表并做基础统计与筛选,最终把结果以结构化形式返回给模型,由模型用自然语言总结。它解决的是开放数据“找得到但用不动”的问题——普通用户面对 API 和文件格式往往无从下手,而 MCP 让 AI 充当数据中介,把查询意图直接转成对官方数据的访问。项目由 data.gouv.fr 官方维护,接口与数据源权威,适合做政务问答、数据新闻和快速调研的原型。
项目数据
使用教程
环境要求
- Python 环境(用 uv 管理依赖与运行)
- 安装 uv(astral-sh/uv)
- 可访问 data.gouv.fr 的网络(健康检查必需)
- 若要使用 Docker 方案需先安装 Docker Desktop 或兼容 Docker Engine
安装与启动步骤
-
1克隆项目仓库
把仓库拉到本地并进入目录,后续所有命令都在该目录下执行。
git clone git@github.com:datagouv/datagouv-mcp.git cd datagouv-mcp -
2安装依赖
使用 uv 同步安装项目依赖,需先确保 uv 已安装。
uv sync -
3生成环境文件
把示例环境文件复制为自己的 .env,之后可按需修改其中的配置项。
cp .env.example .env -
4调整环境变量
按需编辑 .env:本地开发可用 127.0.0.1、端口默认 8000,仅在需要时覆盖。
-
5加载环境变量
用 shell 方式把 .env 中的变量导入当前会话,供后续启动命令读取。
set -a && source .env && set +a -
6启动 MCP 服务
运行本地 HTTP MCP 服务器,监听地址与端口由环境变量决定。
uv run main.py -
7运行健康检查
另开终端运行端到端健康检查,验证工具层与 data.gouv.fr API 链路是否正常。
uv run pytest -m health_check -
8连接聊天机器人
在支持 MCP 的客户端中填写服务地址;直接用官方托管端点则无需本地启动。
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
MCP_HOST | 否 | 服务监听地址,默认 0.0.0.0,本地开发建议 127.0.0.1 | 127.0.0.1 |
MCP_PORT | 否 | 服务监听端口,未设置时默认 8000 | 8007 |
MCP_ENV | 否 | 发送给 Sentry 的环境名,未设置时默认 local | local |
DATAGOUV_API_ENV | 否 | 使用的 data.gouv.fr 环境,可选 demo 或 prod,默认 prod | prod |
LOG_LEVEL | 否 | Python 日志级别,默认 INFO | INFO |
如何确认成功
终端无报错且服务在 MCP_HOST:MCP_PORT(默认 0.0.0.0:8000)监听;再跑 uv run pytest -m health_check 通过即链路正常。
常见问题
Q:不想自己部署怎么办?
A:可直接使用官方公共实例 https://mcp.data.gouv.fr/mcp,无访问限制,按 README 的客户端连接说明配置即可。
Q:自建后客户端该填什么地址?
A:把托管端点替换为你自己的服务地址(即 MCP_HOST:MCP_PORT 对应的 URL),其余 MCP 客户端配置格式不变。
Q:为什么推荐 Docker?
A:README 把 Docker 列为推荐方案,理由是它最省事;若不用 Docker,可走 uv 手动安装流程。
Q:健康检查为什么默认 pytest 不跑?
A:该检查被排除在默认 pytest 运行之外,需要单独用 -m health_check 触发,且必须有访问 data.gouv.fr 的网络。
注意事项
- README 明确推荐托管端点 https://mcp.data.gouv.fr/mcp,自建只在有需要时进行。
- Docker 章节在节选中未给出具体命令,因此本文只覆盖 uv 手动安装流程。
- 各 MCP 客户端(Claude、ChatGPT、Cursor、Gemini CLI 等)的配置格式不同,请选对应客户端的格式填写。
- 测试命令也支持自定义资源 ID 与 prod 环境变量,例如 RESOURCE_ID=... uv run pytest tests/test_tabular_api.py。
核心亮点
- 官方维护,直连 data.gouv.fr 权威数据源,数据可信度高于第三方抓取
- 基于 MCP 标准,可被 Claude Desktop、Cursor 等主流客户端直接接入,无需自建插件
- 覆盖搜索、元数据、数据读取全链路,AI 能在一次对话里完成从找数据到看数据
不足之处
- 数据范围限于法国平台,非法国数据场景基本用不上
- 依赖 MCP 客户端生态,普通网页聊天用户无法直接体验
适用场景
- 数据记者快速检索法国某行业公开统计并生成初稿
- 研究者用自然语言查询人口/交通数据集做前期调研
- 政务或咨询场景中让 AI 基于官方开放数据回答事实性问题
替代项目
mcp-server-fetch、open-data-mcp、ckan-mcp-server
项目介绍
上一篇:robloxstudio-mcp
下一篇:shepherd
同类项目推荐
xinchao-dynamic-mind
开源
给 AI 装上疲惫和欲望,让交互更真实
独立、可自托管的 AI 动态心智状态引擎:驱动力、念头池、疲惫、睡眠与意图。
deepseek-harness
开源
把 AI 能力拆成乐高积木,拼出你的专属智能体。
DeepSeek Harness: Everything is a Plugin.
AutoGPT
开源
开箱即用的 AI 员工,交代任务就自己干完
AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mis···
agent-manager
开源
一站式管理企业 AI 代理,部署治理全搞定
WSO2 AI Agent Manager is an open control plane designed for enterprises to deploy, m···