{"ok":true,"site":{"host":"spotcheck-rfq.vercel.app","url":"https://spotcheck-rfq.vercel.app/","type":"live","desc":"Spotcheck","tools":[{"name":"list_rfq_documents","kind":"answer","impl":"imperative","description":"Lists the documents in the RFQ package with their section index. Call once at the start to learn what can be read; use the section ids with read_document.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"read_document","kind":"answer","impl":"imperative","description":"Reads one section of one document and returns its text as regions with stable ids. Use those region ids as source_refs when proposing values. One section per call; output is capped, so read the sections you need.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"doc_id":{"type":"string","description":"Document id from list_rfq_documents: email, spec or drawing."},"section_id":{"type":"string","description":"Section id from that document's index, e.g. s3 or overall."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"propose_field","kind":"act","impl":"imperative","description":"Proposes a value for one quote-request field, with the source regions it came from. The field enters needs_review for the estimator to check. A field the estimator has already acted on keeps its value; your proposal is shown to them as a suggestion instead. Keep value short and as written in the source; explanation goes in rationale.","inputSchema":{"type":"object","properties":{"field_id":{"type":"string","description":"One of the 11 field ids in the taxonomy."},"value":{"type":"string","description":"The proposed value, as it should appear in the quote request."},"unit":{"type":"string","description":"Unit for the unit-bearing field (in or mm). Omit if the sources state none."},"source_refs":{"type":"array","items":{"type":"string"},"description":"Region or section ids the value comes from. At least one is required."},"rationale":{"type":"string","description":"One sentence on why this value; the estimator reads it."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"report_conflict","kind":"act","impl":"imperative","description":"Reports that the sources disagree about a field. Include every candidate with its value and sources — the estimator resolves the conflict; you cannot. A candidate may record an absence (\"none stated\") with the section where the value should have been.","inputSchema":{"type":"object","properties":{"field_id":{"type":"string","description":"One of the 11 field ids in the taxonomy."},"candidates":{"type":"array","items":{"type":"object","properties":{"value":{"type":"string","description":"The proposed value, as it should appear in the quote request."},"unit":{"type":"string","description":"Unit for the unit-bearing field (in or mm). Omit if the sources state none."},"source_refs":{"type":"array","items":{"type":"string"},"description":"Region or section ids the value comes from. At least one is required."},"note":{"type":"string"}}}},"note":{"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"report_missing","kind":"act","impl":"imperative","description":"Reports that a field's value is absent after a real search, naming where you looked. Use this instead of guessing; the estimator sees the searched places and decides what to do.","inputSchema":{"type":"object","properties":{"field_id":{"type":"string","description":"One of the 11 field ids in the taxonomy."},"searched":{"type":"array","items":{"type":"string"}},"note":{"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_review_state","kind":"answer","impl":"imperative","description":"Returns the whole review: every field with its state, value and lock, which fields are still unverified, and which are open gaps. Call it to plan your next step or to answer questions about the review.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"Productivity & Business","favicon":"/favicons/spotcheck-rfq.vercel.app.svg","apiSurface":"spec","toolCount":6}}