io.github.luisbretasjr/routekit
Route optimization API for Brazil. Routes, distance matrices, and VRP solver.
Que pouvez-vous faire avec io.github.luisbretasjr/routekit ?
- calculate_route -- Driving route between points with real road distances and ETAs. Supports waypoints, encoded polyline geometry, turn-by-turn steps, and up to 3 alternative routes.
- distance_matrix -- NxN distance/duration matrix between up to 5000 locations (transparently chunked for large sets, cached for repeated queries).
- snap_to_road -- Snap a raw GPS coordinate to the nearest road segment. Returns the snapped point, distance from the original, and road name.
- isochrone -- Area reachable from a point within N minutes by car. Returns a GeoJSON Polygon useful for coverage analysis, depot placement, and service area definition.
- geocode -- Convert a Brazilian address or place name to latitude/longitude. Restricted to Brazil, in-house geocoder with no third-party dependency. Built-in fuzzy fallback handles abbreviations ("Av" -> "Avenida"), accents, and token drops.
- geocode_batch -- Geocode up to 50 addresses in a single call with parallel execution. Perfect for delivery manifests or client lists.
- reverse_geocode -- Convert lat/lon to a human-readable Brazilian address with components (road, neighborhood, city, state, postcode).
- compare_routes -- Run
optimize_routesunder multiple balance strategies (minimize_vehicles, balance_tasks, minimize_distance) and return a side-by-side comparison with winners per metric.
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
claude mcp add --transport http routekit 'https://routekit.nexterait.com.br/mcp' --header 'X-API-Key: <Your RouteKit API key from https://routekit.nexterait.com.br/static/signup.html>'
{
"mcpServers": {
"routekit": {
"type": "http",
"url": "https://routekit.nexterait.com.br/mcp",
"headers": {
"X-API-Key": "<Your RouteKit API key from https://routekit.nexterait.com.br/static/signup.html>"
}
}
}
}
routekit-mcpclaude mcp add routekit -e 'ROUTEKIT_API_KEY=<your routekit_api_key>' -- npx -y routekit-mcp@1.0.0
{
"mcpServers": {
"routekit": {
"command": "npx",
"args": [
"-y",
"routekit-mcp@1.0.0"
],
"env": {
"ROUTEKIT_API_KEY": "<your routekit_api_key>"
}
}
}
}
Variables d'environnement
ROUTEKIT_API_KEYobligatoire secret Your RouteKit API key. Get one free at https://routekit.nexterait.com.br/static/signup.html
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
Sommaire
RouteKit MCP
Route optimization API for Brazil. First MCP server for route optimization.
Install
npx routekit-mcp
Or configure in your MCP client:
Claude Desktop / Claude Code
{
"mcpServers": {
"routekit": {
"command": "npx",
"args": ["-y", "routekit-mcp"],
"env": {
"ROUTEKIT_API_KEY": "YOUR_KEY"
}
}
}
}
Direct HTTP (no install needed)
{
"mcpServers": {
"routekit": {
"type": "url",
"url": "https://routekit.nexterait.com.br/mcp",
"headers": {
"X-API-Key": "YOUR_KEY"
}
}
}
}
Get API Key
Get a free key (50 calls/month) at routekit.nexterait.com.br/static/signup.html
Tools
- calculate_route -- Driving route between points with real road distances and ETAs. Supports waypoints, encoded polyline geometry, turn-by-turn steps, and up to 3 alternative routes.
- distance_matrix -- NxN distance/duration matrix between up to 5000 locations (transparently chunked for large sets, cached for repeated queries).
- snap_to_road -- Snap a raw GPS coordinate to the nearest road segment. Returns the snapped point, distance from the original, and road name.
- isochrone -- Area reachable from a point within N minutes by car. Returns a GeoJSON Polygon useful for coverage analysis, depot placement, and service area definition.
- geocode -- Convert a Brazilian address or place name to latitude/longitude. Restricted to Brazil, in-house geocoder with no third-party dependency. Built-in fuzzy fallback handles abbreviations ("Av" -> "Avenida"), accents, and token drops.
- geocode_batch -- Geocode up to 50 addresses in a single call with parallel execution. Perfect for delivery manifests or client lists.
- reverse_geocode -- Convert lat/lon to a human-readable Brazilian address with components (road, neighborhood, city, state, postcode).
- compare_routes -- Run
optimize_routesunder multiple balance strategies (minimize_vehicles, balance_tasks, minimize_distance) and return a side-by-side comparison with winners per metric. - validate_eta -- Simulate a pre-defined route in Python and return the real arrival times plus any constraint violations. Use when you already have a fixed order of stops and just need the ETAs.
- optimize_routes -- Advanced VRP solver:
tasks(single-location jobs) and/orshipments(paired pickup+delivery, same vehicle)- Constraints: time windows (multiple per task), skills, multi-dimensional capacity, breaks, priorities
- Per-vehicle costs (
fixed,per_hour,per_km,per_task_hour),max_tasks,max_travel_time_min,max_distance_km balance_mode:minimize_vehicles(default),balance_tasks, orminimize_distancesetup_minseparate fromservice_min(setup charged once per location)setup_per_type/service_per_typefor different times per technician/vehicle typevehicle.typetags for per-type time/cost modelingend_lat/end_lonfor open routes with different destination (e.g. driver ends at home)- Mixed-profile fleets (car / bike / foot) with per-vehicle
profile include_geometry=truereturns encoded polylines per route (for maps)matrix_overrides: user-provided per-pair travel time / distance overrides (for toll routes, restricted zones, known detours)- Up to 500 tasks / 250 shipments / 100 vehicles per request
- Route-level and step-level
violationsreported when constraints are tight
Example
Ask your AI assistant:
"Geocode these addresses and optimize 10 deliveries in Sao Paulo for 2 drivers -- the senior finishes each stop in 20 min, the junior in 45 min. Balance tasks evenly, end both at the same warehouse, include the route polylines so I can draw them on a map."
The AI will call geocode, then optimize_routes with vehicle.type, service_per_type, balance_mode, end_lat/end_lon and include_geometry -- no manual coordinate entry needed.
What's new in 1.4.1
- Per-tool analytics: the dashboard now shows a breakdown of which tools your API key has been calling (horizontal bars, ordered by frequency).
- 80% limit warning: when your usage crosses 80% of the monthly limit, the dashboard shows a yellow banner reminding you to upgrade before new calls are rejected.
/billing/usagealso exposesthreshold_80andthreshold_100flags. - Welcome email: new customers get an onboarding email right after OTP verification, with their API key, ready-to-paste Claude Desktop config, a curl snippet and doc links.
What's new in 1.4.0
calculate_routeturn-by-turn: passinclude_steps=trueto get a list of maneuvers with street names, distances and durations per step.calculate_routealternatives: passalternatives=1..3to get alternate routes (useful for "fastest vs shortest vs no-toll" comparisons).- Fuzzy geocoding:
geocodenow silently retries with abbreviation expansion ("Av" -> "Avenida"), accent normalization and token-drop heuristics when the exact query returns nothing. The response includesvariant_usedshowing which transformation matched. Setfuzzy=falseto disable. - REST API: the same 10 tools are now available via plain HTTP POST under
https://routekit.nexterait.com.br/v1/<tool_name>. Same X-API-Key auth, same metering. The publicGET /v1/lists all endpoints with their descriptions. Useful for integrations that don't speak MCP. - Billing portal return flow: after managing a subscription on Stripe, the user lands back on the dashboard with a success banner instead of a raw JSON page.
What's new in 1.3.0
compare_routestool: compare the optimizer under multiple strategies and get winners per metric (distance, travel time, vehicles used). Runs strategies in parallel.validate_etatool: simulate a pre-defined route and get real ETAs plus violations without re-optimizing. The sequence you provide is strictly respected.matrix_overrideson optimize_routes: patch specific pairs in the distance/time matrix with your own values (toll routes, ferries, known detours) without forcing users to send a whole NxN matrix.
What's new in 1.2.3
geocode_batch: new tool accepting up to 50 addresses per call. Internally runs queries in parallel with bounded concurrency.- Mixed-profile fleets:
optimize_routesnow fetches separate distance/duration matrices per vehicle profile (car/bike/foot). When a profile container isn't deployed, it falls back to car routing transparently. - Smarter image check: the weekly OSRM image check now queries registry tags and ranks stable semver releases (filtering debug/assertions/rc variants).
What's new in 1.2.2
- Matrix cache: repeated distance/duration matrix queries hit a local cache and return ~5x faster. Transparent to callers.
- Automatic chunking: distance_matrix now handles up to 5000 locations by splitting into parallel sub-block queries.
- Retry + backoff: all upstream calls now retry transient failures (connect errors, 5xx) with exponential backoff + jitter before surfacing an error.
- Cleaner error messages: "temporarily unavailable" vs "no result found" so the LLM can decide whether to retry.
What's new in 1.2.0
- Geocoding: new
geocodeandreverse_geocodetools for Brazil. Users can speak in addresses instead of coordinates. No third-party API dependency. - Snap-to-road: new
snap_to_roadtool to clean up noisy GPS before routing. - Isochrone: new
isochronetool to compute areas reachable in N minutes. - Technician modeling:
vehicle.type,setup_per_type,service_per_type,costs.per_task_hourfor per-type time and cost realism. - Open routes:
end_lat/end_lonper vehicle for drivers that end at a different place than they started. - Multi-profile fleets: label vehicles with
profile(car/bike/foot/truck).
What's new in 1.1.0
shipments(paired pickup+delivery) supportbalance_modeto distribute tasks evenly across a fleetinclude_geometryto return route polylines from the optimizer- Route
violationsnow surfaced in the response for diagnosis setup_minvsservice_minsplit for realistic location costs- Matrix limit raised from 200 to 2000 locations
- Advanced VRP engine upgrade:
per_kmcosts andmax_distance_kmconstraints now active
Pricing
| Tier | Calls/Month | Price |
|---|---|---|
| Free | 50 | R$ 0 |
| Starter | 1,000 | R$ 500/month |
| Professional | 10,000 | R$ 3,000/month |
Links
Provider
Questions fréquentes
Qu'est-ce que io.github.luisbretasjr/routekit ?
Route optimization API for Brazil. Routes, distance matrices, and VRP solver.
Comment installer io.github.luisbretasjr/routekit ?
Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http routekit 'https://routekit.nexterait.com.br/mcp' --header 'X-API-Key: <Your RouteKit API key from https://routekit.nexterait.com.br/static/signup.html>'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour io.github.luisbretasjr/routekit ?
Oui. Il attend ROUTEKIT_API_KEY, X-API-Key, à renseigner dans sa configuration.
io.github.luisbretasjr/routekit est-il open source ?
Son code est public sur GitHub, mais le dépôt ne déclare pas de licence standard.
Qui maintient io.github.luisbretasjr/routekit ?
Il est publié par luisbretasjr. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.