io.github.isakskogstad/scb-mcp

平台与服务

by isakskogstad

MCP server for Statistics Sweden (SCB) - 1200+ tables with population, economy, environment data

什么是 io.github.isakskogstad/scb-mcp

MCP server for Statistics Sweden (SCB) - 1200+ tables with population, economy, environment data

README

<img width="640" height="320" alt="MCP SERVER" src="https://github.com/user-attachments/assets/8183270f-cc19-4513-a26b-c8c18e60f1d8" />

MCP Registry MCP Protocol

📊 SCB MCP Server

SCB MCP är server som LLM:s och AI-chatbotar kan använda för att söka, hitta och hämta officiell data och statistik från Statistikbyrån (SCB). Det omfattar 1 200+ statistiktabeller med data om befolkning & demografi, ekonomi & finans, miljö, arbetsmarknad, utbildning och transport. Perfekt för att bygga interaktiva instrumentpaneler, forskningsverktyg och utbildningsapplikationer.


Översikt

<details> <summary><strong>🇬🇧 Overview </strong></summary>

The SCB MCP server provides seamless integration with Statistics Sweden's PxWebAPI 2.0, enabling LLM:s to access:

  • Population & Demographics: Regional data, migrations, births, deaths (312+ regions)
  • Economy & Finance: GDP, taxes, business statistics, national accounts
  • Environment: Greenhouse gas emissions, water/waste management, sustainability metrics
  • Labor Market: Employment, unemployment, occupational data, skills matching
  • Education: Student statistics, course enrollments, skills development

Data ranges from 1950s to present (monthly/quarterly updates). Real-time population statistics updated to November 2025.

</details> SCB MCP-servern ger sömlös integrering med Statistikbyråns (SCB) PxWebAPI 2.0, vilket gör det möjligt för LLM:s att tillgå:
  • Befolkning & demografi: Regionaldata, migrationer, födslar, dödsfall (312+ regioner)
  • Ekonomi & finans: BNP, skatter, företagsstatistik, nationalräkenskaper
  • Miljö: Växthusgaser, vatten/avfallshantering, hållbarhetsvärdena
  • Arbetsmarknad: Sysselsättning, arbetslöshet, yrkesdata, kompetensmatchning
  • Utbildning: Studentstatistik, kursanmälningar, kompetensutveckling

<details> <summary><strong>🇬🇧 Key features (English)</strong></summary>
FeatureDescription
Comprehensive Access1,200+ tables, 312+ regions, 75+ years of historical data
Smart QueryingNatural language search, region code resolution ("Lerum" → 1441), TOP() & wildcard support
Fuzzy Matching"Goteborg" matches "Göteborg", "Malmo" matches "Malmö"
Developer-FriendlyFull documentation, clear errors with suggestions, selection validation, metadata in responses
Production-ReadyRate limiting (30 req/10s), consistent behavior, proper data types, language support (SV/EN)
Swedish by DefaultAll tools use Swedish (sv) as default for best search results
Real-Time DataMonthly/quarterly updates, population data to November 2025
</details>

Huvudfunktioner

FunktionBeskrivning
Omfattande åtkomst1 200+ tabeller, 312+ regioner, 75+ års historiska data
Smart sökningNaturspråkig sökning, regionkodupplösning ("Lerum" → 1441), TOP() & wildcard-stöd
Fuzzy matching"Goteborg" matchar "Göteborg", "Malmo" matchar "Malmö"
UtvecklarvänligFullständig dokumentation, tydliga felmeddelanden, valideringsmöjligheter, metadata i svaren
ProduktionsklarRate limiting (30 req/10s), konsekvent beteende, rätt datatyper, språkstöd (SV/EN)
Svenska som standardAlla verktyg använder svenska (sv) som default för bästa sökresultat
Aktuell dataMånatliga/kvartalsvisa uppdateringar, befolkningsdata till november 2025

🚀 Installation

Servern körs lokalt via stdio. Klona, bygg och peka din MCP-klient mot dist/index.js.

