ThinAir Geo

SSE

by thinairtelematics

Not rated yet

About

MCP server for geocoding, reverse geocoding, truck routing with hazmat and dimension constraints, live traffic, weather, isochrones, and place search.

Details

Transport
SSE

Explore

Setup

Install ThinAir Geo in your MCP client (Claude Desktop, Cursor, Windsurf, and others).

Repository: https://github.com/thinairtelematics/thinair-geo

Follow the installation instructions in the repository README, then restart your MCP client.

geocode

Convert an address, place name, street, or intersection into coordinates and structured location results. Use when input is text and you need coordinates before routing, weather, or search. Supports street-level resolution and proximity biasing.

geocode_structured

Geocode from discrete address components (address, locality, region, postalcode, country) instead of one free-text string. Use when the input is already fielded (forms, CRM records, stop tables) — skips free-text parsing so components can't be mis-tokenized. At least one component is required. No cross-street field: for named intersections use resolve_intersection or geocode.

reverse_geocode

Convert coordinates into the nearest address, street, or place. Use when starting from GPS coordinates or a map position.

directions

Generate routes, ETAs, and turn-by-turn directions between locations. Supports car / truck / motorcycle / pedestrian / bicycle, with hazmat + dimension + toll avoidance for commercial routing. ETAs are returned as ISO 8601 with timezone offset (in the destination's local timezone). Use vehicle_profile presets (10 total — DRY_VAN_53, FLATBED_48/_40, STEP_DECK, TANKER, BOX_TRUCK_26, AUTO_CARRIER, SPRINTER_VAN, DOUBLE_TRAILER, OVERSIZE) when routing trucks — they set height/weight/length in one …

traffic

Retrieve live traffic conditions, congestion, and speed for a location. Use when traffic is needed independently of routing — for corridor monitoring, area congestion, or incident checks. COVERAGE: live data for ~30 major US metros; returns degraded or empty values outside these areas. For rural coordinates, qualify the response (e.g. 'no live traffic coverage here — showing free-flow speeds').

locate

Snap one coordinate to the road network and return the matched road's context: name, road class, speed limit, bearing, snap distance, side of street, truck legality, and toll/ferry/highway/bridge/tunnel flags — plus the IANA timezone. Use to answer 'what road is this point on and what are its rules?' for fleet/telematics snapping, geofence edge checks, or enriching a GPS fix. Set `include_elevation` for terrain-sourced point `elevation_m`; `grade_pct` is a forward-compatible field that stays …

weather

Get current and forecast weather for a location, including severe weather alerts and minute-by-minute precipitation. Use for destination conditions, travel planning, or route risk assessment.

isochrone

Generate travel-time or travel-distance reachability polygons from an origin. Pass MULTIPLE bands in one call — e.g. `contours_minutes:[10,20,30]` returns three nested polygons in a single response (one round-trip, not three). Use for service coverage, dispatch range, territory design, 'how far can I get in X minutes' questions, and concentric zone visualizations. Output is GeoJSON ready for Mapbox / Leaflet.

search_places

CATEGORY-specific POI search near a point — gas stations, truck stops, restaurants, charging stations, etc. Use this when the user has a specific TYPE of place in mind (food / health / retail / fuel / accommodation / nightlife / transport / government / recreation). For broader DISCOVERY (e.g. 'cities within 50 miles' or 'venues by population'), use `explore` instead.

batch_geocode

Geocode multiple addresses in one request with structured per-record results. Use for bulk operations instead of repeated single geocode calls. Max 50 per batch.

explore

BROWSING / DISCOVERY search — cities, neighbourhoods, or mixed venues near a location. Use this when the user is exploring a REGION rather than looking for a specific category. Supports population filtering ('cities > 100k'), distance/population sorting, and layer filtering (locality / neighbourhood / venue / address / street). For specific POI categories (gas, food, charging, etc.), use `search_places` instead.

resolve_intersection

Resolve a NAMED cross-street (street1 × street2 within a locality/region/country) to a single best coordinate with a confidence score and a fleet-safe fallback. High-confidence tier matches US-metro highway corners; named non-highway streets resolve via the geocoder fallback. For free-form streets use geocode.

distance_matrix

Compute road distances and travel times for every origin → destination pair. Endpoints accept free-text addresses or 'lat,lon' strings; N × M is capped at 625 pairs. Use for fleet dispatch, nearest-depot, and bulk ETA tables.

map_match

Map matching snaps raw GPS breadcrumbs to the road network. Feed a recorded trace (2–100 points) and get back the road-accurate route that was actually driven: matched geometry, distance, time, road names, and a 0–1 match confidence. Use for fleet trace cleanup, mileage from GPS logs, and reconstructing routes from telemetry. For planning a route between places, use `directions` instead.

trace_attributes

Trace attributes return road/network attributes for matched traces. Feed a GPS breadcrumb trail (2–100 points) and get per-segment road names, road classes, speed limits, surfaces, truck-route flags, and segment lengths along the matched route, plus a matcher confidence score. Use to audit what roads a vehicle actually used (speed-limit compliance, truck-route adherence, surface checks). For just the matched route line, use `map_match`.

geofence_contains

Test one or more points for containment inside a caller-supplied GeoJSON polygon (or MultiPolygon / Feature / FeatureCollection). Pure geometry — boundary points count as contained. Returns one boolean per input point. Errors when the polygon is structurally invalid.

place_get

Look up a place by its stable ThinAir id (ta_place_… / ta_intersection_…) as returned in the `id` field of geocode, reverse_geocode, search_places, or resolve_intersection results. Ids are deterministic and survive re-serves — safe to store as favorites or foreign keys. Returns the canonical name, label, layer, and coordinates. Unknown or expired ids error with re-search guidance.

quota

Check current usage, remaining limits, plan, and quota breakdown for the caller. FREE TO CALL — never counts against your quota, never blocked by it. Use this proactively when the user asks about usage or seems near limits.

issue_api_key

Mint a fresh API key for your current authenticated user/tenant. Useful for CLI workflows, key rotation, or MCP clients that hide the configured Bearer. The new key is tied to your existing plan. Counts as 1 query against your daily quota.

Give your AI agent complete geospatial awareness— geocode addresses and intersections, route across multiple modes (auto, truck, bicycle, pedestrian), check live traffic and weather, draw reachability polygons, and search places. Confidence-scored results so your agent knows when to ask again. 19 tools via MCP.

19 MCP tools· Geocoding, routing, traffic, weather, places · Built for fleet-grade workflows

> geocode "Port of Houston Bayport Terminal" ✓ matched: Bayport Container Terminal ✓ confidence: 0.97 ✓ coordinates: 29.6008, -95.0201

ThinAir Geo is the geospatial intelligence layer behind ThinAir fleet workflows: geocoding, routing context, address search, service-area visibility, map intelligence, traffic, weather, and reachability.

- geo.thinair.cois the hosted ThinAir product.
- This repository is the thin public MCP package/pointer for developers and AI-agent clients.
- Production use may require a ThinAir account, API key, OAuth connection, or hosted workspace.

ThinAir Geo is aModel Context Protocol (MCP)server that gives AI agents full-stack geospatial tooling — no API integration required. Coordinates you can actually route from: intersection-level precision with confidence scores, no silent fallbacks (returns an empty result instead of a city-centroid guess when uncertain).

- Geocoding— Forward, reverse, intersection, and batch (50/call). Results includeconfidenceandmethodso agents can branch on quality.
- Routing— Multi-profile: auto, truck, bicycle, pedestrian, motorcycle. 10 truck-specific presets (dry van, flatbed, step-deck, tanker, box truck, auto-carrier, sprinter, double trailer, oversize) with hazmat / dimensions / weight / time-distance constraints native.
- Traffic— Real-time conditions for 30+ US metros.
- Weather— Current conditions and forecasts.
- Place Search & Explore— Nearby POIs, locality discovery with population filtering.
- Isochrones— Drive-time / walk-time reachability polygons (multiple bands per call).

- Product:https://geo.thinair.co
- Connect / get key:
https://geo.thinair.co/connect
- Docs:
https://geo.thinair.co/docs/getting-started
- Pricing:
https://geo.thinair.co/checkout
- ThinAir:
https://thinair.co

Pass any of these asvehicle_profileondirectionsorisochroneto set dimensions automatically:

Individual params (truck_height,truck_weight,truck_length,axle_count, etc.) override the preset.

Claude Desktop, Cursor, Windsurf — OAuth (recommended, keyless)

Add to your client's MCP config (e.g.~/Library/Application Support/Claude/claude_desktop_config.json):

{ "mcpServers": { "thinair-geo": { "url": "https://geo.thinair.co/mcp" } } }

The OAuth flow completes at first use — no manual token setup required. Free tier: 15 requests/day, no card.

{ "mcpServers": { "thinair-geo": { "url": "https://geo.thinair.co/mcp", "headers": { "Authorization": "Bearer ta_live_..." } } } }

Get a key athttps://geo.thinair.co/connect.

Prints a config block to stdout for your client. Same OAuth-keyless option as above by default.

Do not commit API keys. Use OAuth where supported or pass API keys through your MCP client's secure environment/header configuration.

npmjs.com/package/@thinairtelematics/geo

Previously published asthinair-geo(now deprecated in favor of the scoped package).

Swiss open data MCP server — transport, weather, geodata, companies, etc,. Zero API keys.

Live weather radar as a text map: current conditions plus an ASCII echo grid centred on the place. Hosted endpoint, no API key, nothing to install.

A suite of servers for intelligent travel planning, including flights, hotels, events, geocoding, weather, and finance.

Global postal code lookups, validation, and city search for 70+ countries. Sub-10ms responses.

AI-powered property zoning, buildability, and ADU eligibility analysis for any U.S. address via 20+ government data sources.

Eleven MCP servers for reproducible EPA SWMM stormwater modelling — building, simulation, calibration, GIS, climate scenarios, uncertainty, plotting, and modelling memory.

Global pollen forecasts for any city or coordinate, with per-species values for multiple plants and a multiple day outlook.

Dutch property report by address. Combines nine official open sources: construction year, floor area, energy label, neighbourhood statistics, environmental noise and air quality, national monument status and nearby schools. Separates fact, signal and unknown. Remote MCP, no API key.

Track flights in real-time using Flightradar24 data.

Open MCP server providing real-time transit routing, open-source GIS / geographic intelligence, and specialized Slovenian geospatial lookup tools for AI agents and LLMs.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.