Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog
Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

AllMCPs on GitHub (opens in a new tab)
Launched onTiny Startupstinystartups.com
Explore
  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Random discovery New
  • Submit a server
  • Pricing & Boost Boost
Learn
  • Guides hub
  • What is MCP?
  • Install guide
  • Build an MCP server
  • Deploy an MCP server
  • Security guide
  • Troubleshooting
  • MCP for SEO & AEO
  • Protocol versioning
  • Blog & updates
Tools
  • All developer tools
  • Config generator
  • Config validator
  • Config auditor
  • MCP playground
  • Token calculator
  • OpenAPI β†’ MCP
  • Badge generator
For agents
  • REST API docs
  • Trust & traffic Live
  • Remote MCP server SSE β†— (opens in a new tab)
  • llms.txt β†— (opens in a new tab)
  • Catalog JSON β†— (opens in a new tab)
Company
  • About
  • Advertise Sponsor
  • Contact
  • GitHub β†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZoneAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZone
Β© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. πŸ’» Developer Tools
  3. Swiss Geodata MCP
S
Health: Not checked yetWe have not completed a health check for this listing yet.No health check has run yet.

Swiss Geodata MCP

User RatingsBe the first to rate and review this MCP server! Enrichment pendingWe haven’t run our AI enrichment pass on this listing yet, so the overview, use cases, and FAQ below may be sparse or missing. We work through the catalog over time β€” check back soon.
View Repository

Swiss federal geodata (geo.admin.ch): layers, spatial identify, zoning, heights, LV95 conversion

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
Manual Client & Custom JSON ConfigExpand JSON β–Ύ

Client Config & Setup

Choose your client or environment
Target File:~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "swiss-geodata-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "swiss-geodata-mcp"
      ]
    }
  }
}

πŸ’‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.

Install Directory Badge Claim listing AlternativesπŸ’» More in Developer Tools

Documentation Overview

⚠️ DEPRECATED β€” use swisstopo-mcp instead

This server has been consolidated into swisstopo-mcp and is no longer maintained. Every capability it offered now exists there, including the one it used to have exclusively β€” the official REFRAME coordinate conversion.

Why: both servers wrapped the same api3.geo.admin.ch endpoints and overlapped in five core tools (layer search, identify, find, height, elevation profile). Maintaining two servers for one data source meant double the audits, double the CVE bumps, and an unclear choice for users. The rationale and the migration steps are documented in docs/merge-plan-swiss-geodata-mcp.md.

This repository will be archived. The code below still works, but it receives no further fixes or dependency updates. See Migration below.

πŸ‡¨πŸ‡­ Part of the Swiss Public Data MCP Portfolio

πŸ—ΊοΈ swiss-geodata-mcp

CI PyPI Python License: MIT swiss-public-data-mcp

MCP server for Swiss federal geodata (geo.admin.ch).

Connects AI models to the federal geodata infrastructure: ~700 layers discoverable by keyword, spatial identify at any point, building zones (ARE), municipality lookup (swissBOUNDARIES3D), terrain heights and elevation profiles (swissALTI3D), and WGS84↔LV95 coordinate conversion. Part of the swiss-public-data-mcp portfolio. Private project, independent of any employer or institutional affiliation.

πŸ‡©πŸ‡ͺ Deutsche Version


Demo query (anchor example)

Code
In which building zone is the school building at Seilergraben 76 in Zurich,
and how high above sea level is it?

β†’ geo_zoning_at(2683531, 1247914) + geo_height(2683531, 1247914) returns the harmonised ARE zone and 411 m a.s.l. β€” verified live 2026-07-24.

Combined with swiss-housing-mcp:

Code
What applies at this address?

β†’ address_to_egid("Seilergraben 76 ZΓΌrich") (housing) delivers the LV95 coordinates β†’ geo_zoning_at + geo_municipality_at (geodata) deliver zone and municipality. If the GWR is the address book, geo.admin.ch is the atlas.


Tools (9)

ToolDescriptionData source
geo_search_layersKeyword search over the ~700-layer federal cataloguegeo.admin.ch SearchServer
geo_identifyWhat is at this LV95 point? (any layer)geo.admin.ch MapServer identify
geo_findFind features on a layer by attribute valuegeo.admin.ch MapServer find
geo_municipality_atMunicipality + canton containing a pointswissBOUNDARIES3D
geo_zoning_atBuilding zone(s) at a pointch.are.bauzonen (ARE)
geo_heightTerrain height at a pointswissALTI3D height service
geo_elevation_profileElevation profile along a linegeo.admin.ch profile service
geo_layer_infoQueryable fields + legend (plain text) for a layergeo.admin.ch MapServer
geo_convert_coordinatesWGS84 ↔ LV95 conversiongeodesy.geo.admin.ch reframe

