mcpField
R
rundata.re · La Réunion 974 en direct

rundata.re · La Réunion 974 en direct

远程服务
rundata.re地图与出行0今天更新

关于 rundata.re · La Réunion 974 en direct

rundata.re 是面向 La Réunion 居民和访客的 MCP 服务,为 AI 助手提供带时间与来源的岛上公共数据,明确区分实测数据与预报。

主要功能

  1. 01实测天气与天气预报
  2. 02气象、海况及火山警报
  3. 03公交、道路与公共服务信息
  4. 04河流、水质与空气质量数据
  5. 05徒步路线及封闭状态

适用场景

  1. 01查询某地当前天气和未来预报
  2. 02检查公交班次、海况或火山状态
  3. 03出发徒步前确认路线是否开放

MCP 相关

该 MCP 服务向 AI 客户端提供 La Réunion 的公共数据查询工具,涵盖天气、交通、服务及自然环境等信息。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://rundata.re/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

rundata.re

rundata.re · 留尼汪岛 974 实时信息

出行、徒步、实测天气、道路:留尼汪岛的公共数据,实时更新,注明日期和来源。

在 rundata.re 和您的 AI 助手(ChatGPT、Claude、Le Chat)中均可使用。免费,无需账户。

这个 MCP 服务可向您的 AI 助手(Claude、ChatGPT、Le Chat……)提供留尼汪岛当前的公共数据:气象站实测天气、警报、海况、火山、电力、空气质量、公共服务、公交时刻、地形和风险。它可以回答“圣皮埃尔现在天气怎么样?”“圣皮埃尔车站下一班公交是什么时候?”或“火山正在喷发吗?”等问题,并提供注明日期和来源的数据。实测数据绝不会与预报混淆:对于“明天会下雨吗?”这类问题,另有工具提供模型预报,并始终明确标注为预报。

English:一个 MCP 服务,向 AI 助手提供留尼汪岛当前的公共数据(实测天气、警报、海况、火山、电力、空气质量、公共机构、公交时刻、地形和风险),注明日期和来源,并将预报单独列出、清晰标注。参见英文摘要。

工具

