quote_create
ONE call creates the whole document: claims the next atomic quote number, then writes the header plus every line in items ([{description, quantity, unit_price_cents}], integer CENTS) together. client_name resolves an existing client by name or creates one. tax_scheme sg_gst or my_sst taxes each line by its tax_code (refusals: see tax_scheme). When present, the second content block is the quote as copy-ready text, shown with a Copy button where the host draws MCP Apps; if the user says they cannot see the quote, give them that block word for word; make a client link with quote_share only when the user asks for one. NEXT: quote_convert to turn the quote into its invoice.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| force | No | Confirms a create whose notes or single line item read like a payment RECEIVED or a write-off rather than a new bill — resend the SAME call with force:true to create it anyway. No effect on quote_create (the intent trap is invoice-only). | |
| items | No | ONE call creates the whole document — line items in integer CENTS ($15.00 → 1500), or unit_price as a decimal string. quantity takes up to 3 decimals (1.5 hours → 1.5); unit is an optional label (hr, kg); discount_bps is an optional line discount (10% → 1000). tax_code is the line's tax under the document's tax_scheme (sg_gst: standard, zero_rated, exempt, out_of_scope, default standard; my_sst: sales_10, sales_5, service_8, service_6, exempt, required); refused without a tax_scheme. | |
| notes | No | ||
| status | No | ||
| currency | No | ||
| client_id | No | ||
| issue_date | No | ||
| line_items | No | Alias of items. | |
| tax_scheme | No | sg_gst (Singapore GST) or my_sst (Malaysia SST): each line is taxed by its tax_code at the rate in force on the issue date. Under a scheme, a tax_rate_bps other than that rate, an unknown tax_code and a my_sst line without one are refused, naming the valid codes and the rate's source. "none" = no scheme, priced by tax_rate_bps. Left out = your sales settings' tax_scheme. | |
| client_name | No | Client by NAME — resolves to an existing client or creates one (no client_id lookup needed). | |
| valid_until | No | ||
| quote_number | No | ||
| tax_rate_bps | No | ||
| prices_include_tax | No | true = unit prices already include the tax (the tax is worked back out of each line). Default false. Needs a tax_scheme. | |
| converted_invoice_id | No |