@pipeworx/statfin-fi

Connect: https://gateway.pipeworx.io/statfin-fi/mcp · Install: one-click buttons

Tools: 3

Statistics Finland (StatFin) — the full catalogue of Finnish official statistics published by Tilastokeskus, served over its PxWeb API: population, education, employment, consumer prices, housing, health and national accounts.

Tools

ToolWhat it returns
subjectsThe StatFin subject tree. path empty lists ~135 subject folders; path: "vkour" lists that folder’s tables. Entries with type: "l" are folders, type: "t" are tables.
table_metaOne table’s dimensions and every valid value, when you want to see what a table breaks down by.
query_tableActual figures. Give it select in plain English and it resolves the codes itself; give it body and it passes your PxWeb query straight through.

Table paths

A table path is <folder>/<id>.px where the id is the bare 4-character table code:

vkour/15ig.px      Population aged 15 or over by level of education, gender, age and origin
khi/11xs.px        Consumer price index

The longer statfin_<folder>_pxt_<id>.px form appears throughout older StatFin documentation. It was retired upstream and now returns 400 on every table; this pack rewrites it to the current form, so a caller arriving with the documented-but-dead path still gets data (fleet #497).

Asking in plain English

select maps a dimension to a value using either the English label or the native code, and query_table resolves both against the table’s own metadata:

{ "path": "vkour/15ig.px", "select": { "Information": "tertiary level qualification" } }

1672232 Finns aged 15+ hold a tertiary qualification (2025), alongside the matching share, 34.5%.

Dimensions you don’t name are filled in for you: the year defaults to the latest published, dimensions StatFin can eliminate are aggregated to their total, and a dimension with an explicit total value (SSS, Total, or an open-ended range starting at the table’s own floor such as age 15-) uses it. Every one of those choices comes back in selection_resolved, and a dimension with no defensible total is returned in full rather than silently collapsed — a defaulted dimension nobody can see is how a wrong number gets read as a right one.

A value that matches several rows returns all of them rather than picking one, so {"Information": "tertiary level qualification"} yields both the count and the percentage. If it matches more than 20, that is reported as too broad.

Results also carry figures: the json-stat2 value[] array paired with its dimension labels, for results up to 60 cells. That is the readable form — json-stat2’s flat array over an implicit cartesian product is not.

Dimension codes are native Finnish

Even on the /en/ endpoint the dimension codes are Finnish, and some labels are untranslated. There is no way to guess them, which is what select exists to spare you; pass body yourself and you need table_meta first. For vkour/15ig.px:

CodeMeaningTotal value
ikaryhma_10_20180101Age15- (not SSS)
sukupuoli_9_20180101GenderSSS
syntypera_101_20180101Origin (label renders as Syntyperä)SSS
timeperiod_yYear
contentscodeMeasure, e.g. kaste5T8 = population with a tertiary level qualification

Worked call — population aged 15+ with a tertiary qualification, 2024:

{
  "path": "vkour/15ig.px",
  "body": {
    "query": [
      { "code": "ikaryhma_10_20180101", "selection": { "filter": "item", "values": ["15-"] } },
      { "code": "sukupuoli_9_20180101", "selection": { "filter": "item", "values": ["SSS"] } },
      { "code": "syntypera_101_20180101", "selection": { "filter": "item", "values": ["SSS"] } },
      { "code": "timeperiod_y", "selection": { "filter": "item", "values": ["2024"] } },
      { "code": "contentscode", "selection": { "filter": "item", "values": ["kaste5T8"] } }
    ],
    "response": { "format": "json-stat2" }
  }
}

value: [1641336], table updated 2026-06-18.

Auth

None. Keyless, no registration, no rate-limit key. Reachable from Cloudflare egress.

Data sources

Tools

  • subjects — Browse the Statistics Finland (StatFin) subject tree of Finnish official statistics — population, education, employment, consumer prices, housing, health and national accounts tables published by Tila
  • table_meta — List the dimensions and every valid value of one Statistics Finland (StatFin) PxWeb table of Finnish official statistics — use it to see exactly what a table breaks down by before slicing it, or when
  • query_table — Get an actual figure out of a Statistics Finland (StatFin) table of Finnish official statistics — how many Finns hold a tertiary qualification, the current consumer price index, births and deaths, emp

Tools

  • query_table — Get an actual figure out of a Statistics Finland (StatFin) table of Finnish official statistics — how many Finns hold a tertiary qualification, the current consumer price index, births and deaths, emp
  • subjects — Browse the Statistics Finland (StatFin) subject tree of Finnish official statistics — population, education, employment, consumer prices, housing, health and national accounts tables published by Tila
  • table_meta — List the dimensions and every valid value of one Statistics Finland (StatFin) PxWeb table of Finnish official statistics — use it to see exactly what a table breaks down by before slicing it, or when

Regenerated from source · build August 28, 2026