关于 statistik-austria-mcp
statistik-austria-mcp 为 AI 助手提供 Statistik Austria 开放数据门户的查询能力,适合需要分析奥地利官方统计数据的用户。它将分类代码转换为德语标签,并标记合计行、支持筛选和分页。
主要功能
- 01按关键词搜索 OGD 目录
- 02读取数据集维度和指标
- 03将代码解析为德语标签
- 04标记合计行
- 05按维度筛选并分页
适用场景
- 01查找奥地利统计数据集
- 02检查数据集包含的维度和指标
- 03获取可读标签格式的统计数据
- 04筛选大型表格并分批读取
MCP 相关
作为 MCP 服务,它向 AI 助手开放目录搜索、数据集结构和数据获取工具,并提供目录分类资源。客户端通过 stdio 连接。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
3收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| dataset_id | string | 是 |
详细介绍
Statistik Austria MCP 服务
一个 MCP 服务,让 AI 助手能够访问 Statistik Austria 的开放数据门户
关于项目
这是一个 Model Context Protocol 服务,面向 Statistik Austria 的免费开放政府数据门户(data.statistik.gv.at)。它可以让 Claude 等 AI 助手搜索数据目录、查看数据集结构并直接获取数据,无需你下载并粘贴 CSV 文件。
该门户将每个数据集发布为一组包含编码值的文件,因此模型很难正确读取原始表格。此服务会将分类文件合并到数据中,让每个值都以易读的德语标签及其原始代码的形式呈现,并标记出作为其他行汇总结果的行。
这是一个用于练习构建 MCP 服务的个人学习项目。
功能:
- 在整个 OGD 目录中按关键词搜索(约 540 个数据集)
- 数据集元数据:维度和度量
- 将数据代码解析为德语标签,以
label <code>格式呈现 - 标记汇总行,避免助手将汇总值与其组成部分相加
- 按维度值筛选,无需完整读取大型表格
- 分页时绝不会悄无声息地遗漏行:每次响应都会说明总行数以及如何继续读取
- 对服务无法读取格式的数据集给出清晰说明,而非只返回错误
- 下载内容会缓存一小时,因此分页浏览数据集时无需重复下载
构建所用技术
- Python 3
- MCP Python SDK
- pandas
- httpx2
- cachetools
- uv
(返回顶部)
开始使用
此服务在你的计算机上本地运行,并通过 stdio 与 MCP 客户端通信。uvx 会安装并启动它,因此正常使用时无需克隆仓库。
前置条件
- uv(它会自动下载匹配的 Python 版本)
- Git
- Claude Desktop 或 Claude Code(或任何其他 MCP 客户端)
安装
Claude Desktop
- 打开配置文件。在 Claude Desktop 中,前往 Settings → Developer → Edit Config,或直接打开:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
- 添加服务
{ "mcpServers": { "statistik-austria": { "command": "uvx", "args": ["--from", "git+https://github.com/DV155/Statistik-Austria-MCP-Server", "statistik-austria-mcp"] } } } - 完全退出 Claude Desktop,然后重新启动。
Claude Code
claude mcp add --transport stdio --scope user statistik-austria -- uvx --from git+https://github.com/DV155/Statistik-Austria-MCP-Server statistik-austria-mcp
首次启动需要一些时间,因为 uv 会安装依赖项(pandas 是最大的依赖项)。如需提前完成安装,请在终端中运行上面的 uvx 命令,并在命令运行后按 Ctrl+C 停止。如果 Claude 找不到 uvx,请将 "uvx" 替换为它的完整路径(运行 which uvx 即可查看)。Claude Desktop 会将服务日志写入 Windows 上的 %APPDATA%\Claude\logs 和 macOS 上的 ~/Library/Logs/Claude。
本地开发
- 克隆仓库
git clone https://github.com/DV155/Statistik-Austria-MCP-Server.git cd Statistik-Austria-MCP-Server - 安装依赖项
uv sync - 在 MCP Inspector 中启动服务
uv run mcp dev src/statserver/server.py
(返回顶部)
用法
向 Claude 询问有关奥地利统计数据的问题,它会自行使用这些工具。
| 工具 | 功能 |
|---|---|
search_dataset | 按关键字搜索目录,并返回匹配的数据集 ID 和标题 |
fetch_dataset_json | 返回数据集的维度和指标及其代码 |
fetch_dataset_csv | 返回包含标签、总计行标记和分页的数据;filters 仅保留指定维度值对应的行 |
该服务还提供 ogd://catalog 资源,其中包含目录的类别。
提示:目录中的标题为德语,因此服务会使用德语搜索。Claude 会自行翻译问题,但用德语提问也同样有效。
局限性
在 2026 年 10 月对目录中的全部 543 个数据集进行了测试:
- 474 个可完整加载
- 66 个以服务无法读取的格式发布(ZIP 压缩包和 WFS、WMS 等地图服务);服务会说明这一点,而不会报错
- 2 个不包含数据行
- 1 个(
OGDEXT_BINNENWAND_1)加载时没有标签,且速度较慢
其他局限性:
- 仅支持免费的 OGD 门户,不支持收费的 STATcube API
- 目录从门户的 HTML 页面读取,因此如果 Statistik Austria 更改该页面的结构,搜索将无法正常工作
- 下载超大型数据集时,首次请求可能需要几秒钟
(返回顶部)
数据源
所有数据均来自 Statistik Austria - data.statistik.gv.at,根据 CC BY 4.0 授权。发布通过此服务获取的结果时,请注明 Statistik Austria 为数据来源。
这是一个独立项目,与 Statistik Austria 无关,也未获得其认可。
(返回顶部)
参与贡献
正是各种贡献让开源社区成为如此适合学习、启发和创造的地方。我们非常感谢你做出的任何贡献。
如果你有能让项目变得更好的建议,请复刻仓库并创建拉取请求。你也可以直接创建一个带有 “enhancement” 标签的问题。 别忘了给这个项目点个星!再次感谢!
- 复刻项目
- 创建功能分支(
git checkout -b feature/AmazingFeature) - 提交更改(
git commit -m 'Add some AmazingFeature') - 推送到分支(
git push origin feature/AmazingFeature) - 创建拉取请求
(返回顶部)
主要贡献者:
许可证
根据 MIT 许可证分发。更多信息请参阅 LICENSE。
(返回顶部)
## ContactDaniil Vasilcovschii - LinkedIn - GitHub
Project Link: https://github.com/DV155/Statistik-Austria-MCP-Server
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。