Yichus / Reference / API MCP tools
api_escrow_check
Run AdmissionSolver on a declared EscrowSpec (a State cell) or TableEscrowSpec (a table: one integer per row key, bounds read off another table's row). Pass batch JSON to admit/defer operations; a table spec is admitted against rows. Replay checks the admitted operations only. It does not establish that the handler rejects operations the declaration deferred, so it is not a general proof that the handler enforces the bounds.
Kind: EscrowCheck. Origin: Yichus/Mcp::catalog.
CLI: yichus admit — batch admission against the declared escrow invariants; the CLI reads the batch from a file.
Parameters
sources(required, array) — JSON array of {fileName, source} Bosatsu files including the EscrowSpec or TableEscrowSpec.batch(optional, array) — Optional JSON array of {operation, input, principal?} admission ops; principal is {user_id, roles} for a handler that takes one.rows(optional, object) — Optional JSON world a TableEscrowSpec is admitted against: {table: [row, ...] | {id: row}}, the api_why rows form. An unseeded table is empty.module_name(optional, string) — Optional module name (default ApiAdmission).
Read the result according to this tool’s scope: static checks, bounded execution checks, and descriptive diagrams answer different questions. A successful call is not a general approval of the program. The safety and permissions guide compares the checks and provides editable ownership, guard, and role examples.