geo_search_layers is the discovery entry point that scales the whole catalogue without one tool per layer; geo_layer_info then reveals a layer's queryable fields for geo_find.

Tool annotations (MCP hints)

All tools are read-only (readOnlyHint: βœ…, destructiveHint: βœ—) and query live upstream services (openWorldHint: βœ…). None are idempotent in the strict caching sense, as upstream data may change between calls.

Architecture decision

This server uses Architecture A (Live-API-only) β€” a deliberate deviation from the portfolio's dump-first default, documented per portfolio convention:

  • The federal geodata infrastructure spans ~700 layers and terabytes; dump-caching is neither feasible nor useful.
  • api3.geo.admin.ch is built exactly for point/feature queries and answered every probe reliably without authentication (live probe 2026-07-24: SearchServer, identify, find, height, profile, legend, layer metadata, reframe β€” all HTTP 200, No-Auth).
  • Consequence: no local cache, no TTL logic; every response carries provenance: live_api.

Live probe findings (2026-07-24)

EndpointHTTPStatusNote
SearchServer type=layers200βœ… workscatalogue full-text searchable
MapServer identify (bauzonen, boundaries)200βœ… workstolerance 0 works for polygon layers
height service200βœ… worksvalue arrives as JSON string
profile.json (GET + geom)200βœ… worksCOMB/DTM2/DTM25 altitudes
MapServer {layer}/legend200⚠️ HTMLstripped to plain text in geo_layer_info
reframe wgs84↔lv95200βœ… workscoordinates arrive as JSON strings
Miss on identify/find200⚠️ softempty results array β€” not an HTTP error

Quick start

Claude Desktop

config.json
{
  "mcpServers": {
    "swiss-geodata": {
      "command": "uvx",
      "args": ["swiss-geodata-mcp"]
    }
  }
}

Cloud / Render.com (Streamable HTTP)

bash
SWISS_GEODATA_TRANSPORT=streamable-http PORT=8000 swiss-geodata-mcp

Configuration

VariableDefaultPurpose
SWISS_GEODATA_TRANSPORTstdiostdio | streamable-http | sse
HOST / PORT127.0.0.1 / 8000HTTP binding (cloud transports only). Defaults to loopback; set HOST=0.0.0.0 explicitly to expose all interfaces in a cloud deployment.

No API keys β€” Phase 1 is authentication-free.

Example queries

School planning

  • Β«Which building zone applies at our planned school extension site?Β» β†’ geo_zoning_at
  • Β«Which municipality and canton is this coordinate in?Β» β†’ geo_municipality_at (bridges to BFS numbers used by swiss-statistics-mcp and swiss-housing-mcp)
  • Β«How steep is the school route between these two points?Β» β†’ geo_elevation_profile

Layer discovery

  • Β«Is there federal data on noise exposure?Β» β†’ geo_search_layers("lΓ€rm") β†’ geo_layer_info β†’ geo_identify

See EXAMPLES.md for use cases grouped by audience (schools, parents, general public, developers) and a tool-selection reference table.

Testing

bash
PYTHONPATH=src pytest tests/ -m "not live"   # CI-safe (respx-mocked)
PYTHONPATH=src pytest tests/ -m live         # against real upstream

Project structure

Code
swiss-geodata-mcp/
β”œβ”€β”€ src/swiss_geodata_mcp/
β”‚   β”œβ”€β”€ server.py      # FastMCP tools (9, prefix geo_*)
β”‚   β”œβ”€β”€ geoadmin.py    # geo.admin.ch client + retry + normalisation
β”‚   β”œβ”€β”€ models.py      # Pydantic v2 envelopes (source + provenance)
β”‚   └── __main__.py    # Dual-transport entry point
β”œβ”€β”€ tests/             # respx-mocked + @pytest.mark.live
└── .github/workflows/ # CI + OIDC PyPI publish