工具适用于哪些问题返回内容
meteo_actuelle(lieu)“Saint-Gilles 天气热吗?”,“Mafate 下雨了吗?”,“Saint-Joseph 最近什么时候下过雨?”,“Saint-Pierre 有风吗?”最具代表性气象站的测量数据:温度、降雨量(6 分钟和 1 小时)、湿度、风、阵风、气压、当前天气。包括时间、距离、高差和所在坡面。还会提供 Météo-France 雷达观测到的地点及周围 3 km 降雨情况(5 分钟图像,并注明雷达质量;在冰斗深处质量较低)。指定地点后,还会提供最近雨量计过去几小时的降雨情况:过去 12 至 24 小时逐小时数据(“14 时–15 时:1.4 mm”)、最近一次降雨时间和午夜以来的累计降雨量,依据 Météo-France 的逐小时数据包和 6 分钟测量数据;如果阴云密布却没有测到降雨,会提醒用户毛毛雨可能未被雨量计测到。
prevision_meteo(lieu, quand)“明天 Saint-Denis 会下雨吗?”,“这个周末 Cilaos 天气怎么样?”Météo-France 的海外地区 AROME 模型(网格间距 2.5 km)未来最初 48 小时的预报,之后至 7 天使用 ECMWF 的 IFS 模型(9 km),按天和 3 小时时段提供,并根据地点海拔修正温度;每天都会说明哪些时段采用了哪个模型。每日预报紫外线指数(CAMS、Copernicus),采用 WHO 的分级。在高地(海拔 800 m 以上),根据 AROME 的云底和云顶数据,提供上午云海情况(6 时至 9 时、9 时至 12 时):晴朗、在云层上方、云边、云中或云下,并以 100 m 为精度标注云层高度。全岛范围内,还会根据 AROME 提供夜间天空情况(18 时至 6 时,每 3 小时一段,包括今晚或用户指定的夜晚):晴朗、多云、阴天或预计有雨;高地还会说明位于云层上方、云边、云中或云下。每天的可信度(高、中或低)依据 ECMWF ENS 集合预报在 25 km 网格上的 51 种情景是否一致,并说明原因;这绝不是地点本身的降雨概率,且计算数据超过 24 小时时不提供可信度。每条回答都带有 nature: "prevision",并提醒用户这不是实测数据、模型无法识别微气候,且遇到气旋时应以官方警报为准。quand: “明天”、“今晚”、“星期六”、“这个周末”……
vigilance_meteo(lieu?)“有气旋警报吗?”,“东部有强降雨警戒吗?”Météo-France 官方警报:气旋警报(预警、橙色、红色……),以及各区域未来 24 小时公报中的强降雨/雷暴、强风、巨浪/海水淹没警报,并附后续通报内容。不指定 lieu:全岛;指定地点:该地点所属区域。meteo_actuelle 和 prevision_meteo 会自行提示高于绿色级别的任何警报。如果过去 24 小时内卫星检测到植被火灾,还会提供一行 feux_detectes。
temperature_mer(lieu)“Boucan 的水温是多少?”,“Saint-Leu 的涌浪怎么样?”地点附近最近一次测得的水温,并注明日期、距离和测量类型(浮标或卫星);另在 etat_de_la_mer 中提供 ECMWF 的 WAM 模型预报浪况(9 km,4 天):当前浪高、周期和方向,按 3 小时时段提供,并给出每天的最大值,始终标注为预报。
volcan_seismes()“火山正在喷发吗?”,“可以上火山吗?”,“发生过地震吗?”是否正在喷发、ORSEC 级别、最近一次喷发、Enclos 是否开放(pitonlive.com,依据省长令)、OVPF-IPGP 最近发布的内容,以及过去 30 天定位到的火山下方和其他地方的地震。
electricite(lieu?)“电力来自哪里?”,“什么时候给电动汽车充电?”,“Sainte-Marie 停电了吗?”EDF 每 5 分钟按能源类型发布的发电量和可再生能源占比;EDF 的“电力天气”(高峰时段、电网受限情况),涵盖未来几天;EDF 发布并由市政府转发的停电通知(日期、时间、区域及公告链接,不提供公告正文),通过定时事件读取;其他地方则会说明市政府没有发布相关信息,绝不会说“没有停电”。
qualite_air(lieu?)“Saint-Louis 空气污染严重吗?”Atmo Réunion 提供的今日和明日各市镇 ATMO 指数,并注明相关污染物。
sites_sans_reponse(quoi?)“OVPF 网站能用吗?”,“为什么没有火山通报?”,“Sudéau 网站是不是没响应了?”当前无法访问的岛上公共网站:从何时开始无法访问、最近一次检查的通俗描述,以及 rundata.re 因此缺少的内容;恢复响应的网站会从列表中移除。读取失败时,src/http.ts 会在 D1 的 sans_reponse 表(scripts/sans-reponse.sql)中记录,但只有网站状态发生变化时才记录;在 06:00 重新检查之前,网站会保持“待核实”状态,不会显示;每个网站在定时事件中执行一次 GET。公开显示任何状态前须连续失败两次;显示“有响应,但无法读取”前须连续收到两个 403。尚未同意加入的市镇网站不会列入其中。也可在 /sites-sans-reponse 查看。
annuaire_services_publics(quoi, lieu?)“Saint-Paul 市政府的办公时间?”,“CAF 在哪里?”,“本月汽油价格是多少?”根据 service-public.fr 服务目录提供公共服务机构的地址、开放时间(现在营业吗?)、电话和网站。还提供省长令规定的本月燃油和煤气罐最高价格(全岛统一),每天由 .github/workflows/carburants.yml 从省政府公告中读取;也可在交通页面查看。还提供地点附近的药房、医院和诊所,依据 FINESS(quoi = “药房”、“急诊”、“医院”):绝不猜测值班药房,会像 ARS La Réunion 一样引导用户访问 3237.fr 或拨打 32 37;紧急情况请先拨打 15。还提供 OpenStreetMap 中标注的露天市场和室内市场,以及其中列出的营业日(quoi = “市场”):列表并不完整,回答会对此作出说明。还提供西部地区的垃圾回收站(quoi = “垃圾回收站”、“大件垃圾”、“绿色废弃物”……):垃圾箱是否已满依据 TCO 工作人员提供的信息,超过 6 小时未更新的数据会标为待核实;其他地区则会引导用户联系 CINOR、CIREST、CIVIS 或 CASUD。还提供西部五个市镇按街道查询的垃圾收集日(quoi = “收集”、“垃圾桶”,lieu = 街道和市镇),依据 TCO 的 2026 年日历。
transports(arret, ligne?)“Saint-Pierre 汽车总站的下一班公交车什么时候发车?”,“黄线巴士几点经过 Saint-Leu?”该站点所有交通网络的下一班车(线路、方向、时间、等待分钟数):Car Jaune、Citalis、Kar'Ouest、Alternéo、CarSud、Estival、Papang 缆车。提供各交通网络发布的时刻表;对于 Car Jaune(以及在其数据流正常时的 Alternéo、CarSud),还提供运营方公布的实时发车时间、延误、未停靠站点和交通信息。输入的地点若不是站点,则返回附近站点。
velos_libre_service(lieu?)“IUT 站还有共享单车吗?”,“Saint-Pierre 海滨附近哪里可以租到自行车?”Altervélo 电动助力共享单车的实时信息(Saint-Pierre、Saint-Louis、L'Étang-Salé):每个站点可租车辆数和空位数、地点附近最近的站点,或整个网络的情况。
maree(lieu?)“潮水正在上涨吗?”,“上次高潮是什么时候?”,“Le Port 的海平面是多少?”SHOM 潮位计在 Le Port(Pointe des Galets)和 Sainte-Marie 每分钟测得的水位:水位、涨潮或退潮状态、最近一次观测到的高潮和低潮。随后提供即将到来的高潮和低潮时间,由 rundata 根据测量数据计算,并非 SHOM 官方预测(该预测未以开放数据形式提供):时间四舍五入至 5 分钟,Le Port 的误差约为 15 分钟,Sainte-Marie 约为 20 分钟;高度误差约为 5 cm,不提供潮汐系数(见下文“计算潮汐”)。
crues_rivieres(lieu?)“Rivière des Galets 河水位上涨了吗?”,“有洪水警报吗?”,“Ravine Saint-Gilles 的水位是多少?”Vigicrues Réunion 按河流提供的洪水警报,以及各河流 29 个站点每 5 分钟测得的水位和流量,并附变化趋势和历史洪水数据供参考。
bornes_recharge(lieu?, rapide?)“Saint-Gilles 附近有空闲充电桩吗?”,“Saint-Pierre 哪里可以快速充电?”公共电动汽车充电站(136 个站点、411 个充电点),以及每个充电点的实时状态:空闲、占用或故障,并提供功率、插头类型、开放时间和运营网络。
qualite_eau(lieu?, eau?)“Cilaos 的自来水可以饮用吗?”,“可以在 l'Hermitage 游泳吗?”根据 ARS 的检测结果提供水质信息:按供水网络查询自来水(最近一次检测、过去 6 个月内的不合格情况),以及 26 处受检海滩和水池的逐次采样结果。
sentiers_randonnee(lieu?, longueur_min_km?, longueur_max_km?, denivele_max_m?)“Mafate 有关闭的步道吗?”,“Roche Pendue 步道开放吗?”,“Piton des Neiges 的 GPS 轨迹?”,“Cilaos 有没有 10 km 左右的徒步路线?”根据 ONF 地图提供开放或关闭的徒步步道和林道,并说明每处关闭的原因和预计重新开放日期;可按步道、地点周边、冰斗或市镇查询,也可按长度或爬升筛选。提供 ONF 每条步道及 OpenStreetMap 完整路线(GR R1、R2、R3、Piton des Neiges、Roche Écrite……)的 GPS 轨迹(GPX),包括长度、累计爬升和下降,以及海拔剖面(IGN 海拔数据);对于指定路线,还会显示所经过 ONF 步道的状态。只要其中一条步道关闭,avertissement 字段和摘要开头就会提示。配置 FIRMS 密钥后,还会提供 feux_detectes 区块:过去 24 小时卫星检测到的植被火灾(可能有误报),并附上 18 和 112 的号码;指定地点附近发生火灾时,会在摘要开头提示。
restrictions_eau(lieu?, profil?)“Saint-Joseph 有限水措施吗?”,“我可以给花园浇水吗?”当前干旱限制令规定的限水措施,按市镇区分(自来水、河流和泉水、地下水),并说明个人、企业、集体机构或农业经营者不得进行哪些活动。
coupures_eau(lieu?)“Saint-Denis 停水了吗?”,“La Plaine-des-Palmistes 的水可以饮用吗?”供水运营商发布的通知:施工停水(时间、街道)、故障和“请勿饮用”通知;涵盖 Saint-Denis、La Possession、东部六个市镇和 runéo。
resume_du_jour(lieu)“今天 Saint-Paul 有什么新消息?”,“我在 Le Tampon 的一天”一次调用即可获取某市镇当天情况(地点会归属到所在市镇):实测天气和当天预报、所在区域的警报、海况、空气质量、电力、媒体报道的道路状况和交通阻断(不含拥堵测量)、市镇新闻、停水通知、当天活动、节假日或假期、日出日落、市政府是否开放、当天市场(依据 OpenStreetMap 中的营业日)、TCO 市镇垃圾回收站垃圾箱状态(仅采用更新未超过 6 小时的数据)、本月燃油最高价格,以及引导至 3237.fr 查询的值班药房信息,绝不猜测。数据取自网站页面的缓存内容,调用时绝不重新生成:最多读取约 12 项;没有最新缓存的内容会在 non_inclus 中列出,并注明应调用的工具;回答后,如果调用预算允许,会更新最旧的缺失缓存。全岛共用的缓存(新闻、道路、电力、停水、空气质量、海况、日历)也会由定时事件在 AROME 数据网格之后为所有数据中心更新(src/web/partagees.ts)。
defibrillateurs(lieu?)“l'Hermitage 海滩附近最近的除颤器在哪里?”返回地点附近最近的除颤器(全岛超过 1,200 台):地址、距离和步行时间、具体位置,以及是否全天开放或仅在营业时间开放;并提醒拨打 15 或 112。
sport(sport?, lieu?, quand?)“南部这个星期日有排球比赛吗?”,“VBSP 什么时候比赛?”,“这个周末有哪些比赛?”,“手球排名怎么样?”,“谁赢得了 Grand Raid?”本地手球(D1)和排球(R1 和 R2,所有分组)的即将举行赛事和最新官方赛果,并提供俱乐部全名和比赛所在市镇(地点可为市镇、“南部”或俱乐部缩写);还包括根据排球联盟公告和本地新闻提供的取消或延期比赛、排名、帆船赛、高尔夫赛事、赛车日程和 Grand Raid 信息(参赛者、退赛者、领奖台选手)。不提供足球赛果:没有开放数据来源。
cyclones(lieu?)“现在有气旋吗?”,“这场风暴会经过 Saint-Philippe 附近吗?”,“上一个气旋是什么?”,“学校明天关闭吗?”根据 La Réunion 区域专责气象中心(CMRS,Météo-France)的公报,提供西南印度洋活跃热带系统的信息:阶段、平均风速、气压、位置、与岛屿或指定地点的距离和方向、移动情况、官方预报和最近登陆点;还提供省政府的气旋警报,并依据 ORSEC Cyclones 机制(2026-182 号令)说明警报对托儿所和学校的含义,绝不针对某所学校作出判断。非气旋季期间:提供最近一次热带系统和本季系统的信息。
historique_meteo(lieu?, jours?, du?, au?, detail?)“Saint-Benoît 这个月雨下得多吗?”,“过去两周每天都阴天吗?”,“Cilaos 昨天的气温是多少?”,“Saint-Denis 的高温纪录是多少?”,“昨天几点下的雨?”,“昨晚最大阵风是多少?”Météo-France 气象站从首个观测年份(最早可追溯至 1900 年)到昨天的每日测量数据:降雨量、温度、日照、阵风;最多按天查询两个月,更长时段按月或按年查询(每个问题最多 10 年),并与该站 1991–2020 年气候平均值比较,附该站纪录。查询时间为 3 天或更短(按需可扩展至 7 天)且自 2000 年起的,还可提供逐小时数据,包括昨夜:降雨、日照、温度、风和阵风的时间。
evenements(lieu?, quand?, quoi?)“这个周末 Saint-Paul 有什么活动?”,“今晚有音乐会吗?”,“星期六 Saint-Denis 有演出吗?”,“明天有露天市场吗?”即将举行的音乐会、戏剧、舞蹈、喜剧演出、晚会、节庆、音乐节、市场和活动,信息来自各场馆的节目单(TÉAT Champ Fleuri 和 Plein Air、Cité des Arts、CDNOI、Kabardock、Le Séchoir、Léspas、Bisik、Théâtre Luc Donat),Saint-Paul、Le Port、Trois-Bassins、La Possession、Le Tampon、Entre-Deux、Saint-Louis、L'Étang-Salé、Petite-Île、Saint-André、Bras-Panon 和 Saint-Benoît 市政府的活动日历,东部旅游局、CINOR 和北部旅游局(OpenAgenda):标题、日期和时间、场馆、市镇、类型、票价和售票信息(如有),活动状态(取消、延期、售罄);也包括媒体早于主办方发布的活动消息(注明“据 Imaz Press 报道”并附链接),以及活动页面链接。可按市镇、日期(今天、今晚、明天、这个周末、指定日期)和类型查询;电影场次会引导用户访问影院网站。
actualites(lieu?, sujet?, heures?)“Saint-Pierre 有道路封锁吗?”,“示威情况怎么样?”,“Saint-Benoît 有什么新消息?”,“气旋的最新消息是什么?”根据每 5 分钟重新检查的本地媒体及其实时报道,提供岛上正在发生的事情:每条信息都包括时间、媒体、标题、首句、提及的市镇和地点、与用户指定地点相关的内容,以及文章链接;还包括省政府公告。可按市镇或街区,以及主题(示威和道路封锁、道路、天气、火山、水、社会新闻……)查询。
calendrier(lieu?)“学校假期是什么时候?”,“12 月 20 日是法定假日吗?”,“Maïdo 的日出时间?”,“下次满月是什么时候?”La Réunion 学区假期、法定假日(包括 12 月 20 日)、指定地点的日出和日落,以及月相:月相、受照比例、指定地点的月出和月落、下一次月相变化;由 Worker 计算(误差几分钟,适用于无遮挡地平线)。
fiche_terrain(adresse)“这块地可以建房吗?”,“Boucan 的每平方米价格是多少?”,“这栋房子位于洪水风险区吗?”地籍地块(地籍分区、编号、面积)、PLU 分区(U、AU、A、N)及其法规链接、地面海拔,以及附近过去 5 年出售的房屋、公寓和土地的中位价格(DVF 汇总数据,不包含任何单笔交易)。风险信息:地块是否位于风险防范计划管制区内(水灾、地面移动、海岸或技术风险),并附计划链接;市镇的自然灾害令;500 m 范围内登记的滑坡和落石;地震风险和氡风险。
donner_avis(type, message, outil?, lieu?, question_utilisateur?)(由助手调用)向 rundata.re 提交反馈:缺失数据、错误数值、建议或赞扬。鼓励助手在工具未找到信息或出错时,或用户表达愿望时,主动提交反馈。不包含个人数据;电话号码和电子邮箱地址会被移除。
sources_donnees()“这些数字来自哪里?”数据来源、许可证和署名信息。
lieu 是一段自由文本:一个市镇、海滩、街区、冰斗、山峰,或坐标 -21.05, 55.22。目录收录了约 1,250 个来自 OpenStreetMap 的地点及其 IGN 海拔。

注明来源。 每条回答最后都包含 citer(「rundata.re,根据 Météo-France(Saint-Pierre Pierrefonds 站)」,列出实际使用的来源)和 lien,即 rundata.re 上展示相同内容的页面。sources 保留每个数据提供方完整的署名和许可信息:rundata.re 是补充,而非替代。当没有找到结果时,avis 行会提醒使用工具 donner_avis。

每条回答中的数据新鲜度和新增内容。 除了 citer,fraicheur 还会说明数据的日期(如果来源提供,则为 donnee_du)、rundata.re 读取数据的时间(留尼汪时间,即 lue_a)、数据年龄,以及 copies_de_secours:当部分内容来自最近一次读取的副本时,会注明未响应的来源名称及该副本的时间(当同一回答中也包含该来源最新读取的部分时,标记为 partielle:每份副本都会记录其读取的来源);或者注明本次未能读取的部分(警告会说明这一点,只有确实为最新的回答内容才会标为最新)。缓存会记录每次调用所提供的内容(src/lectures.ts),无需任何工具说明这一点。serveur 块会提供版本、工具数量以及一周内新增的工具:工具列表已过时的助手(有些会将列表保留数小时)可以看到这一信息,并据此说明。sources_donnees 列出所有工具和最新新增内容。所有这些信息都来自 src/nouveautes.ts,每次新增工具或发生可见变更时都应更新;服务器指令开头的索引由此生成,变更也会同步到网站的 /nouveautes 页面和 CHANGELOG.md(npm run changelog 会重写该文件;测试会检查其是否为最新)。

微气候。 该岛在 20 公里的范围内海拔从 0 米升至 3,000 米。东部迎风(「迎风坡」),西部背风(「背风坡」)。因此,每条回答都会说明气象站的参考适用性(bonne / moyenne / faible),并在气象站海拔较低、距离较远或位于另一侧山坡时发出警告。沿海气象站绝不会在没有说明的情况下用于回答 Cilaos 的情况。

来源

来源测量内容更新频率许可
Météo-France 气象站,API Package Observations(免费密钥,可选)约 56 个站点,从海岸到山顶:空气、降雨,部分站点还测量湿度、风、气压每 6 分钟一次,发布延迟 5 至 10 分钟Licence Ouverte Etalab 2.0
Gillot 和 Pierrefonds METAR(Météo-France,通过 NOAA aviationweather.gov)空气、湿度、风、气压、当前天气每 30 分钟一次,延迟约 20 分钟OMM 数据,可自由传播
Pioupiou 风力传感器 / OpenWindMap风每 4 分钟一次OpenWindMap 社区许可,必须注明出处
NOAA CoastWatch ACSPO L3S海表温度,卫星数据,分辨率为 2 km 网格每日更新,最早次日发布公有领域
NASA Aqua MODIS(通过 NOAA PFEG),备用数据同上,分辨率为 4 km 网格,仅限白天每日更新,最早次日发布公有领域
Météo-France 天气警报和气旋警报(API DPVigilance,使用同一密钥)按区域和小时显示颜色、跟进文本每有新公告时更新,每 5 分钟读取一次Licence Ouverte Etalab 2.0
Météo-France 雷达,La Réunion 500 m 降水量图(API DPRadar,使用同一密钥)Colorado 和 Piton Villers 雷达估算的降雨量,以及质量指标每 5 分钟一次Licence Ouverte Etalab 2.0
OVPF-IPGP 地震数据(IPGP 的 FDSN 服务)火山下方和岛上发生的已定位地震、震级、深度分析人员完成定位后立即更新CC BY 4.0
OVPF-IPGP 发布内容(其公开 Bluesky 账号)月度公告、通报、喷发信息;通报以图片发布时,自动读取首张图片中的文本(Tesseract,scripts/ovpf-ocr.ts),并注明其来源每次发布时更新附上链接并注明来源
pitonlive.com(独立网站)ORSEC 级别、当前喷发情况、根据省长令公布的 Enclos 入口通行情况每 10 分钟读取一次未注明:附上名称和链接
EDF SEI Réunion,开放数据按能源类型划分的发电量;“电力天气”每 5 分钟更新;每日更新Licence Ouverte Etalab 2.0
EDF Réunion 电力中断通知,由 Sainte-Marie、Saint-Philippe、Cilaos、Saint-André 和 Sainte-Suzanne 市政府转发(其网站的 WordPress API;Saint-André 则读取其在线发布的 EDF 信函列表 PDF)每次中断的日期、时间和区域;正在发生或计划中的中断,以及通知标题和链接;不转载通知正文;对于 PDF,仅使用文件名所示的中断日期,否则使用上线日期,并附上链接(不读取任何 PDF)定时任务每 2 小时重新读取一次(web:courant,src/web/partagees.ts)公开信息,仅使用事实
西部地区(TCO)的垃圾回收站实时情况TCO 的 13 个垃圾回收站中,各类废弃物(大件垃圾、绿色废弃物、建筑垃圾、金属等)的垃圾箱是否已满;由工作人员约每 2 小时填写一次;站点列表包含在数据包中(scripts/build-decheteries.py)每 30 分钟重新读取一次Licence Ouverte
西部地区垃圾收集日历(TCO)Saint-Paul、La Possession、Saint-Leu、Le Port 和 Trois-Bassins 的 3,247 条道路各自的收集日历;读取 125 份日历 PDF,获取生活垃圾、可回收垃圾、绿色废弃物和大件垃圾的收集日期及节假日(scripts/build-collecte.py,每月核对星期几);数据包含在数据包中每周一,.github/workflows/collecte.yml 比较数据集的更新时间;数据集变更时任务失败,以便重新生成(PDF 无法读取时也会失败)Licence Ouverte
OpenStreetMap 的露天及有顶市场(amenity=marketplace)名称、填写时的开放日期和时间、地址、位置;列表不完整数据包含在数据包中,由 scripts/build-marches.py 重新生成ODbL,© OpenStreetMap 贡献者
FINESS,全国卫生和社会机构名录(卫生部)La Réunion 的药房、医院和诊所:名称、地址、市镇、电话、位置(不含精神科和康复机构);FINESS 未提供开放时间或急诊服务信息;名称和地址不含重音符号,与原始文件一致数据包含在数据包中,由 scripts/build-sante.py 重新生成Licence Ouverte 2.0
燃油和煤气罐最高价格(省政府公告,省长每月发布的命令)高级汽油、柴油、GNR、煤油、海上专业用途燃料、12.5 kg 煤气罐,以及与上月的差价.github/workflows/carburants.yml 每天读取一次;若 2 日之后仍缺少当月命令,则任务失败Licence Ouverte(国家公开信息)
学校日历(国民教育部)和节假日(calendrier.api.gouv.fr)La Réunion 学区的假期、节假日每天读取一次Licence Ouverte Etalab 2.0
Atmo Réunion 的 ATMO 指数(Atmo France 地理服务器)按市镇划分的空气质量、主要污染物每天更新当天及次日数据Licence Ouverte Etalab 2.0
行政机构名录(service-public.fr,DILA)公共服务机构的地址、开放时间、电话各机构自行更新Licence Ouverte Etalab 2.0
IGN 国家地址数据库和 Géoplateforme:地理编码、地籍(DGFiP)、Géoportail de l'urbanisme、RGE ALTI 海拔数据地址、地块、PLU 区域、地面海拔各登记库更新时同步更新Licence Ouverte Etalab 2.0
风险预防计划(DEAL 在 Géoportail de l'urbanisme 上发布的 PM1 和 PM3 地役权)洪水、地面移动、沿海和技术风险预防计划中的管制区域计划每次修订时更新Licence Ouverte Etalab 2.0
Géorisques(生态转型部、BRGM)自然灾害令、已记录的地面移动(BDMvt)、地震活动、氡每次发布法令或记录时更新Licence Ouverte Etalab 2.0
公交网络时刻表(GTFS):Car Jaune(大区)、Citalis 和 Papang 缆车(CINOR)、Kar'Ouest(TCO)、Alternéo(CIVIS)、CarSud(CASUD)、Estival(CIREST),通过 transport.data.gouv.fr 获取约 10,000 个站点的理论时刻表;由 scripts/build-transit.py 整理到 Cloudflare D1 数据库中各网络发布新版本时更新Licence Ouverte Etalab 2.0
实时公交(GTFS-RT):Car Jaune、Alternéo、CarSud,通过 transport.data.gouv.fr 获取每班车到达后续站点的预计时间、已取消的班次和站点、交通信息;按班次和站点与时刻表匹配每分钟更新Licence Ouverte Etalab 2.0
Altervélo 共享电动自行车(CIVIS,由 Ecovélo 运营),通过 transport.data.gouv.fr 获取 GBFS 数据流各站点可用的自行车和停车位实时更新(最多每分钟重新读取一次)Licence Ouverte Etalab 2.0
SHOM 潮位站,RONIM 网络(REFMAR):Pointe des Galets(Le Port)和 Sainte-Marie相对于海图基准面的水位,原始数据;用于潮汐计算的已验证逐小时水位每分钟更新,延迟约 4 分钟;由 scripts/build-maree.py 重新计算Licence Ouverte 2.0,注明「REFMAR. http://dx.doi.org/10.17183/REFMAR#RONIM」
Vigicrues Réunion(DEAL Réunion):洪水警报和 29 个河流水文站;站点位置来自 Hub'Eau 参考数据,由 scripts/build-crues.py 整理按河流划分的洪水警报、水位和流量、参考洪水信息每 5 分钟更新Licence Etalab,注明「© VIGICRUES」及日期
充电桩:transport.data.gouv.fr 的 IRVE 全国数据库,站点列表由 scripts/build-irve.py 整理,每 15 分钟筛选一次全国文件中的状态站点、各充电点的功率和插座,以及空闲、占用或停用状态每 15 分钟更新Licence Ouverte Etalab 2.0
自来水:ARS 卫生检测,通过 Hub'Eau 获取按供水网络划分的分析结果、合规情况、超出限值的参数每次发布时更新(采样后 1 至 2 个月)Licence Ouverte Etalab 2.0
游泳水域水质:游泳水域卫生检测(ARS、卫生部),站点列表由 scripts/build-baignades.py 整理;通过 .github/workflows/eau.yml 每天汇总全岛数据四次每次采样的肠球菌和大肠杆菌数据、海滩和泳池信息约每两周更新一次公开信息
徒步: ONF 关闭步道地图(公共地图服务)ONF 管理的每条步道和林道的状态、关闭原因、预计重新开放时间ONF 每次更新时同步更新(省长令、ONF 决定)公开信息,ONF La Réunion
植被火灾:NASA FIRMS(按区域查询 API,VIIRS Suomi NPP、NOAA-20 和 NOAA-21 卫星,375 m),使用免费的 MAP_KEY 密钥(FIRMS_MAP_KEY);不提供密钥时不会发起请求或显示数据过去 24 小时的热点:位置、时间、置信度、功率;注明“卫星探测,可能存在误报”(热屋顶、工业场所、获准焚烧)每天过境 4 至 6 次;每颗卫星查询一次(3 个子查询),结果缓存 30 分钟并覆盖全岛,只有剩余用量至少为此次查询成本的两倍时才查询NASA 数据,可自由分享;“We acknowledge the use of data and/or imagery from NASA's FIRMS (https://earthdata.nasa.gov/firms), part of NASA's Earth Science Data and Information System (ESDIS).”
徒步轨迹:La Réunion 的 OpenStreetMap「hiking」关系数据,由 scripts/build-traces.py 拼接并简化(5 m);按需读取全分辨率 ONF 步道数据;海拔来自 IGN 高程服务(RGE ALTI)GPS 轨迹(GPX)、长度、爬升高度、海拔剖面每次重建时更新路线;ONF 步道每小时重新读取一次ODbL,「© OpenStreetMap 贡献者」;ONF:公开信息;IGN:Licence Ouverte Etalab 2.0
干旱:VigiEau(省长发布的用水限制令)按市镇和水资源划分的级别、受限制的用途每有新法令时更新Licence Ouverte Etalab 2.0
停水通知:Dionéo、runéo、Eaux de La Possession 的通知数据流,以及 CIREST(CISE Réunion)的供水公告停水、施工、“请勿饮用”通知每有新通知时更新公开信息(用户通知)
自动体外除颤器:Géo'DAE,卫生部全国数据库,列表由 scripts/build-dae.py 整理每台设备的位置、使用权限、申报的开放时间每次重建列表时更新Licence Ouverte Etalab 2.0
体育:FFHB、FFVB、Ligue réunionnaise de volley-ball 的公告、FFVoile、ffgolf、Ligue du sport automobile、Sportsregions(俱乐部日历)、Grand Raid(Livetrail)比赛、比分、排名、取消和延期、帆船赛、竞赛、拉力赛、俱乐部活动、颁奖台信息从 30 分钟(Grand Raid、排球联盟公告)到 24 小时(汽车运动日历)不等公开信息(官方日历和结果、各俱乐部发布的活动、附上链接的公告)
气旋:La Réunion CMRS(Météo-France)的公告,由 GDACS(欧盟委员会、联合国)转载;地图海岸线来自 Natural Earth,由 scripts/build-ocean.py 整理各系统的位置、阶段、风力、气压、路径和预报气旋活动期间每 6 小时更新可自由复用,注明「Global Disaster Alert and Coordination System, GDACS」;Natural Earth:公有领域
历史数据:Météo-France 每日基础气候数据,自 1900 年以来的 249 个站点,由 scripts/build-climat.py 整理;1991-2020 年气候平均值由 scripts/build-normales.py 计算每日降雨、气温、阵风、日照、辐射、湿度每天早晨更新,包含前一天的数据Licence Ouverte 2.0
逐小时历史数据:Météo-France 每小时基础气候数据,自 2000 年以来的 104 个站点,由 scripts/build-climat-h.py 整理按小时记录降雨、气温、湿度、风、阵风、日照、辐射(La Réunion 当地时间)每天早晨更新,包含刚结束的夜间数据Licence Ouverte 2.0
活动:TÉAT Champ Fleuri et Plein Air、Cité des Arts、CDNOI、Kabardock、Le Séchoir(The Events Calendar)、Léspas、Bisik、Théâtre Luc Donat 的场馆节目;Saint-Paul、Le Port 和 Trois-Bassins 市政府的 The Events Calendar;Tampon、Saint-Louis、Saint-André、L'Étang-Salé、Entre-Deux 和 La Possession 的活动日历 RSS 数据流;Petite-Île、Bras-Panon 和 Saint-Benoît 的活动日历页面;东部旅游局活动日历(OTI EST REUNION);CINOR 和北部旅游局的 OpenAgenda活动:日期、时间、地点、价格每小时重新读取一次Licence Ouverte Etalab 2.0(OpenAgenda);公开信息(场馆节目、市政府日历):每个活动仅列事实(标题、日期、时间、地点、类别、状态)及其文本的首句(至多),并注明发布方名称、活动页面链接和读取时间;东部旅游局:其法律声明允许转载,注明「OTI EST REUNION — Droits réservés」,标题按原文引用
新闻:Clicanoo、Imaz Press(Google News 站点地图及其“连续新闻”直播)、Freedom、Parallèle Sud、Témoignages 的标题;省政府新闻稿标题、时间、首句、提及的市镇和地点、提及地点的句子、链接每 5 分钟重新读取一次仅列标题、首句和链接,作为新闻聚合器;文章仍保留在各媒体网站上;省政府新闻稿:Licence Ouverte。拒绝自动读取程序的 Linfo.re 和 Zinfos974 不会被读取。
地产价值申请(DGFiP),Cerema 的 DVF API房地产交易,按中位数汇总每年两次Licence Ouverte Etalab 2.0
Météo-France 海外地区 AROME 预报(API「AROME」,与观测数据使用同一密钥;仅供 prevision_meteo 工具使用)模型预报,网格分辨率为 2.5 km,预报时长为 48 小时每天计算 4 次Licence Ouverte Etalab 2.0
ECMWF IFS HRES 预报,通过 Open-Meteo 获取(仅供 prevision_meteo 工具使用,适用于 48 小时之后的预报及备用情况)模型预报,网格分辨率为 9 km每 6 小时重新计算CC BY 4.0;Open-Meteo API 可免费用于非商业用途
ECMWF WAM 海浪预报,通过 Open-Meteo 海洋 API 获取(temperature_mer 工具,/mer 页面)浪高、峰值周期和浪向,预报时长为 4 天,一次请求获取所有海滩的数据每 6 小时重新计算,每 30 分钟读取一次CC BY 4.0;Open-Meteo API 可免费用于非商业用途
ECMWF ENS 集合预报(51 种情景),通过 Open-Meteo 集合预报 API 获取(prevision_meteo 工具,天气页面)按日显示情景分布范围(最高温、降雨、阵风:情景第 1 和第 9 十分位数之间的差值),网格分辨率为 25 km,预报时长为 7 天,一次请求获取全岛数据每 6 至 12 小时重新计算;定时任务每 3 小时读取一次,不会因问题而触发读取CC BY 4.0;Open-Meteo API 可免费用于非商业用途
Copernicus 大气监测服务的 UV 指数(CAMS global),通过 Open-Meteo 空气质量 API 获取(prevision_meteo 工具)预报 UV 指数(含云量影响),网格分辨率为 45 km,预报时长为 5 天,一次请求获取全岛数据每天计算 2 次,每小时读取一次Copernicus 许可(注明 CAMS)和 CC BY 4.0;Open-Meteo API 可免费用于非商业用途
计算潮汐

SHOM 的潮汐预测数据并非开放数据,但其测量数据是开放的。scripts/build-maree.py 使用经典的潮汐调和模型(31 个分潮、Schureman 节点修正、最小二乘法、纯 Python,无需库)拟合多年的有效逐小时水位;服务端会将各分潮相加,计算未来时刻的水位(src/maree/calcul.ts,使用相同公式),无需发送请求。水位会根据最近 6 小时测量值与计算值之间的差异进行校正(风、气压和涌浪会让海平面持续数日上升或下降)。每次响应都会说明:“根据测量数据进行 rundata 计算,并非 SHOM 官方预测”,并注明“REFMAR. http://dx.doi.org/10.17183/REFMAR#RONIM”。

在模型未见过的数月内进行验证,使用每 10 分钟测量一次的高潮和低潮数据(与计算结果一样,按一小时平滑),校正点取提前 12 小时:

验潮站拟合数据验证数据小时误差中位数水位误差中位数
Pointe des Galets(Le Port)2022-07 至 2026-06(34 969 小时)2026-07 至 2026-09,346 次高潮和低潮14,2 分钟(38 % 在 10 分钟以内,64 % 在 20 分钟以内)校正后 2,1 厘米(89 % 在 5 厘米以内);未校正 5,3 厘米
Sainte-Marie2022-07 至 2026-06(26 767 小时)2026-07 至 2026-09,347 次高潮和低潮21,3 分钟(26 % 在 10 分钟以内,48 % 在 20 分钟以内)校正后 2,6 厘米(79 % 在 5 厘米以内);未校正 5,3 厘米

留尼汪岛的潮差较小(20 至 80 厘米):在小潮期间,高潮或低潮会持续较长时间,因此发生时刻更难确定(响应中会注明)。非潮汐海况噪声(风、气压、涌浪、驻波:约 7 厘米)会让观测到的极值时刻偏移数十分钟;增加分潮或校准时刻都无法解决这个问题。因此,时间会按 5 分钟取整,并标注为“Le Port 约有 15 分钟误差”和“Sainte-Marie 约有 20 分钟误差”。

源代码

https://github.com/rundata-re/rundata — MIT 许可证(文件 LICENSE)。

其他链接:data.gouv.fr 上的复用介绍、Glama 上的服务介绍,以及 Facebook、Instagram 和 WhatsApp 账号(频道)。

每个合并的拉取请求都会在测试通过后立即部署到 rundata.re(.github/workflows/deploy.yml)。公交网络发布新时刻表时,会在合并前将其导入 D1(scripts/build-transit.py --d1 rundata-transports):如果没有这些时刻表,部署会在上线前停止。

使用

在你的 AI 助手中:添加自定义连接器,并填写地址 https://rundata.re/mcp(Claude.ai、ChatGPT、Le Chat 等)。无需安装,也无需账号。

本地运行(Node ≥ 20):运行 npm install,然后运行 npm run dev:http(端点为 http://127.0.0.1:8787/mcp,仅本机可见;设置 HOST=0.0.0.0 可开放给网络访问,例如在容器中运行)或 npm run dev:stdio。运行 npm test 可在无需网络的情况下执行测试。

在容器中运行:运行 docker build -t rundata .,然后运行 docker run -i --rm rundata,即可通过 stdio 启动服务(可选设置 METEOFRANCE_APPLICATION_ID 或 METEOFRANCE_API_KEY,用于访问 Météo-France 的站点、天气警报和雷达)。

网站

页面(包括数据)由服务端渲染,供搜索引擎和链接预览使用(src/web/)。菜单、首页卡片、页脚和站点地图都来自同一份分类列表(src/web/categories.ts):

  • /:展示岛上当前情况,每个分类一张卡片,显示该分类的最新数据,然后介绍如何接入连接器;
  • 交叉链接:每个地点的天气页面都会列出 12 km 范围内经过的徒步路线及其状态,并链接到所属区域页面;每条步道或路线的详情页都会链接到最近的天气页面和警报页面;市镇页面包含「徒步」卡片(该市镇的 ONF 步道,以及已关闭的步道)和「活动」卡片(未来两周的活动);/evenements/ce-week-end 按天显示有活动的市镇天气预报;
  • /meteo:全岛天气(地图、从海岸到山顶的气象站、海况),以及 24 个市镇和一些地点(火山、Maïdo、Hell-Bourg 等)的 /meteo/<commune> 页面,显示最相关的气象站、沿海地点的海况,以及标注来源的预报;
  • /communes/<commune>:显示市镇当前的所有相关信息(气象站天气、所属区域的警报、空气质量、沿海海况、汽车站或市中心附近的下一班公交、市政厅开放或关闭情况、日照),然后显示全岛的火山和电力信息;/communes 按区域列出市镇;
  • /communes/<commune>.rss:以 RSS 源提供市镇警报,仅在发生事件时发布文章:Météo-France 对该区域发布高于绿色级别的警报(沿海市镇的海浪淹没警报,以及所有市镇的气旋警报)、点名该市镇的停水通知、该市镇范围内关闭的 ONF 步道、火山警戒级别高于「Vigilance」。内容读取自页面副本(警报、/coupures-eau、/randonnees、/volcan),不会专门为 RSS 源生成;事件持续期间,每篇文章都保留相同的标识符,以便阅读器只显示一次(src/web/rss.ts)。市镇页面的页眉会声明此 RSS 源,页脚提供链接;
  • /vigilance:按区域显示天气警报和气旋警报;
  • /ecoles-cyclone:说明省政府的 ORSEC Cyclones 机制对托儿所、学校、初中、高中和大学的规定,以及根据 Météo-France 公报显示的当前警报;页面还会引用省政府最新的气旋通告(标题和链接),并在通告中说明警报解除和学校复课时一并显示;两个来源存在差异时,会同时列出;
  • /alerte-cyclone:按页面引用省政府 ORSEC Cyclones 机制对各警报级别的规定(工作、学校、活动、交通、避难中心、保护阶段),并附上 PDF 链接,显示在当前警报下方;不涉及计划中没有提到的内容(公交、商店);
  • /mer:海滩外海水温;
  • /volcan:是否喷发、Enclos 是否开放、地震和观测站消息;
  • /bus:公交网络和汽车站的下一班车;
  • /actualites:根据本地媒体报道,汇总过去 24 h 岛上发生的事情:媒体发布当天直播报道时展示该报道;列出所有新闻及其时间、媒体和提及的市镇;提供按市镇和主题筛选的功能;显示省政府通告;有大型活动的日子,最新标题也会显示在首页顶部;
  • /trafic:显示交通状况,不复制交通数据:提供 Waze 实时地图(仅在点击时加载,因为它会写入 Cookie)、指向 infotrafic.re 的链接(Réunion 大区官方道路状况)、公交延误和绕行信息、关闭的林区道路、Enclos 通行情况、警报,以及过去六小时媒体标题中关于道路和路障的报道,并显示省政府当天的通告(根据最近一次新闻读取结果;若读取时间过久,则在返回响应后重新读取);
  • /coupures-eau/<commune>:显示市镇供水信息:供水商发布的停水通知,或者显示「截至 HH:MM 尚未发布通知」;还会显示供水商信息(根据 ARS 卫生检查结果,src/eau/distributeurs.json、scripts/build-distributeurs.py)、干旱级别和自来水信息;内容取自 /coupures-eau、/secheresse 和 /eau 的页面副本。每个市镇页面都会通过「水」卡片链接到此页面;
  • /air:在地图上显示各市镇当天的 ATMO 指数;
  • /electricite:按发电类型显示电力产量、可再生能源占比和电力紧张时段;#coupures 部分列出转发 EDF 通知的市政府公布的停电信息;
  • /calendrier:显示 La Réunion 学区当前学年的校历,包括所有假期时段(下一学年的校历一经公布也会显示)、公共假日,以及日出和日落时间;
  • /randonnees:徒步者页面,在岛屿地图上按状态展示所有路线和步道,并显示距离和爬升高度;提供筛选功能(搜索、距离、爬升高度、仅显示开放路线、环线),并标出因关闭而中断的路线;/sentiers:按市镇列出当天关闭的步道;使用 FIRMS 密钥时,还会显示过去 24 h 卫星观测到的植被火灾(有火灾时置顶,并附上 18 和 112;市镇的「徒步」卡片也会显示这些信息);/feux:在岛屿地图和列表中显示这些火灾,以及关闭的步道(取自 /sentiers 的副本)和警报;没有密钥时,页面会说明火灾探测尚未启用,不会被索引(noindex)、不会加入站点地图,也不会有其他页面链接到它;
  • /randonnees/<secteur>:每个区域各有一个页面(Mafate、Cilaos、Salazie、Volcan、Hauts de l'Ouest、Nord、Est、Sud、Sud sauvage、Littoral):置顶显示该区域关闭的步道,以及该区域的路线和 ONF 步道、通行信息和最近页面的天气;内容取自 /randonnees 的副本,不额外读取任何数据。步道或路线所属的区域由 scripts/build-traces.py 计算一次:即其路线经过距离最长的区域(Mafate 山谷范围取自 OpenStreetMap,市镇范围取自 geo.api.gouv.fr,火山和海岸的海拔数据取自 IGN);横跨全岛的路线不指定所属区域,而是列入其经过的每个区域;
  • /sentiers/<sentier> 和 /randonnees/<randonnée>:ONF 步道或徒步路线的详情页,显示地图轨迹、路线剖面、根据 ONF 信息得出的状态(路线关闭路段置于页面顶部)以及 GPX 文件(在同一地址后加上 .gpx;每个关闭路段的开头都会标记一个「FERMÉ」点);
  • /evenements:按天列出未来两周的活动,并可按类型筛选;/evenements/ce-week-end:列出周末活动(从周五 17 h 到周日晚上;若公共假日紧接周末,也会一并包含;从周一起显示即将到来的周末);/evenements/concerts:列出音乐会,并单独显示当晚的演出。后两者都取自 /evenements 的副本,不额外读取任何数据;
  • /decheteries:列出西部地区(TCO)的垃圾回收站,按市镇分区并提供锚点;根据工作人员报告显示垃圾箱是否已满;超过 6 h 的更新会标注「请核实」;TCO 的五个市镇页面均有卡片链接到此页面;
  • /collecte 和 /collecte/<commune>:显示 TCO 五个市镇逐街的垃圾收集日,提供街道搜索,并按日历分组列出街道;
  • /carburants:显示省长制定的当月最高油价、与上月的差额,以及通告链接;站点地图中的日期取自法令日期;/trafic 也以地图形式显示油价;
  • /aujourdhui/<commune>:每个市镇的单页当日概况,内容与 resume_du_jour 工具(src/tools/resume.ts)生成的摘要相同:如果天气尚无副本,则像市镇页面一样生成天气信息;其余内容只从页面副本中读取;缺少的信息会链接到相应页面;此页面从 /communes/<commune> 链接;
  • /sites-sans-reponse:按主题列出岛上当前无响应的公共网站、无响应时长、最近一次测试时间以及本站缺少的信息,并列出过去 7 天内恢复响应的网站;内容与 sites_sans_reponse 工具(src/sans-reponse.ts)使用的列表相同,每 15 分钟至多读取一次;此页面从 /a-propos 链接;
  • /nouveautes:逐日用一句话介绍网站和连接器新增的功能;此页面从页脚链接,内容由 sources_donnees 提供;列表与 CHANGELOG.md 相同;
  • /presse:新闻媒体专区,从页脚链接;包含新闻通稿、根据显示时网站数据统计的关键数字(工具、气象站、公交站、充电桩、除颤器、步道等)以及可下载的视觉素材;素材可自由使用,但须注明 rundata.re。视觉素材是由 Cloudflare 与 Worker 一同提供的静态文件(public/presse/,由 scripts/build-presse.py 构建),不包含在 Worker 程序包中;
  • 每个页面底部都有一个「有意见或缺少数据?」表单(src/web/avis.ts):这是一个简单的 HTML 表单,不含脚本,提交到 POST /avis,提交后会返回原页面并显示感谢信息。网站和 donner_avis 工具收到的意见都会存入 D1 的 avis 表(scripts/avis.sql),不记录 IP 地址,并在 12 个月后删除;
  • /robots.txt、/sitemap.xml、/og.png(Facebook、WhatsApp 等平台的预览图,scripts/build-og.py)、/favicon.svg 和 /favicon.ico(rundata.re 的标志「Point chaud」,提供 SVG 和 48 px PNG 格式)、/manifest.webmanifest(可将网站保存在手机主屏幕上,打开时访问 /?ref=pwa,并提供「天气」「警报」和「徒步」快捷方式;图标位于 public/icons/,标志和 Logo 位于 public/logo/,由 scripts/build-icons.py 根据品牌工具包生成)、/sw.js(Service Worker:优先使用网络;无网络时显示每个已打开页面的最新副本,并在横幅中标明日期;不缓存 /mcp、?maj=、数据流或轨迹)、/hors-ligne(显示从未在无网络时打开过的地址页面,以及保存在手机上的页面)。 每个页面标题下方都有一句说明页面用途的话;每个页面底部、反馈表单上方都有一个「分享到 WhatsApp」链接(?ref=wa),以及邀请用户在 Facebook、Instagram 或 WhatsApp 上关注 rundata.re 的号召(?ref=site)。

English

留尼汪岛(法国海外省 974,印度洋)的实时公开数据,均注明来源:

  • 工具:
    • meteo_actuelle(lieu):最具代表性气象站的当前天气。
    • prevision_meteo(lieu, quand):模型预报(Météo-France AROME outre-mer 2.5 km 预报未来 48 小时,之后通过 Open-Meteo 使用 ECMWF IFS 9 km 预报最多 7 天),包含每天的 UV 指数(Copernicus CAMS)和可信度(51 个 ECMWF ENS 成员的一致程度)、夜间天空状况(18:00 至 06:00,晴朗或多云,以及高地是否在云层之上或云层之中);始终标明为预报,绝不与实测数据混淆。
    • vigilance_meteo(lieu?):Météo-France 官方天气警报和气旋警报,可查询全岛或某地所在区域。
    • volcan_seismes():Piton de la Fournaise 状况(喷发、警戒级别、通行情况)和 OVPF-IPGP 定位的近期地震。
    • electricite(lieu?):EDF 实时发电结构、可再生能源占比和未来几天的电网信号;以及 EDF 公布、部分由市政厅转发的停电信息(日期、时间、街道和链接,不含公告正文)。
    • calendrier(lieu?):学校假期(南半球日历)、包括 12 月 20 日在内的公共假日、日出和日落,以及月相(月相阶段、受光比例、当地月升和月落时间、下一个月相阶段),均为计算所得。
    • qualite_air(lieu?):各市镇今天和明天的 ATMO 空气质量指数。
    • sites_sans_reponse(quoi?):岛上当前无法响应的公共网站,每天重新检查;列出从何时起无法访问、最近一次错误的通俗说明,以及因此 rundata.re 缺少的内容;恢复响应的网站会从列表中移除。
    • annuaire_services_publics(quoi, lieu?):公共服务机构的地址、开放时间和电话号码;本月由省长制定的燃油最高价格(quoi: "carburant");以及 FINESS 收录的附近药房和医院(quoi: "pharmacie"、"urgences"),值班药房请拨打 3237.fr 或 32 37,紧急情况请拨打 15。此外,还包括 OpenStreetMap 地图上的集市(quoi: "marché"),列表不完整;以及西部地区的垃圾回收站(quoi: "déchèterie"),列出 TCO 工作人员报告已满的垃圾箱;还有西部地区按街道列出的垃圾桶收运日期(quoi: "collecte",lieu:街道及其所属市镇),数据来自 TCO 日历。
    • transports(arret, ligne?):某站点的下一班公交车发车信息,涵盖全岛所有公交网络(已公布的时刻表,以及网络发布 GTFS-RT 数据流时提供的实时发车时间、延误和交通警报)。
    • velos_libre_service(lieu?):Saint-Pierre、Saint-Louis 和 L'Étang-Salé 各站点 Altervélo 共享单车的实时可用情况(电动自行车和空闲车桩数量)。
    • maree(lieu?):Réunion 两个 SHOM 潮位站(Le Port、Sainte-Marie)的实测海平面:潮位、涨潮或退潮状态、最近观测到的高潮和低潮;随后是 rundata 根据多年实测数据计算的下一次高潮和低潮(调和分析,scripts/build-maree.py),并非 SHOM 的官方预测(该预测未开放);时间四舍五入至 5 分钟,在 Le Port 的误差约为 15 分钟,在 Sainte-Marie 约为 20 分钟(在拟合期之外的月份进行核验所得的中位数);高度误差约为 5 厘米,不提供潮汐系数。
    • crues_rivieres(lieu?):河流洪水警戒,以及 29 个水位站(Vigicrues Réunion)的实时水位和流量,含趋势信息和历史洪水参照点。
    • bornes_recharge(lieu?, rapide?):公共电动汽车充电站及每个充电点的实时状态(空闲、使用中、故障)、功率、插头类型和开放时间。
    • qualite_eau(lieu?, eau?):各供水网络的自来水水质,以及区域卫生机构检测的 26 处海滩和河流泳池的水质。
    • sentiers_randonnee(lieu?):根据 ONF(法国国家林业局)地图显示开放或关闭的徒步路线和林道,并注明每处关闭的原因;提供每条 ONF 路线及 OpenStreetMap 完整徒步线路(GR R1、R2、R3、Piton des Neiges……)的 GPS 轨迹(GPX)、长度、爬升和路线剖面,标明各线路所经 ONF 路线的状况,并在路线中有关闭路段时优先发出警告;可按长度和爬升筛选徒步路线。
    • restrictions_eau(lieu?, profil?):按市镇和水资源列出正在实施的干旱用水限制,并说明个人、企业、地方政府或农场禁止进行的活动。
    • coupures_eau(lieu?):供水商发布的停水通知和禁止饮用通知。
    • resume_du_jour(lieu):一次调用即可获取某市镇当天的情况(天气、警报、海况、空气、电力、道路、新闻、停水、活动、市政厅、当天集市、西部垃圾处理站、燃油价格、通过 3237.fr 查询的值班药房),数据来自网站页面副本;缺失的信息会注明应调用哪个工具。
    • defibrillateurs(lieu?):附近的公共除颤器(AED),含地址、步行时间和开放时间。
    • sport(sport?, lieu?, quand?):地区手球和排球联赛的赛程、结果和排名(可按俱乐部缩写、城镇或岛上区域查询;包含联赛公告或新闻中提到的取消比赛)、帆船赛、高尔夫比赛、赛车运动日历、Grand Raid 的参赛人数和领奖台信息,以及体育新闻标题。
    • cyclones(lieu?):来自 RSMC La Réunion 通报(通过 GDACS)的西南印度洋活跃热带气旋信息:阶段、风速、与岛屿的距离和方向、移动情况、官方预报及最近接近时间;当前生效的气旋警报,以及省政府 ORSEC 计划对托儿所和学校的相关规定说明。
    • historique_meteo(lieu?, jours?, du?, au?, detail?):Météo-France 气象站的历史实测天气数据,从各站最早年份(最早为 1900 年)到昨天,按日提供降雨量、最低/最高气温、日照、阵风,并与该站 1991-2020 年常年值和历史记录对比;还可查询 2000 年以来的逐小时数据,适用于几天的时段,包括昨夜。
    • evenements(lieu?, quand?, quoi?):即将举行的音乐会、戏剧、舞蹈、喜剧、夜生活活动、节庆、节日和集市,数据来自音乐厅和剧院(TÉAT、Cité des Arts、CDNOI、Kabardock、Le Séchoir、Léspas、Bisik、Théâtre Luc Donat)的节目单、市政厅活动日程和 OpenAgenda(岛北部);包括日期、时间、场地、类型、价格、预订链接、状态(取消、延期、售罄)和各活动页面的链接。
    • actualites(lieu?, sujet?, heures?):通过当地媒体的新闻标题和实时博客了解岛上最新动态(时间、媒体、首句、提及的市镇、各条内容对所查询地点的描述、链接),以及省政府新闻稿;可按地点和主题查询。
    • fiche_terrain(adresse):地籍地块、分区规划(PLU)、海拔、周边房产中位数价格(汇总 DVF),以及自然灾害风险:该地风险预防计划、自然灾害法令、500 米范围内记录的山体滑坡。
    • meteo_actuelle 还会报告 Météo-France 雷达在该地点观测到的降雨情况。
    • temperature_mer(lieu):海滩附近实测的海表温度,以及 ECMWF WAM 模型的浪况预报(浪高、周期、方向、未来 4 天,通过 Open-Meteo 获取),始终标明为预报。
    • donner_avis(type, message, …):向 rundata.re 提交反馈(数据缺失、数值错误、建议、赞扬);如果工具未能提供足够信息,欢迎助手提交反馈。
    • sources_donnees():数据来源和许可证。
  • **地点:**自由文本(城镇、海滩、山峰)或 lat, lon。
  • **交通状况:**Réunion 没有开放供重复使用的实时交通测量数据,因此没有交通工具。/trafic 页面仅在收到请求时加载 Waze 实时地图(会设置 Cookie),并链接到 Région 的 infotrafic.re;同时展示可开放获取的信息:公交延误和绕行、关闭的林道、天气警报、当地媒体过去六小时内关于道路和封路的新闻标题,以及省政府当天发布的相关新闻稿。
  • 燃油价格:/carburants,省长制定的每月最高价格,每天从省政府新闻稿中读取。
  • 最新动态:/nouveautes 和 CHANGELOG.md 均由 src/nouveautes.ts 生成。
  • 新闻资料:/presse 提供新闻稿、根据网站数据实时统计的关键数据,以及可免费使用并注明来源「rundata.re」的截图。
  • **数据新鲜度和新工具:**每个回答还会附带 fraicheur(数据日期、rundata.re 读取数据的时间、数据时效,以及数据源无响应时是否提供了最近的副本)和简短的 serveur 区块(版本、工具数量、本周新增工具数),便于助手识别过时的工具列表;sources_donnees 列出所有工具和最新变更。
  • **引用:**每个回答末尾都包含 citer(「rundata.re,根据 」)和 lien(对应的 rundata.re 页面);数据来源的完整署名和许可证保留在 sources 中。
  • **回答:**每个回答都包含测量时间、气象站距离、高度差、迎风面或背风面,以及相关性标记。
  • **许可证:**代码采用 MIT 许可证。数据遵循各来源的许可证(参见 sources_donnees)。地名 © OpenStreetMap contributors(ODbL),海拔数据来自 IGN(Licence Ouverte)。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。