list_jobs
Jobs · Read-only · account-scoped
The shop's job board, most recently updated first — same composed shape as get_job, optional stage filter.
Usage
The board at a glance: every job the authenticated shop has, newest activity first, each in the same composed shape get_job returns. Pass stage to see one lane only ("awaiting-approval" is the natural morning question).
At most the 50 most recently updated jobs return; total always reports the true count, and a note appears when the list was capped — filter by stage rather than assuming the list is complete.
Read-only like get_job, with the same posture: no MOTOR call, no descriptive text beyond each quote's stored vehicleDescription, Stripe stays the money record, and the shop is never a parameter — it resolves from the authenticated account.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
stage | "intake" | "quoting" | "awaiting-approval" | "in-shop" | "ready-to-bill" | "invoiced" | "paid" | "closed" | No | Optional board-lane filter. One of the eight job stages. Example: "awaiting-approval" |
Description advertised to clients
The exact description a fully entitled MCP client discovers — the workflow contracts travel with the tool, so a client with no system prompt still uses it correctly. An account missing a licence for content this tool reaches sees the same text behind a [Licensed content — not enabled on this account] or [Partially available] notice:
List the authenticated shop's jobs, most recently updated first, each in the same composed shape get_job returns (spine + quote/invoice summaries). Pass stage to see one board lane only. Returns at most the 50 most recently updated jobs; when more exist, the result says so — filter by stage to narrow rather than assuming the list is complete. THIS TOOL IS READ-ONLY EVERYWHERE: it reads MotorAdvisor's own job store and touches neither MOTOR (no content call is made, and no MOTOR text is persisted anywhere on the job record) nor the payment provider — Stripe remains the system of record for money, linked by invoiceId only. The shop is NEVER a parameter: it resolves from the authenticated account, so this tool can only read the caller's own jobs — another shop's ids read as not found.
Example — Jobs awaiting the customer's decision
Illustrative payload shapes (ids elided).
Request
{
"stage": "awaiting-approval"
}
Response
{
"jobs": [
{
"jobId": "job_m1abc2de_x7k4q9",
"stage": "awaiting-approval",
"customerId": "job_m1abc2de_x7k4q9",
"baseVehicleId": 22124,
"createdAt": "2026-08-20T14:02:00.000Z",
"updatedAt": "2026-08-21T09:12:00.000Z",
"quotes": [
{
"quoteId": "q_9c41f0b2ae77d31c55e00e12",
"stage": "quote",
"status": "sent",
"totalCents": 28500,
"sentAt": "2026-08-21T09:12:00.000Z",
"vehicleDescription": "2010 Honda Civic LX"
}
]
}
],
"total": 1
}
Follow up on a specific quote with check_quote_status — it adds the delivery trail and the approval link.