check_quote_status
Notifications · Read-only · account-scoped
Where a quote stands with the customer — decision, expiry, and whether the message actually arrived.
Usage
The approval-side twin of check_invoice_status: after a quote goes out, this answers "did they approve?" without leaving the client. Read-only in every direction — it reads MotorAdvisor's own quote record and the notification audit trail, and touches neither MOTOR nor the payment provider.
status is one of open (created, no message out yet — sentAt absent), sent (sentAt is the first actual delivery, matching the trail), approved, declined (with declineReason and decidedAt), expired, voided (with voidedAt/voidReason), or superseded (with supersededBy naming the replacement). An invoiced quote carries invoiceId/invoicedAt — the money trail closed. An approved quote is the cue to do the work and then issue_invoice; a declined one is a customer decision to relay.
delivery carries the latest audit-trail state per channel — sent, delivered, bounced, or deferred. A bounce means the customer likely never saw the quote: say so and suggest another way to reach them rather than assuming they are ignoring it. When no notification was ever sent, deliveryNote says so — the advisor may have shared the link by hand.
The shop resolves from the authenticated account; another shop's quoteId reads as not found.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
quoteId | string | Yes | The quote snapshot id from create_quote_snapshot or the advisor's work order. Example: "q_1facac2305cc6b3901077d3b" |
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:
Check where a quote stands with the customer: open (created, no message out yet), sent (sentAt = actual first delivery), approved, declined (with their reason), expired, voided, or superseded (with the replacing quote's id) — plus whether the notification actually arrived (per-channel delivery state from the audit trail: sent, delivered, bounced, or deferred until a stated time). THIS TOOL IS READ-ONLY EVERYWHERE: it reads MotorAdvisor's own records and touches neither MOTOR (DaaS stays read-only) nor the payment provider. The shop is NEVER a parameter: it resolves from the authenticated account, so this tool can only read the caller's own quotes — another shop's quoteId reads as not found. Relay decidedAt and the decline reason when present; a bounced delivery means the customer likely never saw the quote — say so and suggest another way to reach them rather than assuming they are ignoring it. An approved quote is the cue to do the work and then issue_invoice; a declined one is a customer decision to relay, never to argue with.
Example — Check an open quote after sending
Illustrative payload shapes (ids and token elided); statuses come from the live audit trail.
Request
{
"quoteId": "q_9c41f0b2ae77d31c55e00e12"
}
Response
{
"quoteId": "q_9c41f0b2ae77d31c55e00e12",
"status": "sent",
"vehicle": "2010 Honda Civic LX",
"total": "$285.00",
"sentAt": "2026-08-21T13:30:00.000Z",
"expiresAt": "2026-08-28T13:30:00.000Z",
"quoteUrl": "https://motoradvisor.app/q/…",
"delivery": [
{
"channel": "email",
"status": "delivered",
"sentAt": "2026-08-21T13:30:02.000Z",
"deliveredAt": "2026-08-21T13:30:04.000Z"
}
]
}
An expired-but-undecided quote reads as expired — create and send a fresh one rather than re-sending a dead link.