fleetsync-mcp
FleetSync MCP exposes the FleetSync last-mile delivery platform to AI agents, letting them query, create, update, and delete orders and routes, plus analyse route distances and check drivers and credentials.
Orders (8 tools) — fetch an order by number (status, client, address, driver, proof of delivery); list orders by date, by route, or by status-change time (min UTC −1 day); view an order's last 25 history entries; create an unscheduled order; update order fields; delete an order (irreversible).
Routes (7 tools) — list all routes; get routes for a date with driver and order count; fetch a route by code; get orders grouped by route for a date; create a route (code, date, optional driver, vehicle, depot, orders, update/merge/address-GPS options); update a route; delete a route (irreversible).
Analytics (1 tool) —
fleetsync_analyze_route_distancescomputes haversine distances between consecutive stops on a route, flags segments over a configurable threshold (default 5 km), and returns total/avg/max km plus violations.Drivers & Auth (2 tools) — list all drivers with vehicle, phone, and active status; validate API credentials and check rate limits.
Typical uses — check tomorrow's delivery volume and active routes, inspect a route's stop sequence quality, manage orders and routes conversationally, and confirm API connectivity.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@fleetsync-mcpShow me all deliveries scheduled for tomorrow."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
FleetSync MCP
A Model Context Protocol (MCP) server that exposes the FleetSync last-mile delivery platform to AI agents — enabling LLMs to query orders, manage routes, track drivers, and analyse delivery performance through natural language.
What It Does
Turns a logistics platform into a conversational interface. A dispatcher, operations manager, or automated agent can ask questions like:
"What orders are scheduled for tomorrow?"
"Show me all deliveries on route R-04"
"Which routes today have stops more than 10km apart?"
"Create a new delivery order for customer João, Rua das Flores 12, for Friday"
...and get structured, actionable answers — without opening the dashboard.
Related MCP server: Easyship MCP
Capabilities
This MCP server exposes 17 tools across 4 operational domains:
Domain | Tools | What it replaces |
Orders | 8 | Manual dashboard lookups, copy-paste into chat |
Routes | 7 | Spreadsheet route planning, phone calls to dispatchers |
Analytics | 1 | Manual haversine calculations, route quality reviews |
Drivers & Auth | 2 | Directory lookups, credential validation |
Route distance analysis — computes haversine distances between consecutive stops, flags segments exceeding a configurable threshold, and returns total/avg/max km per route. Identifies poorly sequenced routes before dispatch.
Reference implementation — built on production logistics data patterns. Client code omitted; integration available on request.
Architecture
flowchart LR
A[AI Agent\nClaude / n8n / Custom] -->|MCP tool call| B[fleetsync-mcp\nMCP Server]
B -->|REST API| C[FleetSync\nAPI v2]
C -->|JSON response| B
B -->|structured result| A
subgraph Tools
direction TB
T1[Orders\nget · create · update · delete]
T2[Routes\nget · create · update · delete]
T3[Analytics\nanalyse route distances]
T4[Drivers\nlist drivers]
endTools (17 total)
Orders (8 tools)
Tool | Description |
| Get order by number — status, client, address, driver, proof of delivery |
| Get all orders scheduled for a date |
| Get all orders assigned to a route code |
| Get orders with status changes after a datetime (last 24h max) |
| Get the last 25 history entries for an order |
| Create a new unscheduled order |
| Update an existing order's fields |
| Delete an order (irreversible) |
Routes (7 tools)
Tool | Description |
| List all routes |
| Get all routes for a date with driver and order count |
| Get a specific route by code |
| Get orders grouped by route for a date |
| Create a new route with optional driver, vehicle, and orders |
| Update an existing route |
| Delete a route (irreversible) |
Analytics (1 tool)
Tool | Description |
| Compute haversine distances between consecutive stops. Flags pairs exceeding a configurable threshold (default: 5km). Returns total km, avg km, max km, and all violations |
Drivers & Auth (2 tools)
Tool | Description |
| List all drivers with vehicle, phone, and active status |
| Validate API credentials and check rate limits |
Stack
Component | Tool |
Protocol | |
Language | TypeScript 5 + Node.js |
Schema validation | |
Logistics platform | FleetSync API v2 |
Setup
Prerequisites
Node.js 18+
FleetSync account with API key
1. Install
git clone https://github.com/RobsonAdvincula/fleetsync-mcp.git
cd fleetsync-mcp
npm install
npm run build2. Configure environment
FLEETSYNC_API_KEY=your_api_key
FLEETSYNC_BASE_URL=https://api.fleetsync.io/v23. Add to MCP host
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"fleetsync": {
"command": "node",
"args": ["/path/to/fleetsync-mcp/dist/index.js"],
"env": {
"FLEETSYNC_API_KEY": "your_api_key"
}
}
}
}Example Interactions
Operations check:
User: "How many deliveries do we have tomorrow and which routes are active?"
→ fleetsync_orders_by_date({ date: "2026-03-26" })
← { count: 47, orders: [...] }
→ fleetsync_routes_by_date({ date: "2026-03-26" })
← { count: 4, routes: [{ code: "R-01", driver: "...", orders: 12 }, ...] }
Agent: "47 orders across 4 active routes tomorrow. Route R-03 has the most stops (18)."Route quality check:
User: "Is route R-04 well optimised?"
→ fleetsync_analyze_route_distances({ code: "R-04", maxDistanceKm: 8 })
← {
total_km: 34.2,
avg_km: 2.1,
violations_count: 2,
violations: [
{ from: "ORD-112", to: "ORD-113", km: 11.4 },
{ from: "ORD-118", to: "ORD-119", km: 9.7 }
]
}
Agent: "Route R-04 has 2 problematic segments exceeding 8km. Consider reordering stops 112-113 and 118-119."License
MIT — free to use, adapt, and build on.
Built by Robson Advincula — AI & Automation Consultant
Available Tools
18 toolsfleetsync_analyze_route_distancesA
Analyze distances between consecutive orders in a route. Flags order pairs exceeding the distance threshold. Useful for diagnosing poorly optimized routes.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | Route code to analyze distances between consecutive orders | |
| maxDistanceKm | No | Max acceptable distance in km between orders (default: 5) |
fleetsync_create_orderA
Create a new unscheduled order in FleetSync. Requires: Number (max 50 chars), Client, Address, Date (YYYY-MM-DD). Optional: Phone, Email, Note.
| Name | Required | Description | Default |
|---|---|---|---|
| Date | Yes | Delivery date in YYYY-MM-DD format | |
| Note | No | Order notes | |
| No | Client email | ||
| Phone | No | Client phone number | |
| Client | Yes | Client name | |
| Number | Yes | Order number (max 50 chars) | |
| Address | Yes | Delivery address |
fleetsync_create_routeA
Create a new route in FleetSync. Requires Code and Date. Optional: DriverName, DriverVehicle, Depot, Orders. Query options: update, updateAddressGps, mergeAddresses.
| Name | Required | Description | Default |
|---|---|---|---|
| Code | Yes | Route code (unique identifier) | |
| Date | Yes | Route date in YYYY-MM-DD format | |
| Depot | No | Depot/start address for the route | |
| Orders | No | Array of order objects to include | |
| update | No | Add/remove orders if route exists on this date | |
| DriverName | No | Driver name to assign | |
| DriverVehicle | No | Vehicle plate number (e.g. 'BU-36-FS') | |
| ReturnToDepot | No | Whether to return to depot | |
| StartFromDepot | No | Whether to start from depot | |
| mergeAddresses | No | Merge orders by address onto one site (default true) | |
| updateAddressGps | No | Force update lat/lon in address directory |
fleetsync_delete_orderA
Delete a FleetSync order by its number. This action is irreversible.
| Name | Required | Description | Default |
|---|---|---|---|
| number | Yes | Order number to delete |
fleetsync_delete_routeA
Delete a FleetSync route by its code. This action is irreversible.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | Route code to delete |
fleetsync_get_driversA
Get all FleetSync drivers. Returns list of drivers with their names, vehicles, phones, and active status.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
fleetsync_get_orderA
Get a FleetSync order by its number. Returns order details including status, client, address, delivery date, driver, and proof of delivery info.
| Name | Required | Description | Default |
|---|---|---|---|
| number | Yes | Order number (e.g. 'EVREMMA2026000105') |
fleetsync_get_routeA
Get a specific FleetSync route by its code. Returns route details, driver assignment, orders, and status.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | Route code |
fleetsync_get_routesA
Get all FleetSync routes. Returns a list of all route summaries.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
fleetsync_order_historyA
Get the history of a FleetSync order (last 25 entries). Useful for tracking changes and re-deliveries.
| Name | Required | Description | Default |
|---|---|---|---|
| number | Yes | Order number to get history (last 25 entries) |
fleetsync_orders_by_dateA
Get all FleetSync orders for a specific date. Returns list of orders scheduled for that day with their statuses.
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Date in YYYY-MM-DD format (e.g. '2026-02-10') |
fleetsync_orders_by_routeA
Get all FleetSync orders assigned to a specific route by its code.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | Route code |
fleetsync_orders_by_route_dateA
Get all FleetSync orders for a specific date grouped by their assigned routes.
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Date in YYYY-MM-DD format to get orders grouped by route |
fleetsync_orders_status_changesA
Get FleetSync orders that had status changes after a specific date/time. Useful for checking recently delivered/updated orders. Date format: YYYY-MM-DDTHH:mm:ss. Minimum: UTC - 1 day.
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Date/time in YYYY-MM-DDTHH:mm:ss format. Returns orders with status changes after this date. Min: UTC - 1 day. |
fleetsync_routes_by_dateA
Get all FleetSync routes for a specific date. Returns route details including driver, status, and order count.
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Date in YYYY-MM-DD format |
fleetsync_testA
Test FleetSync API authentication and check rate limits.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
fleetsync_update_orderA
Update an existing FleetSync order. Requires: Number. Optional fields to update: Client, Address, Phone, Email, Date, Note.
| Name | Required | Description | Default |
|---|---|---|---|
| Date | No | Delivery date in YYYY-MM-DD format | |
| Note | No | Order notes | |
| No | Client email | ||
| Phone | No | Client phone number | |
| Client | No | Client name | |
| Number | Yes | Order number to update | |
| Address | No | Delivery address |
fleetsync_update_routeB
Update an existing FleetSync route. Requires Code. Optional: Date, DriverName, DriverVehicle, Depot, Orders. Query options: update, updateAddressGps, mergeAddresses.
| Name | Required | Description | Default |
|---|---|---|---|
| Code | Yes | Route code to update | |
| Date | No | Route date in YYYY-MM-DD format | |
| Depot | No | Depot/start address | |
| Orders | No | Array of order objects | |
| update | No | Add/remove orders from route | |
| DriverName | No | Driver name | |
| DriverVehicle | No | Vehicle plate number | |
| mergeAddresses | No | Merge orders by address | |
| updateAddressGps | No | Force update lat/lon |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
18 tool updates
v1.0.0- First observed
fleetsync_analyze_route_distances - First observed
fleetsync_create_order - First observed
fleetsync_create_route - First observed
fleetsync_delete_order - First observed
fleetsync_delete_route - First observed
fleetsync_get_drivers - First observed
fleetsync_get_order - First observed
fleetsync_get_route - First observed
fleetsync_get_routes - First observed
fleetsync_order_history - First observed
fleetsync_orders_by_date - First observed
fleetsync_orders_by_route - First observed
fleetsync_orders_by_route_date - First observed
fleetsync_orders_status_changes - First observed
fleetsync_routes_by_date - First observed
fleetsync_test - First observed
fleetsync_update_order - First observed
fleetsync_update_route
TDQS
Scored across 18 tools
Most tools are clearly distinct, but the overlapping query tools (orders_by_date vs orders_by_route_date, get_routes vs routes_by_date) could cause misselection if an agent doesn't read descriptions carefully. Each tool has a unique filter or aggregation purpose, so ambiguity is low but not absent.
All tools share the fleetsync_ prefix, but the verb_noun pattern is broken by query-style names like orders_by_date, orders_status_changes, order_history, and routes_by_date. This mixed convention reduces predictability, though the domain terms keep the names readable.
At 18 tools, the set is slightly over the ideal 3-15 range, but the count is justified by full CRUD for both orders and routes plus multiple query views and an analytics tool. Each tool has a clear purpose, so it feels slightly heavy rather than bloated.
The set covers CRUD for orders and routes, along with useful queries and distance analysis. However, order status cannot be updated (only read), route status is not manageable, and driver tools are limited to listing. This leaves significant gaps for agents needing to update delivery progress or assignments.
Maintenance
Related MCP Connectors
Manage Shipday orders, drivers, driver earnings, reports from your AI assistants.
Agentic-AI route optimization for delivery fleets, capacity- and time-window-safe.
Plan last-mile deliveries from your AI assistant. Turns orders from spreadsheets, URLs, or pasted text into optimized delivery routes. It geocodes addresses, flags locations that need confirmation, and assigns stops across your fleet while respecting vehicle capacity, delivery time windows, and stop limits. Manage vehicles and depots, review route maps, and plan anything from a small delivery run to thousands of stops. Connect with your Vepathos account using OAuth.
Field operations on a deterministic solver — run jobs, crews & fleet from Claude or ChatGPT.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables Large Language Models to interact with the ILP Drone Delivery System to plan deliveries, check drone availability, and generate route visualizations. It allows users to manage logistics tasks like capacity planning and temperature requirement matching through natural language.6MIT

Easyship MCPofficial
AlicenseNot gradedqualityDmaintenanceEnables AI agents to manage global shipping operations, including rate comparison, shipment creation, label purchasing, tracking, pickup scheduling, address validation, billing, and analytics, via natural language.32 npmMIT- AlicenseAqualityBmaintenanceEnables AI assistants to query and manage logistics shipment data, supporting operations like tracking, quoting, and performance analysis via nine tools backed by a demo dataset or a REST API.9253 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to interact with SmartRoutes route optimization and dispatch tools, allowing users to manage orders, vehicles, and plans via natural language.MIT