Skip to main content

openplz-mcp 🧭

mcp-name: io.github.mohammad-abbasi-sh/openplz-mcp

Unofficial read-only MCP server for German postal data via the OpenPLZ API (by the openpotato project): localities, streets, municipalities, districts, government regions and the 16 federal states (Bundesländer) — with the official administrative keys. No key, no login.

Built by Mohammad Abbasi as part of the "Germany MCP factory". Not affiliated with the OpenPLZ API / openpotato project.

For AI agents

Add to your MCP client config (stdio):

{
  "mcpServers": {
    "openplz": {
      "command": "uvx",
      "args": ["openplz-mcp==0.1.0"]
    }
  }
}

Or run locally: python -m openplz_mcp.server (needs mcp<2, httpx).

Tools

Tool Description
openplz_lookup_postal_code Which locality (or localities) a German postal code belongs to
openplz_search_locality Search localities (Orte) by name, optionally within one postal code
openplz_search_street Search streets by name, postal code and/or locality
openplz_full_text_search Free-form street search across street name, postal code and city
openplz_list_federal_states All 16 federal states (Bundesländer) with key + capital
openplz_admin_children Walk one step down the administrative tree (state → district → municipality …)
openplz_health Reachability check (ok / blocked / error) — one polite request

Example output (openplz_lookup_postal_code / 10115):

{"postal_code": "10115", "count": 1,
 "localities": [{"postal_code": "10115", "name": "Berlin",
   "municipality": {"key": "11000000", "name": "Berlin, Stadt", "type": "Kreisfreie Stadt"},
   "federal_state": {"key": "11", "name": "Berlin"}}]}

Notes:

  • A German postal code is exactly 5 digits (e.g. 10115 = Berlin-Mitte, 80331 = München).
  • Official administrative keys: federal states "01"–"16" (Berlin "11", Bayern "09"), districts 5 digits ("11000" = Berlin), municipalities 8 digits ("09162000" = München). Use them with openplz_admin_children — e.g. federal_state "11" → districts returns the single Berlin district; district "11000" → localities lists Berlin's localities.
  • Street-name search matches the stored, abbreviated form (e.g. "Ackerstr."). For free-form queries (e.g. "10115 Berlin" or "München Marienplatz") use openplz_full_text_search.
  • A postal code can cover several localities, and a locality can have several postal codes — openplz_lookup_postal_code returns all of them.
  • Data covers Germany only (/de/ endpoints); the OpenPLZ API also serves Austria (/at/) and Switzerland (/ch/), which this server does not expose.

Built by Mohammad Abbasi — Almanibama · mabbasi.ir

Metadata

Release files for openplz-mcp 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for openplz-mcp 0.1.0
File Size Uploaded Provenance Actions
openplz_mcp-0.1.0.tar.gz 15.7 kB With provenance Details for openplz_mcp-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for openplz-mcp 0.1.0
File Interpreter ABI Platform Actions
openplz_mcp-0.1.0-py3-none-any.whl Python 3 none any Details for openplz_mcp-0.1.0-py3-none-any.whl

Total release size: 26.1 kB

Release files / openplz_mcp-0.1.0.tar.gz

Download URL openplz_mcp-0.1.0.tar.gz
Size 15.7 kB
Tags Source
SHA-256 checksum
How to use checksums
cb69b9c75d7d4ff347acb890adf4e3ca0d2ac3b0a4f63c969dd11675ef9d95b9
BLAKE2b-256 checksum
How to use checksums
170ef915c55716851a593629d561dc23aecff28fb8b1d1e799c792db50cba3cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 14, 2026.

Transparency log

Release files / openplz_mcp-0.1.0-py3-none-any.whl

Download URL openplz_mcp-0.1.0-py3-none-any.whl
Size 10.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
db90122d22f9620b439ab3d3a2b576248d0a219a34de386e3f126e3bf5337707
BLAKE2b-256 checksum
How to use checksums
04f6fb8ce9a914bf4e259dd359525270bb12c8f1735983d0539f3d8272e41827
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 14, 2026.

Transparency log

Security for openplz-mcp 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for openplz_mcp-0.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 14, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page