bash
git clone https://github.com/isakskogstad/SCB-MCP.git
cd SCB-MCP
npm install
npm run build

Claude Code (CLI)

bash
claude mcp add scb -- node /absolut/sökväg/till/SCB-MCP/dist/index.js

Claude Desktop / Codex / Gemini / Cursor (stdio)

Lägg till i klientens MCP-konfiguration (t.ex. ~/Library/Application Support/Claude/claude_desktop_config.json för Claude Desktop):

json
{
  "mcpServers": {
    "scb": {
      "command": "node",
      "args": ["/absolut/sökväg/till/SCB-MCP/dist/index.js"]
    }
  }
}
<details> <summary><strong>🇬🇧 Installation (English)</strong></summary>

The server runs locally over stdio. Clone, build, and point your MCP client to dist/index.js.

bash
git clone https://github.com/isakskogstad/SCB-MCP.git
cd SCB-MCP
npm install
npm run build

Claude Code (CLI)

bash
claude mcp add scb -- node /absolute/path/to/SCB-MCP/dist/index.js

Claude Desktop / Codex / Gemini / Cursor (stdio)

json
{
  "mcpServers": {
    "scb": {
      "command": "node",
      "args": ["/absolute/path/to/SCB-MCP/dist/index.js"]
    }
  }
}
</details>

Användarguide

1. Sök efter statistiktabeller

python
# Hitta befolkningsrelaterade tabeller
results = scb.search_tables(query="befolkning statistik", limit=10)

# Filtrera efter kategori
results = scb.search_tables(query="miljö", category="environment", limit=5)
<details> <summary><strong>🇬🇧 Usage guide (English)</strong></summary>

1. Search for statistical tables

python
results = scb.search_tables(query="population", limit=10)
results = scb.search_tables(query="environment", category="environment", limit=5)
</details>

2. Hitta regionkoder

python
# Lerum kommun
region = scb.find_region_code(query="Lerum")
# Returnerar: code="1441", name="Lerum"

# Större regioner
region = scb.find_region_code(query="Stockholm")
# Returnerar: code="01" (län), code="0180" (kommun)

# Fuzzy matching - fungerar utan svenska tecken
region = scb.find_region_code(query="Goteborg")
# Returnerar: code="1480", name="Göteborg"
<details> <summary><strong>🇬🇧 Resolve region codes (English)</strong></summary>
python
region = scb.find_region_code(query="Lerum")
region = scb.find_region_code(query="Stockholm")

# Fuzzy matching - works without Swedish characters
region = scb.find_region_code(query="Goteborg")
# Returns: code="1480", name="Göteborg"
</details>

3. Hämta data

python
# Medelålder i Lerum 2024
data = scb.get_table_data(
    tableId="TAB637",
    selection={
        "Region": ["1441"],
        "Kon": ["1+2"],
        "Tid": ["2024"],
        "ContentsCode": ["BE0101G9"]
    }
)
# Resultat: Medelålder i Lerum 2024: 40.1 år
<details> <summary><strong>🇬🇧 Fetch data (English)</strong></summary>
python
data = scb.get_table_data(
    tableId="TAB637",
    selection={
        "Region": ["1441"],
        "Kon": ["1+2"],
        "Tid": ["2024"],
        "ContentsCode": ["BE0101G9"]
    }
)
</details>

Best practices

ProblemLösning
Stor datamängd?Använd alltid preview_data() först för att testa
För mycket data?Använd "TOP(5)" istället för "*" för tidsperioder
Felaktiga koder?Anropa get_table_variables() först — koder varierar mellan tabeller
Osäker på enheter?Kontrollera variabeletikett för enheter (kt, ton, procent osv.)
<details> <summary><strong>🇬🇧 Best practices (English)</strong></summary>
IssueSolution
Large dataset?Always use preview_data() first to test
Too much data?Use "TOP(5)" instead of "*" for time periods
Wrong codes?Call get_table_variables() first — codes vary between tables
Unsure about units?Check variable label for units (kt, tonnes, percent, etc.)
</details>

