checkingPublic MCP server · Germany

Collection dates foryour AI assistant.

v0.2.0

Waste collection dates from the portals of German municipal authorities — as an MCP server for AI assistants. Public, no account, no API key.

checking·0 authorities·0 sources·5 tools·1 resource·protocol 2025-11-25·github AlpayC/abfall-mcp-server
Endpoint, tools and coverage

connect

2025-11-25

Add the endpoint to your MCP client and restart it. The server then shows up as “abfall”.

abfall-mcp.alpaycelik.dev/mcp
claude mcp add --transport http abfall https://abfall-mcp.alpaycelik.dev/mcp
Data source: hacs_waste_collection_schedule v2.32.0 · MIT

example

→ abfuhrtermine({ adresse: "Kirchstraße 5, Emsdetten" })
✓ Tuesday, 1 September · organic waste · EGST Steinfurt

tools

5

Tool and field names are German because the domain is. All tools only read; “portal” queries a municipal portal, “registry” answers from the bundled authority list.

abfuhrtermine

Resolves the responsible authority for an address and returns its collection dates.

readportalview source
finde_traeger

Searches waste authorities by place or operator name, without geocoding.

readregistryview source
traeger_details

Shows one authority's portal, expected arguments, presets and example places.

readregistryview source
abfuhrtermine_fuer_traeger

Queries a known authority directly — the way to answer a follow-up question.

readportalview source
abdeckung

Counts registered authorities and data sources.

readregistryview source

resources

1

Read via resources/read, not called as a tool.

Entsorgungsträger

Every registered authority with ID, name and portal — the same list the directory below searches.

uri
abfall://traeger
mime
application/json

coverage

995 × 150

Germany has no nationwide waste API. Around 400 authorities run their own portals on top of a handful of platforms.

Loading directory …

AWB KölnStadtreinigung HamburgBerliner StadtreinigungsbetriebeKreis SteinfurtAWM MünchenBremer StadtreinigungEBU UlmZKE SaarbrückenAWG WuppertalStadtreinigung DresdenAbfallwirtschaftsbetriebe MünsterEDG Entsorgung DortmundLandkreis RosenheimART TrierKreis Gütersloh GEGAbfallwirtschaft Stadt NürnbergSAB Magdeburgsds Schwerin
AWB KölnStadtreinigung HamburgBerliner StadtreinigungsbetriebeKreis SteinfurtAWM MünchenBremer StadtreinigungEBU UlmZKE SaarbrückenAWG WuppertalStadtreinigung DresdenAbfallwirtschaftsbetriebe MünsterEDG Entsorgung DortmundLandkreis RosenheimART TrierKreis Gütersloh GEGAbfallwirtschaft Stadt NürnbergSAB Magdeburgsds Schwerin
AWB KölnStadtreinigung HamburgBerliner StadtreinigungsbetriebeKreis SteinfurtAWM MünchenBremer StadtreinigungEBU UlmZKE SaarbrückenAWG WuppertalStadtreinigung DresdenAbfallwirtschaftsbetriebe MünsterEDG Entsorgung DortmundLandkreis RosenheimART TrierKreis Gütersloh GEGAbfallwirtschaft Stadt NürnbergSAB Magdeburgsds Schwerin
AWB KölnStadtreinigung HamburgBerliner StadtreinigungsbetriebeKreis SteinfurtAWM MünchenBremer StadtreinigungEBU UlmZKE SaarbrückenAWG WuppertalStadtreinigung DresdenAbfallwirtschaftsbetriebe MünsterEDG Entsorgung DortmundLandkreis RosenheimART TrierKreis Gütersloh GEGAbfallwirtschaft Stadt NürnbergSAB Magdeburgsds Schwerin

resolution

Between plain language and a municipal portal sits a chain that may stop at any step.

  1. Address
    Town, street or full address.
  2. Geocoding
    Nominatim validates postcode and place.
  3. Responsibility
    The matching authority out of 995.
  4. Portal
    Municipal source, live.
  5. Dates
    Sorted, back to the assistant.

Ask instead of guessing

When a match is not confident enough, the server returns concrete options instead of a result. A wrongly guessed town would otherwise cheerfully return the neighbouring municipality's calendar — wrong, but unremarkable.