Known limitations

  • Registers live elsewhere: building/dwelling entities (EGID/EWID) belong to swiss-housing-mcp; this server is the spatial layer (zones, boundaries, heights). Deliberate separation to avoid twin servers.
  • The harmonised zoning layer (ch.are.bauzonen) is an ARE synthesis; legally binding is only the cantonal/communal Nutzungsplanung (noted in every geo_zoning_at response).
  • School-district polygons are municipal data (β†’ zurich-opendata-mcp), not federal; this server provides municipality boundaries, not Schulkreise.
  • geo_identify result counts are capped upstream; area-wide aggregations are out of scope here (see buildings_in_bbox in swiss-housing-mcp for the register case).
  • Coordinates must be LV95; WGS84 input fails fast with a pointer to geo_convert_coordinates.

Changelog

See CHANGELOG.md

Contributing

Contributions are welcome β€” see CONTRIBUTING.md for how to report bugs, suggest a new layer, or submit code.

Security

This is a read-only, no-PII, public-open-data server. See SECURITY.md for the security posture and how to report a vulnerability.

License

MIT License β€” see LICENSE. Data: Swiss federal geodata infrastructure (geo.admin.ch / swisstopo and publishing federal offices), open government data with attribution.

Credits & related projects

  • Data & services: geo.admin.ch (swisstopo), ARE, swisstopo geodesy
  • Portfolio siblings: swiss-housing-mcp (register layer), swiss-statistics-mcp (statistics layer), zurich-opendata-mcp (municipal layer)

Author

malkreide Β· GitHub


Migration to swisstopo-mcp

Replace this server in your MCP client config:

jsonc
// before
{ "swiss-geodata": { "command": "uvx", "args": ["swiss-geodata-mcp"] } }
// after
{ "swisstopo":     { "command": "uvx", "args": ["swisstopo-mcp"] } }

Tool mapping

Read the full README β†’View source on GitHub β†’

Related MCP Servers

View all in Developer Tools View all alternatives
  • PraisonAI logoPraisonAI

    AI Agents Framework with Self Reflection and MCP support

    πŸ’» Developer Tools1 views
    Compare vs PraisonAI β†’
  • Labelhead Artist Momentum logoLabelhead Artist Momentum

    Trending hip-hop artist momentum scores across four cultural dimensions.

    πŸ’» Developer Tools0 views
    Compare vs Labelhead Artist Momentum β†’
  • Flutter Skill logoFlutter Skill

    AI E2E testing bridge β€” give AI eyes and hands inside any app. 8 platforms, 40+ tools.

    πŸ’» Developer Tools1 views
    Compare vs Flutter Skill β†’
  • Ignite UI MCP Server logoIgnite UI MCP Server

    Unified MCP server for Ignite UI β€” documentation, API, and CLI scaffolding

    πŸ’» Developer Tools1 views
    Compare vs Ignite UI MCP Server β†’

Reviews

No reviews yet β€” be the first to share how this listing worked for you.

Frequently Asked Questions about Swiss Geodata MCP

Add the following block to your claude_desktop_config.json under mcpServers: "mcpServers": { "swiss-geodata-mcp": { "command": "npx", "args": ["-y", "swiss-geodata-mcp"] } }

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewSwiss Geodata MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/swiss-geodata-mcp?style=directory)](https://allmcps.com/mcp/swiss-geodata-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/swiss-geodata-mcp"><img src="https://allmcps.com/api/badge/swiss-geodata-mcp?style=directory" alt="Swiss Geodata MCP on AllMCPs" /></a>

Technical Specs & Signals

CategoryπŸ’»Developer Tools
More technical detailsExpand β–Ύ
TransportSTDIO
RuntimeNode.js
Last updatedSep 7, 2026
Views0
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
27Quality signal: Emerging Β· 27/100How this signal is calculated β–Ύ
Server availabilityNot measured

Not scored for repo-hosted servers β€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership8/20
Documentation & tools11/30
Adoption & activity1/15
Community engagement0/10

A guidance signal from public completeness & health data β€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

β˜… Spotlight Slot

Feature Your MCP Server

Get maximum visibility for your server across our directory, search results, and detail pages.

Spotlight Your Server

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to unlock edit access and the Official badge and attach your website β€” proof is checked automatically, then reviewed by our team.

Free dofollow backlink: add your website and place the AllMCPs badge on it β€” no claim needed. We detect it automatically and keep it verified as long as the badge stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in πŸ’» Developer Tools β†’Best MCP servers for Developers β†’Alternatives to Swiss Geodata MCP β†’Install in Claude DesktopInstall in CursorInstall in VS Code