Skip to main content
Glama
malkreide

swiss-housing-mcp

by malkreide

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SWISS_HOUSING_CACHENoDump cache directory~/.cache/swiss-housing-mcp
SWISS_HOUSING_TRANSPORTNoTransport protocol: stdio, streamable-http, or ssestdio
SWISS_HOUSING_DUMP_TTL_HOURSNoDump freshness window in hours24

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
lookup_buildingA

Look up a single building by its EGID (federal building identifier).

Uses the live geo.admin.ch API — always current, no dump download needed. The EGID is the join key used across Swiss administrative data.

address_to_egidA

Geocode a Swiss address to EGID/EDID and LV95 coordinates.

This is the bridge that makes other data sources EGID-capable: address in → federal building identifier out.

lookup_dwellingsA

List all dwellings (EWID) of a building from the daily cantonal dump.

Includes rooms, floor area, floor and status per dwelling.

new_constructionB

New residential construction per year for a municipality (existing buildings).

Returns buildings, dwellings and 4+ room dwellings per year — the 4+ room share is a proxy for family housing and thus for future pupil numbers. Municipality is identified by its BFS number (e.g. 261 = City of Zurich).

construction_pipelineB

Buildings and dwellings in the planning/construction pipeline of a municipality.

Breaks down by status: projected (GSTAT 1001), approved (1002), under construction (1003). Dwellings under construction today are households in 1-3 years — the early indicator for school-space planning.

buildings_in_bboxA

Aggregate buildings/dwellings inside an LV95 bounding box.

Enables sub-municipal analysis, e.g. school districts: pass the bounding box of a Schulkreis to count new construction within it. LV95 (EPSG:2056): east ~2'480'000-2'840'000, north ~1'070'000-1'300'000.

municipality_housing_statsC

Housing stock overview of a municipality: buildings, dwellings, room-size mix.

explain_codeA

Decode a GWR code value (e.g. GSTAT=1004, GKAT=1020) into human-readable labels.

Uses the official code table shipped with the dump (DE/FR/IT).

dump_statusA

Cache status of the cantonal GWR dumps (graceful-degradation entry point).

Always returns an evaluable status — never silently empty records. If a source is unreachable, this tool tells you when data was last refreshed.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.5/5.0

Scored across 9 tools

Disambiguation5/5

Each tool targets a distinct resource or action: building lookup, dwelling lookup, address geocoding, bbox aggregation, municipal stock, pipeline, code decoding, and cache status. The closest pair, municipality_housing_stats and new_construction, is still clearly differentiated as stock overview vs. time-series construction.

Naming Consistency3/5

All names are lowercase snake_case and readable, but conventions are mixed: some follow verb_noun (lookup_building, explain_code, dump_status), while others are noun phrases (buildings_in_bbox, municipality_housing_stats, construction_pipeline). There is no single consistent prefix or verb pattern across the set.

Tool Count5/5

Nine tools is well-scoped for a Swiss housing/GWR data server. Each tool covers a meaningful query or utility function without redundancy or bloat.

Completeness4/5

The tool surface covers key workflows: address-to-EGID resolution, building and dwelling lookup, bounding-box aggregation, municipal stock, pipeline, historical construction, and code explanation. Minor gaps exist, such as no municipality-by-BFS-number search tool and no bulk code-table listing, but agents can work around these.

Maintenance

ActivityActive
ResponsivenessNo issues