Data Collection
infranode.dev
Provides comprehensive data about German cities, including demographics, air quality, and weather observations.
ENDPOINT 1
https://mcp.infranode.dev/mcp
MCP server metadata
- Name
- infranode
- Version
- 1.27.2
InfraNode is a keyless, read-only open-data API for 84 German cities with ~60 data types, exposed as 12 MCP tools (count is live from this server, not a cached or remembered number). To answer ANY city question, START with get_city_overview(slug): it returns the city's base data, a catalog of ALL available data types (each with its coverage status and the exact tool to call next) and a small live snapshot (weather, air, train departures). Most data types are fetched with ONE generic tool: get_city_resource(slug, resource=<type>), where <type> is the catalog key (e.g. 'parking', 'charging', 'demographics', 'solar'); its resource enum lists every valid key. City slugs are resolved leniently: you may pass the German name with or without umlauts, any casing, a common English exonym or a short form (e.g. 'muenchen', 'München', 'munich', 'munchen', 'cologne', 'frankfurt' all resolve to the canonical slug), so you rarely need the exact ASCII slug; an unrecognized name returns a 404 whose hint names the closest match ('Meintest du ...?'). Discover the canonical slugs with list_cities (or the infranode://cities resource); browse every data type with the infranode://catalog resource; see sources and licenses with sources. Compare one metric across many cities in one call with compare. Every tool returns a canonical {data, meta} envelope; meta.source_status tells you whether a source delivered data (ok / no_data / not_covered / disabled / error), so a missing source degrades gracefully instead of failing. Field names are snake_case and English across all data types (post_code, street, house_number, place, name, start, end, distance_km, power_kw, lat, lon); timestamps carry a time zone and a missing value is null, never an empty string. Some responses still contain older duplicate field names with identical values; they are deprecated, so prefer the canonical ones. The infranode://catalog resource spells the conventions out. Coverage keeps growing: more data types and cities are added regularly.
Known tools 12
get_city_overviewGet a ONE-CALL overview of everything InfraNode knows about a German city.
Inferred read-onlyget_city_resourceFetch ANY per-city data type by its key (generic accessor, 81 data types).
Inferred read-onlystation_board_departuresGet live departures for ANY railway station by its EVA number.
Inferred read-onlystation_board_arrivalsGet live arrivals for ANY railway station by its EVA number.
Inferred read-onlytransit_departuresGet live public-transport departures with real-time delays for a stop.
Inferred read-onlyCONNECT WITH APPROVAL
Client installation
Review this server and its permissions before adding it. Secret placeholders must be set locally.
Codex
~/.codex/config.toml
[mcp_servers.infranode]
url = "https://mcp.infranode.dev/mcp"
enabled = true
Claude Code
.mcp.json
{
"mcpServers": {
"infranode": {
"type": "http",
"url": "https://mcp.infranode.dev/mcp"
}
}
}
Claude Desktop
Settings → Connectors → Add custom connector
Name: infranode
Remote MCP URL: https://mcp.infranode.dev/mcp
Add this remote URL as a custom connector in Claude Desktop. Availability depends on the user plan and workspace policy.
Cursor
.cursor/mcp.json
{
"mcpServers": {
"infranode": {
"url": "https://mcp.infranode.dev/mcp"
}
}
}
Visual Studio Code
.vscode/mcp.json
Add to Visual Studio Code{
"servers": {
"infranode": {
"type": "http",
"url": "https://mcp.infranode.dev/mcp"
}
}
}
Generic MCP
Client-specific MCP configuration
{
"name": "infranode",
"transport": "streamable-http",
"url": "https://mcp.infranode.dev/mcp"
}
MCP Inspector
Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.
TRUST AND VERIFICATION EVIDENCE
Loading Trust v2 evidence…
Checking the associated registrable domain. The BuiltWith key remains server-side.
Evidence is source-attributed and does not guarantee that a third-party server is safe. Risk labels are conservative metadata heuristics.