关于 mcp-reunion
mcp-reunion 将留尼汪岛的公共开放数据接入 MCP 客户端,适合进行地方公共服务、地域与行业数据查询的用户。它提供专题工具,并可通过目录搜索和查询约 270 个数据集。
主要功能
- 01覆盖行政、交通、教育等主题
- 02合并多数据源生成市镇概况
- 03搜索并检查数据集结构
- 04使用 ODSQL 条件查询数据集
- 05提供市镇等参考资源
适用场景
- 01比较多个市镇的公共服务与人口
- 02查询选举、交通或旅游数据
- 03探索尚无专用工具的数据集
MCP 相关
这是一个通过 stdio 提供留尼汪岛开放数据的 MCP 服务,向客户端开放专题查询工具、通用目录工具及参考资源。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
99收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| limit | integer | 否 | |
| query | string | 否 | 全文搜索 |
| commune | string | 否 | Commune 筛选(前缀匹配) |
| pivot_local | string | 否 | pivotlocal 筛选(前缀匹配,例如 "mairie") |
详细介绍
mcp-reunion
面向 La Réunion 公共开放数据的 MCP 服务,通过 stdio 提供,供 Claude Desktop 和其他 MCP 客户端使用。
涵盖范围
主要数据源:data.regionreunion.com 上的 OpenDataSoft Explore v2.1 API。一个小型的 National elections 模块还会查询 tabular-api.data.gouv.fr,获取区域门户未收录的 2024 年提前举行的立法选举和欧洲选举结果。目前共有 26 个模块中的 108 个工具。catalog 模块允许客户端访问 data.regionreunion.com 上约 270 个尚未接入专用工具的数据集。
模块
- 行政 — public-admin 本地计数器(annuaire)、RNA 协会注册信息、民选官员、2022 年总统选举和立法选举按投票站划分的结果(立法选举第 1 轮和第 2 轮)、BOAMP 公共采购公告、QPV 优先街区、2000 年以来的婴儿名字。
- 市镇 — 并行关联多个数据集的复合工具:`reunion_find_commune`(将模糊输入解析为规范的 INSEE 代码)、`reunion_commune_profile`(一次调用即可获取人口、QPV、学校、企业、事故和博物馆信息)、`reunion_compare_communes`(并排比较 2-5 个市镇)、`reunion_iris_profile`(IRIS 元数据,以及 2014 年收入/贫困/不平等指标)。
- 文化 — 法国博物馆目录、Joconde 馆藏搜索、公共图书馆、节庆活动、博物馆年度参观人数。
- 经济 — SIRENE v3 企业机构搜索、INSEE 月度 CPI、FEDER 2014-2020 受益者、联合办公空间、IRIS 级别收入/贫困指标。
- 教育 — 初中和高中 IPS、Génération 2024 标签、Parcoursup 专业、带地理位置的学校目录、REP/REP+ 优先教育学校、高等教育入学人数、培训机构/CFA。
- 就业(
demandeurs-d-emploi-…-a-la-reunion)— 按年龄/性别及市镇划分的 Pôle emploi 求职者人数。 - 环境 — OpenAQ 空气质量、家庭废弃物吨数、RGE 生态翻新企业、ZNIEFF 保护区、国家公园边界、石油产品消费量、水资源管理兴趣点。
- 设施(
base-permanente-des-equipements-geolocalisee-la-reunion、equipements-sportifs)— INSEE BPE 设施和全国体育设施清单,筛选范围为 Réunion。 - 地理(
ban-lareunion、bal-la-possession、communes-millesime-france、cantons-millesime-france、intercommunalites-millesime-france、iris-millesime-france、les-20-quartiers-villesaintdenis)— BAN/BAL 地址,以及官方市镇/县/EPCI/IRIS/Saint-Denis 街区参考图层。 - 健康 — CNAM 医疗专业人员目录、COVID 统计数据、病理信息、FINESS、Possession 医疗专业人员。
- 遗产 — UNESCO 世界遗产边界,以及 La Réunion 国家公园杰出普世价值标准 vii 的贡献区域。
- 住宿(
etablissements-touristiques-lareunion-wssoubik、hebergements-classespublic、localisation-potentielle-ecolodge-lareunion)— 旅游机构、评级住宿、生态旅馆区域。 - 洞察 — 按市镇和旅游业划分的公共服务高层级复合仪表板。
- 全国选举(
tabular-api.data.gouv.fr— Ministère de l'Intérieur)— 2024 年提前举行的立法选举按 Réunion 选区划分的结果(第 1 轮和第 2 轮),以及按 département 974 汇总的 2024 年欧洲选举结果。补充区域门户所载的 2022 年结果。 - 附近 — 根据坐标搜索半径范围内的学校、Car Jaune 站点和官方博物馆。
- 住房(
logements-et-logements-sociaux-…、couts-et-surfaces-moyens-…)— 省级住房图集和社会住房成本。 - Possession(
donnees-essentielles-marches-publics-…、subventions-attribuees-…)— La Possession 公共采购合同和协会拨款。 - 路由器 —
reunion_find_relevant_tools,用于将自然语言问题映射到可能相关的工具、数据集和查询流程的确定性辅助工具。 - 社会 — CAF 受益人数和补助金额、托育设施(Saint-Denis + Possession)。
- 电信(
sites-mobiles-5g-a-la-reunion、arcep_regions)— 按运营商划分的 5G 基站,以及 FttH 部署覆盖范围。 - 区域 — DVF 房地产交易、INSEE 市镇人口、La Poste 邮政编码、
potentiel foncier土地储备、Sitadel 住宅建筑许可。 - 旅游 — 家庭步道、峡谷探险路线、SIT Soubik 地标和文化兴趣点、徒步路线、海岸步道、泳池、2017 年以来的月度旅游人流量。
- 交通 — TMJA 道路交通、道路功能分类、Car Jaune GTFS 站点/路线及规划背景、区域自行车网络、道路事故(2016-2019)、车辆技术检查价格、国道每日流量和限速。
- 城市规划(
base-permanente-des-plu-de-la-reunion、liste-des-permis-de-constuire-…)— PLU 分区和非住宅建筑许可(Sitadel)。 - 天气(
donnees-synop-essentielles-ommpublic)— Météo France 在 Réunion 站点的 SYNOP 观测数据:温度、湿度、风、气压、降雨量;另提供站点列表工具。 - 目录(元数据)—
search_catalog、inspect_dataset、query_dataset。Agent 可借此发现并查询约 270 个未由专用模块覆盖的数据集,并可使用原始 ODSQLwhere子句作为备用方式。 - 资源 — 提供市镇、EPCI、IRIS、目录及热门数据集参考数据的静态 MCP 资源。
data.regionreunion.com目录包含约 270 个数据集。可以逐步添加更多模块,详见下方的 扩展。
如需查看按模块生成的数据集和工具覆盖情况,请参阅 COVERAGE.md。
访问尚未接入的数据集
上方的专用模块涵盖了最常见的主题,但门户总共有约 270 个数据集。与其针对每个长尾问题都编写新模块,不如使用 目录 模块:它为 MCP 客户端提供了三个通用工具,组合起来即可访问整个门户:
reunion_search_catalog— 按关键词/主题/发布方搜索所有数据集。返回数据集 ID、标题、描述和记录数。reunion_inspect_dataset— 给定数据集 ID,返回其完整架构(字段名称和类型),让 Agent 了解可对哪些字段进行筛选。reunion_query_dataset— 使用原始 ODSQLwhere子句、select、order_by和limit,从任意数据集中获取记录。
当用户询问没有专用模块覆盖的内容时(例如火山学、选举、图书馆到访人数等),典型流程如下:
reunion_search_catalog({ query: "volcan" })
→ returns e.g. dataset_id "suivi-volcanologique-piton-fournaise"
reunion_inspect_dataset({ dataset_id: "suivi-volcanologique-piton-fournaise" })
→ returns fields like date, type_evenement, magnitude, profondeur…
reunion_query_dataset({
dataset_id: "suivi-volcanologique-piton-fournaise",
where: "type_evenement = 'éruption' AND date >= date'2023-01-01'",
order_by: "date DESC",
limit: 20
})
这样一来,Agent 就能基于约 270 个数据集中的任意数据集回答问题,无需先有人编写新模块。通过 query_dataset 发现热门的数据集,可以考虑将其提升为独立的专用模块,并整理好字段名称。
安装
npm install
npm run build
npm test
npm run dev
Claude Desktop
{
"mcpServers": {
"reunion": {
"command": "npx",
"args": ["mcp-reunion"]
}
}
}
示例
提示词示例见 examples/:
claude-desktop.md— 设置和首批提示词civic-analysis.md— 市镇和采购分析elections.md— 2022 年和 2024 年选举分析tourism.md— 旅游和户外活动提示词transport.md— 道路和公共交通提示词
MCP 资源
此服务还提供以下参考资源:
reunion://communesreunion://epcireunion://irisreunion://datasets/catalogreunion://datasets/popular
扩展
每个模块都位于 src/modules/ 中,通过共享的 ReunionClient(src/client.ts)将 OpenDataSoft 数据集接入一个或多个 MCP 工具。添加模块的步骤如下:
- 在
https://data.regionreunion.com/api/explore/v2.1/catalog/datasets?limit=100查找数据集 ID。 - 检查字段(
/catalog/datasets/<id>),了解要公开哪些字段。 - 参照
src/modules/weather.ts或transport.ts中的模式编写模块。 - 在
src/modules/index.ts中注册模块,并递增TOOL_COUNT。
生产环境说明
- 运行时:Node.js 20+
- 传输方式:
stdio - 上游 API:
https://data.regionreunion.com/api/explore/v2.1 - 身份验证:无
- 源数据语言:以法语为主
维护检查
npm run check:schema会验证schema-expectations.json中列出的高价值上游数据集字段。npm run docs:coverage会重新生成COVERAGE.md。- 输出规范见
docs/output-contracts.md。 - 发布自动化说明见
docs/release.md。
可选的本地遥测
工具调用遥测默认处于禁用状态。如需调试本地使用模式,又不向远程服务发送任何数据:
MCP_REUNION_TELEMETRY=local npx -y mcp-reunion
默认情况下,这会将 JSONL 记录写入 .mcp-reunion-telemetry.jsonl。使用 MCP_REUNION_TELEMETRY_PATH 更改路径。
许可证
MIT — 改编自 lacausecrypto/mcp-new-caledonia。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。