









































Works out-of-box with your favorite AI agents

Onfleet is a last-mile delivery management platform from San Francisco based Onfleet, Inc. Pharmacies, grocers, meal kit and auto parts suppliers and other shippers use it to dispatch, route and track deliveries across in-house drivers and outsourced couriers. Each task is tied to one destination and one recipient and is assigned to a worker, the driver, who belongs to a team with an optional home hub. Drivers capture photo and signature proof of delivery in the mobile app, and recipients get SMS updates and a live tracking page.
Where a connection exposes these records, the Onfleet MCP spares dispatchers and support staff dashboard filtering. A dispatcher asks which tasks are still unassigned with a delivery window closing within two hours. An operations manager compares completed and failed tasks by team for the previous day. A support agent reads a task's completion details, including notes and proof of delivery, when a customer reports a missing parcel. The agent can also prepare new tasks from an order list for a dispatcher to assign.
You sign in to your Onfleet organization through Makini Link, then paste the MCP endpoint Makini issues into Claude, ChatGPT, Cursor or another MCP client, and get_connection_details shows which objects and fields that connection offers. Onfleet API keys are created by an administrator and apply to the whole organization, while dashboard dispatchers see only their own teams, so agree which teams the agent should work with. Onfleet caps API traffic at 20 requests per second per organization.
Have any questions? We’re here to help You
Yes, Makini runs a managed MCP server for Onfleet. You sign in to your Onfleet organization through Makini Link and receive one MCP endpoint URL to paste into Claude, ChatGPT, Cursor, VS Code or another MCP client. Each connection runs on its own token, scoped to what its credentials can do, and every call is logged. Run get_connection_details first to see which Onfleet objects and fields the connection exposes.
Onfleet gives every task a numeric state: 0 is Unassigned, 1 is Assigned to a worker, 2 is Active once the driver starts it, and 3 is Completed. State 3 includes both successful and failed completions, which you tell apart with the completionDetails.success field and failureReason. When an agent counts deliveries, ask it to report successes and failures separately so failed drops do not hide in the total.
When you list Onfleet tasks for a time range, completed tasks are matched on completion time and tasks in every other state on creation time. A request for "yesterday's tasks" can therefore combine two meanings, so say which date you mean. Each response returns up to 64 tasks and carries a lastId while more pages remain, so a complete answer requires paging until lastId is gone.
Onfleet allows no more than 20 requests per second across all of an organization's API keys. Going over returns HTTP 429 errors, and a client that does not slow down can be temporarily banned. Every integration that calls the Onfleet API shares that budget, so during peak dispatch hours ask an agent for summaries over a filtered set of tasks rather than many single task lookups.
Onfleet Task Custom Fields are set up on the dashboard with types such as text, boolean, integer, date or URL, and cannot be created or updated from the API, although their values can be set on tasks and searched. Metadata annotates tasks, workers and other API entities with your own data, such as a purchase order number, and is accessible only through the API. Check get_connection_details to see whether either reaches your agent.
Onfleet Connections link organizations so tasks can be assigned across organizational boundaries: the merchant is the organization shown to the recipient, and the executor, such as an outsourced courier, fulfills the task. An agent sees what the organization behind its connection can see. Before it compares courier performance, check whether tasks delegated to or received from connected organizations appear in its results.
In Onfleet only administrators create API keys, in the API section of the dashboard settings, and an organization can hold as many as it needs. If Makini Link asks for a key, create one just for the agent so you can revoke it without breaking other integrations. Agree which teams the agent should report on, and ask Onfleet support for a separate test organization, which is offered on paid subscriptions.
An AI agent can at most prepare Onfleet tasks, and only where your connection allows writes; completion belongs to drivers in the Onfleet app. A task needs a destination, can have one recipient, a completeAfter and completeBefore window, and signature, photo or notes requirements. Makini's MCP tool list has generic create and update tools, so check get_connection_details for task writes and let a dispatcher review and assign anything the agent prepares.