关于 statfin-mcp
statfin-mcp 通过 PxWeb 为 Statistics Finland 的 StatFin 数据库提供 MCP 接入。它支持查找统计表、查看元数据并筛选获取 JSON-stat2 数据,无需 API 密钥。
主要功能
- 01按关键词搜索 StatFin 表格
- 02查看表格维度和值代码
- 03获取筛选后的 JSON-stat2 数据
- 04浏览主题分类
适用场景
- 01查找特定统计主题的表格
- 02查询数据筛选项后再请求数据
- 03获取指定地区的近期统计数据
MCP 相关
它向 MCP 客户端提供 StatFin 表格搜索、元数据查看、主题浏览和数据获取工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
4收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| emne | string | 否 | 可选:按主题 ID 限定范围(来自 list_emner),例如 'vaerak' |
| limit | integer | 否 | 最大命中数(默认值:10) |
| query | string | 是 | 搜索词,例如 'population'、'unemployment'、'consumer price index'、'building' |
详细介绍
@nor-data/statfin-mcp
用于查询 Statistics Finland (Tilastokeskus) 官方统计数据的 MCP 服务,数据来自 StatFin 数据库,并通过 PxWeb API 提供。搜索 3,000 多张表,查看其维度,并以 JSON-stat2 格式获取数据。无需 API 密钥。
它属于 nor-data 北欧开放数据 MCP 服务系列。基于与 SSB(挪威)服务相同的模式构建——StatFin 和 SSB 都使用 PxWeb,因此两者的工具相互对应。
工具
| 工具 | 功能 |
|---|---|
sok_tabell | 在所有 StatFin 表中按关键词搜索。PxWeb 不支持服务端搜索,因此此工具会在本地匹配内置索引(根据完整的表树构建),并返回最相关的表及其 tabell_id。 |
hent_tabell | 获取表的元数据:标题,以及包含有效值代码和标签的维度(变量)。先读取此信息,了解有哪些筛选代码。 |
hent_data | 以 JSON-stat2 格式获取实际数据,使用扁平的 {variabelkode: [verdier]} 映射进行筛选。支持特殊选择方式,例如 {filter:'top', values:['1']},用于获取最新时期的数据。 |
list_emner | 列出约 140 个 StatFin 主题领域(例如,vaerak = 人口结构)。当关键词搜索无结果时,可按主题限定搜索范围或浏览主题。 |
所有工具都接受可选参数 lang(默认值为 en,也可选 fi、sv)。变量代码与语言无关;只有标题和标签会本地化。
Agent 示例流程
sok_tabell({ query: "population by region" })→tabell_id: "vaerak/statfin_vaerak_pxt_11ra.px"hent_tabell({ tabell_id })→ 查看变量Alue(地区)、Vuosi(年份)、Tiedot(信息)hent_data({ tabell_id, filtre: { Alue: ["SSS"], Vuosi: { filter: "top", values: ["1"] } } })→ 以 JSON-stat2 格式获取最新的全国数据
安装
// Claude Desktop / Claude Code MCP config
{
"mcpServers": {
"statfin": {
"command": "npx",
"args": ["-y", "@nor-data/statfin-mcp"]
}
}
}
开发
npm install
npm run build-index # crawl the StatFin tree → data/tables-index.json (~1–2 min)
npm run dev # run from source via tsx
npm run build # compile to dist/
搜索索引随软件包一起提供(data/tables-index.json)。运行 npm run build-index 可刷新索引(每晚运行一次就足够了——StatFin 经常更新表,但不常更新表树)。
说明与限制
- PxWeb 每 10 秒最多允许 30 次调用,并会拒绝超过约 100,000 个单元格的查询(HTTP 403)——请保持
hent_data的选择范围较小(少量地区 × 少量年份)。 - 少数主题(
vtp、kivih、sekn、akay)在服务端会返回 HTTP 400,因此在索引过程中会跳过;这是 StatFin 的问题,并非此处的错误。索引会在skipped下记录这些主题。 - 数据由 Statistics Finland 按 CC BY 4.0 许可提供。
许可证
MIT
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。