swiss-housing-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| lookup_building | 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_egid | 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_bbox | 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_stats | 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
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/malkreide/swiss-housing-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server