{"ok":true,"site":{"host":"once-webmcp.vercel.app","url":"https://once-webmcp.vercel.app/","type":"live","desc":"Turn one human-agent collaboration into a reusable semantic routine with new inputs and learned human approval boundaries.","tools":[{"name":"get_workspace","kind":"answer","impl":"imperative","description":"Get the current ONCE vendor-evaluation workspace, including budget, candidates, criteria, evidence, scores, uncertainty, recommendation, phase, and replay status. Call this when you need the current shared state before deciding what to change.","title":"Get workspace","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"add_candidates","kind":"act","impl":"imperative","description":"Add one or more vendor candidates to the current collaboration workspace. Candidate identities become variable inputs when a routine is taught. Do not use this tool to change candidates after replay has started.","title":"Add candidates","inputSchema":{"type":"object","properties":{"candidates":{"type":"array","minItems":1,"maxItems":4,"items":{"type":"object","properties":{"name":{"type":"string","minLength":1}},"required":["name"],"additionalProperties":false}}},"required":["candidates"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_vendor_dossier","kind":"answer","impl":"imperative","description":"Read ONCE's deterministic demo dossier facts for one or more named vendors. Use these first-party facts as evidence inputs for the competition demo. Do not claim the dossier is live web research.","title":"Get vendor dossier","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"vendorNames":{"type":"array","minItems":1,"maxItems":4,"items":{"type":"string","minLength":1}}},"required":["vendorNames"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_replay_plan","kind":"answer","impl":"imperative","description":"Get the active learned routine, its new input bindings, completed and pending steps, approval status, and the next allowed semantic work. Call this when the workspace is in replay mode.","title":"Get replay plan","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"set_budget","kind":"act","impl":"imperative","description":"Set the evaluation budget in the current collaboration workspace. In taught routines, budget becomes a variable input rather than a fixed policy. This action is not allowed after an active replay has started.","title":"Set budget","inputSchema":{"type":"object","properties":{"amount":{"type":"number","minimum":0},"currency":{"type":"string","enum":["USD"]}},"required":["amount","currency"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"add_criteria","kind":"act","impl":"imperative","description":"Add one or more evaluation criteria with priority and required status. Criteria are treated as reusable evaluation policy when a routine is taught.","title":"Add criteria","inputSchema":{"type":"object","properties":{"criteria":{"type":"array","minItems":1,"maxItems":6,"items":{"type":"object","properties":{"name":{"type":"string","minLength":1},"description":{"type":"string"},"priority":{"type":"integer","minimum":1},"required":{"type":"boolean"}},"required":["name","priority","required"],"additionalProperties":false}}},"required":["criteria"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"attach_evidence","kind":"act","impl":"imperative","description":"Attach evidence summaries to candidate/criterion pairs using source references from the ONCE demo dossiers. During replay, evidence is required for every candidate/criterion pair before scoring can complete. Evidence text is execution output and is not copied literally into a learned routine.","title":"Attach evidence","inputSchema":{"type":"object","properties":{"items":{"type":"array","minItems":1,"maxItems":12,"items":{"type":"object","properties":{"candidateId":{"type":"string","minLength":1},"criterionId":{"type":"string","minLength":1},"summary":{"type":"string","minLength":1},"sourceRef":{"type":"string","minLength":1},"confidence":{"type":"string","enum":["high","medium","low"]}},"required":["candidateId","criterionId","summary","sourceRef","confidence"],"additionalProperties":false}}},"required":["items"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"set_scores","kind":"act","impl":"imperative","description":"Score one or more candidate/criterion pairs from 1 to 5 with a rationale. Use 1=does not meet, 2=materially below, 3=meets, 4=strong, 5=excellent. During replay, use current evidence and routine policy. A replay score requires evidence for the same pair. Score values are generated per run and are not copied from the taught session.","title":"Set scores","inputSchema":{"type":"object","properties":{"items":{"type":"array","minItems":1,"maxItems":12,"items":{"type":"object","properties":{"candidateId":{"type":"string","minLength":1},"criterionId":{"type":"string","minLength":1},"score":{"type":"integer","minimum":1,"maximum":5},"rationale":{"type":"string","minLength":1}},"required":["candidateId","criterionId","score","rationale"],"additionalProperties":false}}},"required":["items"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"flag_uncertainty","kind":"act","impl":"imperative","description":"Record an uncertainty that should remain visible to the human. Use this when the available evidence does not justify a confident conclusion. The literal uncertainty note is not copied into a routine.","title":"Flag uncertainty","inputSchema":{"type":"object","properties":{"candidateId":{"type":"string","minLength":1},"criterionId":{"type":"string","minLength":1},"note":{"type":"string","minLength":1}},"required":["note"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"set_recommendation","kind":"act","impl":"imperative","description":"Set the current final recommended candidate and rationale. In replay mode, this tool is blocked until every required pre-recommendation step is complete and any required human approval has been explicitly granted.","title":"Set recommendation","inputSchema":{"type":"object","properties":{"candidateId":{"type":"string","minLength":1},"rationale":{"type":"string","minLength":1}},"required":["candidateId","rationale"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"Productivity & Business","apiSurface":"spec","toolCount":10}}