意大利开放数据服务

提供意大利行政区划数据的开发者友好工具,包括市镇、省份、地区、邮政编码和地理数据等。

  • by stucchi
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 stucchi/italy-opendata-mcp

使用说明

意大利开放数据mcp

MCP服务器通过简单、开发人员友好的工具公开意大利开放数据(市、省、地区、邮政编码、坐标、地理数据)。

特性

  • 7个MCP工具 了解意大利的行政等级制度
  • 官方消息人士:ISTAT和ANPR(如有)
  • 延迟下载:数据在首次使用时获取并在本地缓存(~1.8 MB SQLite)
  • 首次使用后离线:所有查询都是本地查询
  • 没有Docker:可通过安装 uvx 或 pip,以克劳德开头和结尾

数据源

数据 来源 类型
市、省、地区、ISTAT代码 ISTAT 官方
常住人口 自动车牌识别 官方(每日更新)
表面积、海拔、高度测量区 ISTAT 官方
邮政编码(CAP) Comuni json 社区(无官方来源)
质心坐标 开放性败血症 社区(无官方来源)

安装

uvx italy-opendata-mcp

在.mcp.json中的用法

{
  "mcpServers": {
    "italy-opendata": {
      "command": "uvx",
      "args": ["italy-opendata-mcp"]
    }
  }
}

来源

git clone https://github.com/stucchi/italy-opendata-mcp.git
cd italy-opendata-mcp
uv venv && uv pip install -e .

工具

分层导航

list_regioni()  →  list_province(regione="Lombardia")  →  list_comuni(provincia="MI")
工具 参数 说明
list_regioni -- 所有20个有直辖市数量和人口的地区
list_province regione? 具有可选区域过滤器的省份
list_comuni regione?, provincia?, limit? 具有可选过滤器的市政当局(默认400个结果)

搜索

工具 参数 说明
get_comune nome_o_codice 按名称或ISTAT代码列出的市政当局的完整详细信息
get_by_cap cap 查找与邮政编码关联的城市

数据管理

工具 参数 说明
refresh_dataset force? 从源重新下载数据
datasets_status -- 本地缓存状态

每个城市的可用字段

每个城市包括:

  • 注册表:名称、ISTAT代码、地籍代码、省缩写、省、地区
  • 人口统计:人口(ANPR,每日更新)
  • 地理:纬度、经度、表面积(km²)、高度(m)、高度测量区
  • 分类:沿海、岛屿、城市化程度
  • 邮政的:相关CAP代码列表

输出示例

> get_comune("Roma")

{
  "codice_istat": "058091",
  "nome": "Roma",
  "codice_catastale": "H501",
  "popolazione": 2802399,
  "superficie_kmq": 1288.19,
  "altitudine": 20,
  "zona_altimetrica": "Pianura",
  "litoraneo": 1,
  "latitudine": 41.89332,
  "longitudine": 12.482932,
  "sigla_provincia": "RM",
  "provincia": "Roma",
  "regione": "Lazio",
  "cap": ["00118", "00119", "00120", ...]
}

缓存

数据在首次使用时保存在本地:

操作系统 路径
macOS/Linux ~/.cache/italy-opendata-mcp/italia.db
窗户 %LOCALAPPDATA%\italy-opendata-mcp\italia.db

要刷新数据,请使用 refresh_dataset(force=True).

资料覆盖范围

计数
地区 20
省份 107
市镇 7896
人口 7896
坐标为 7889
地理数据 7519
邮政编码 7887

许可证

麻省理工学院