Praktiska exempel

Ex: Befolkningstrend Lerum vs Stockholm

python
# Jämför två regioner över tid
data = scb.get_table_data(
    tableId="TAB637",
    selection={
        "Region": ["1441", "0180"],  # Lerum och Stockholm
        "Kon": ["1+2"],
        "Tid": ["TOP(5)"],
        "ContentsCode": ["BE0101G9"]
    }
)
# Stockholm: 41.0 år (2024), Lerum: 40.1 år (2024)
# Trend: Stockholm åldras snabbare
<details> <summary><strong>🇬🇧 Example 1: Population trends (English)</strong></summary>
python
data = scb.get_table_data(
    tableId="TAB637",
    selection={
        "Region": ["1441", "0180"],  # Lerum and Stockholm
        "Kon": ["1+2"],
        "Tid": ["TOP(5)"],
        "ContentsCode": ["BE0101G9"]
    }
)
# Stockholm: 41.0 years (2024), Lerum: 40.1 years (2024)
</details>

Resurser


Av: Isak Skogstad

常见问题

io.github.isakskogstad/scb-mcp 是什么?

MCP server for Statistics Sweden (SCB) - 1200+ tables with population, economy, environment data

相关 Skills

MCP构建

by anthropics

Universal
热门

聚焦高质量 MCP Server 开发,覆盖协议研究、工具设计、错误处理与传输选型,适合用 FastMCP 或 MCP SDK 对接外部 API、封装服务能力。

想让 LLM 稳定调用外部 API,就用 MCP构建:从 Python 到 Node 都有成熟指引,帮你更快做出高质量 MCP 服务器。

平台与服务
未扫描171.4k

Slack动图

by anthropics

Universal
热门

面向Slack的动图制作Skill,内置emoji/消息GIF的尺寸、帧率和色彩约束、校验与优化流程,适合把创意或上传图片快速做成可直接发送的Slack动画。

帮你快速做出适配 Slack 的动图,内置约束规则和校验工具,少踩上传与播放坑,做表情包和演示都更省心。

平台与服务
未扫描171.4k

接口测试套件

by alirezarezvani

Universal
热门

扫描 Next.js、Express、FastAPI、Django REST 的 API 路由,自动生成覆盖鉴权、参数校验、错误码、分页、上传与限流场景的 Vitest 或 Pytest 测试套件。

帮你把API与集成测试自动化跑顺,减少回归漏测;能力全面,尤其适合复杂接口场景的QA团队。

平台与服务
未扫描24.9k

相关 MCP Server

Slack 消息

编辑精选

by Anthropic

热门

Slack 是让 AI 助手直接读写你的 Slack 频道和消息的 MCP 服务器。

这个服务器解决了团队协作中需要 AI 实时获取 Slack 信息的痛点,特别适合开发团队让 Claude 帮忙汇总频道讨论或发送通知。不过,它目前只是参考实现,文档有限,不建议在生产环境直接使用——更适合开发者学习 MCP 如何集成第三方服务。

平台与服务
89.7k

by netdata

热门

io.github.netdata/mcp-server 是让 AI 助手实时监控服务器指标和日志的 MCP 服务器。

这个工具解决了运维人员需要手动检查系统状态的痛点,最适合 DevOps 团队让 Claude 自动分析性能数据。不过,它依赖 NetData 的现有部署,如果你没用过这个监控平台,得先花时间配置。

平台与服务
80.0k

by d4vinci

热门

Scrapling MCP Server 是专为现代网页设计的智能爬虫工具,支持绕过 Cloudflare 等反爬机制。

这个工具解决了爬取动态网页和反爬网站时的头疼问题,特别适合需要批量采集电商价格或新闻数据的开发者。不过,它依赖外部浏览器引擎,资源消耗较大,不适合轻量级任务。

平台与服务
72.9k

评论