MCP connector
AIRO exposes its optimization workflow to AI assistants through the Model Context Protocol. The assistant is the interface; the AIRO engine does the work, and your spreadsheet is never sent to the assistant.
Connect
https://ai-route-optimization.com/mcp- Claude: Settings, Connectors, Add custom connector, paste the URL.
- ChatGPT: create a connector in developer mode where available, paste the URL, choose OAuth.
- Sign in to your account on the page that opens and approve the access.
Authentication
- OAuth 2.1 authorization code with PKCE (S256), dynamic client registration and refresh token rotation.
- Discovery documents: /.well-known/oauth-protected-resource and /.well-known/oauth-authorization-server.
- Scopes mirror portal permissions and can never exceed your role. API keys also work as bearer tokens.
Tools
| Tool | What it does |
|---|---|
| create_import | Start an import; returns import_id and a short-lived upload URL |
| list_imports | Find a file uploaded in the web app |
| validate_import | Columns, mapping, counts, grouped issues and a 3-row preview |
| update_import_mapping | Set the column mapping and re-validate |
| create_optimization_job | Launch an optimization (idempotency_key required) |
| get_job_status | Status, progress and ETA |
| get_optimization_result | KPIs, per-vehicle summary, unassigned, map and export links |
| compare_scenarios | Baseline versus optimized: distance, duration, vehicles |
| export_result | Excel or CSV with a signed link |
Safety and limits
- The assistant receives compact summaries (counts, grouped issues, per-vehicle totals), not your spreadsheet or full address lists.
- Per-minute limits per token, company and IP, a daily company quota, 256 KB request size and the same job limits as the portal.
- Every call is logged (tool, outcome, duration) and mutations are in the audit log. Arguments are never logged.
- Disconnect an assistant or revoke a key at any time in Connect AI.
Building automation instead of a chat workflow? Use the REST API: same engine, same billing, JSON in and out.