mcpField
S
statistik-austria-mcp

statistik-austria-mcp

Local
github.com/DV155Legal & Government0Updated 2w ago

About statistik-austria-mcp

statistik-austria-mcp gives AI assistants access to Statistik Austria’s open data portal, for people working with official Austrian statistics. It resolves classification codes into German labels and flags totals, with filtering and paging for data retrieval.

Key features

  1. 01Search the OGD catalog by keyword
  2. 02Read dataset dimensions and measures
  3. 03Resolve codes to German labels
  4. 04Flag rows containing totals
  5. 05Filter by dimension and page results

Use cases

  1. 01Find Austrian statistical datasets
  2. 02Inspect dataset dimensions and measures
  3. 03Retrieve statistics with readable labels
  4. 04Filter and page through large tables

MCP support

As an MCP server, it exposes catalog search, dataset structure, and data retrieval tools to AI assistants, along with a catalog-categories resource. Clients connect over stdio.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"dv155-statistik-austria": {
"command": "uvx",
"args": [
"statistik-austria-mcp"
]
}
}
}
Run commanduvx statistik-austria-mcp

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
pypistatistik-austria-mcp1.1.0

Tools

3

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
dataset_idstringYes

Details

From the project README


Statistik Austria MCP Server

An MCP server that gives AI assistants access to Statistik Austria's open data portal

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Data Source
  5. Contributing
  6. License
  7. Contact

About The Project

A Model Context Protocol server for the free Open Government Data portal of Statistik Austria (data.statistik.gv.at). It lets an AI assistant such as Claude search the catalog, read a dataset's structure and fetch its data directly, instead of you downloading and pasting CSV files.

The portal publishes each dataset as a set of files with coded values, so a raw table is hard for a model to read correctly. The server joins the classification files onto the data, so every value arrives as a readable German label together with its original code, and marks the rows that are totals of other rows.

Built as a personal learning project to practise building MCP servers.

Features:

  • Keyword search over the full OGD catalog (around 540 datasets)
  • Dataset metadata: dimensions and measures
  • Data with codes resolved to German labels, formatted label <code>
  • Total rows are flagged, so the assistant doesn't add a total to its own parts
  • Filters by dimension value, so large tables don't have to be read in full
  • Paging that never drops rows silently: every response says how many rows exist and where to continue
  • Clear messages for datasets in formats the server can't read, instead of a bare error
  • Downloads are cached for an hour, so paging through a dataset doesn't download it again
Built With

(back to top)

Getting Started

The server runs locally on your computer and talks to your MCP client over stdio. uvx installs and starts it, so there is nothing to clone for normal use.

Prerequisites
  • uv (it downloads a matching Python version automatically)
  • Git
  • Claude Desktop or Claude Code (or any other MCP client)
Installation

Claude Desktop

  1. Open the config file. In Claude Desktop, go to Settings → Developer → Edit Config, or open it directly:
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  2. Add the server
    {
      "mcpServers": {
        "statistik-austria": {
          "command": "uvx",
          "args": ["--from", "git+https://github.com/DV155/Statistik-Austria-MCP-Server", "statistik-austria-mcp"]
        }
      }
    }
    
  3. Quit Claude Desktop completely and start it again.

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

The first start takes a while, because uv installs the dependencies (pandas is the largest). To get that out of the way, run the uvx command above once in a terminal and stop it with Ctrl+C once it is running. If Claude can't find uvx, replace "uvx" with its full path (which uvx shows it). Claude Desktop writes the server's logs to %APPDATA%\Claude\logs on Windows and ~/Library/Logs/Claude on macOS.

Local development

  1. Clone the repo
    git clone https://github.com/DV155/Statistik-Austria-MCP-Server.git
    cd Statistik-Austria-MCP-Server
    
  2. Install the dependencies
    uv sync
    
  3. Start the server in the MCP Inspector
    uv run mcp dev src/statserver/server.py
    

(back to top)

Usage

Ask Claude a question about Austrian statistics, and it uses the tools on its own.

ToolWhat it does
search_datasetSearches the catalog by keyword and returns matching dataset IDs and titles
fetch_dataset_jsonReturns a dataset's dimensions and measures with their codes
fetch_dataset_csvReturns the data with labels, total-row flags and paging; filters keeps only the rows for given dimension values

The server also provides an ogd://catalog resource with the catalog's categories.

Tip: the catalog's titles are German, so the server searches in German. Claude translates the question itself, but asking in German works just as well.

Limitations

Tested against all 543 datasets in the catalog in October 2026:

  • 474 load fully
  • 66 are published in formats the server can't read (zip archives and map services such as WFS and WMS); the server says so instead of failing
  • 2 contain no data rows
  • 1 (OGDEXT_BINNENWAND_1) loads without labels and slowly

Other limitations:

  • Only the free OGD portal is supported, not the paid STATcube API
  • The catalog is read from the portal's HTML page, so search stops working if Statistik Austria changes that page's structure
  • The first request for a very large dataset can take several seconds while it downloads

(back to top)

Data Source

All data comes from Statistik Austria - data.statistik.gv.at, licensed under CC BY 4.0. When you publish results obtained through this server, credit Statistik Austria as the source.

This is an independent project and is not affiliated with or endorsed by Statistik Austria.

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

Top contributors:
contrib.rocks image

License

Distributed under the MIT license. See LICENSE for more information.

(back to top)

Contact

Daniil Vasilcovschii - LinkedIn - GitHub

Project Link: https://github.com/DV155/Statistik-Austria-MCP-Server

(back to top)

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.