Expand description
Tool schema builders (WBSV-07) — the mandatory non-empty outputSchema + the
per-tool input schema, projected ENTIRELY from the embedded
Manifest +
CellMap.
There is NO privileged headline field (S-1): the output schema projects ALL
named outputs uniformly from cell_map.outputs, each as a { value, unit }
pair carrying its declared unit/meaning. The input-schema envelope is
strict (additionalProperties: false) and mirrors the runtime DTO gate so a
client trusting the schema never sends a key the runtime then rejects.
Functions§
- diff_
version_ output_ schema - The
diff_versionresultoutputSchema(WBSV-07), composed over the shared result envelope. The success-specific fields describe the served recorded changelog:from_version/to_version,deltas(per-output machine records), and a human-readablesummary. - empty_
input_ schema get_manifest/diff_versionhave no input — an empty strict object schema.- explain_
output_ schema - The
explainresultoutputSchema(WBSV-07), composed over the shared result envelope. The success-specific fields are the orderedstepstrace + the generic manifest-declaredannotationsobject (S-2 — any domain-specific keystone step is generalized into manifest-declared annotations). - get_
manifest_ output_ schema - The
get_manifestresultoutputSchema(WBSV-07), composed over the shared result envelope.get_manifesthas no domain-error trigger today, but composing the SAME envelope keeps every tool’s schema uniform. - input_
schema_ for_ manifest - The strict input schema for
calculate/explain: anobjectwithadditionalProperties:falseaccepting only the manifestRole::Inputcolumns (by their neutraljson_key) plus an optionaloverridesmap for variable-tier params. The DTO’sdeny_unknown_fieldsis the runtime gate; this schema mirrors it for discovery. - input_
schema_ for_ tool - Build the strict per-tool input schema (WBV2-04): an
objectwithadditionalProperties:falsecarrying ONLY this tool’s DAG-derivedinput_keys(the subset of the sharedcell_map.inputspool transitively reachable upstream of this tool’s outputs), plus the F2overridesblock. - output_
schema_ for_ manifest - Build the mandatory non-empty
outputSchema(WBSV-07) from the embeddedManifest+CellMap. - output_
schema_ for_ tool - Build ONE tool’s non-empty
outputSchema(WBSV-07 / WBV2-04) over the tool’s OWNoutputsonly (NOT the union across tools). Each output Table becomes its own MCP tool, so its schema enumerates exactly that Table’s output columns — the TypedToolWithOutput dual-surface invariant (every tool emits a non-empty outputSchema →structuredContent). - provenance_
schema - The provenance stamp sub-schema — present on every result. Carries
bundle_id/version/combined_hash(NEVERworkbook_hash— Codex HIGH #3). - render_
input_ schema_ for_ manifest - The
render_workbookinput schema (WBVER-02): the manifest-level input envelope PLUS an optional, render-ONLY top-levelmodeenum["filled","inputs_only"]. - render_
workbook_ output_ schema - The
render_workbookoutput schema (WBSV-05, WBSV-07): aworkbook://resource-URI POINTER + its MIME type — NOT the.xlsxbytes (those arrive onresources/read). Non-empty so theoutputSchema-advertise contract holds. - result_
envelope_ schema - Build a tool result
outputSchemathat accepts BOTH the tool’s success shape AND the sharedisErrorenvelope, generalizing the contract to every tool. - verify_
accuracy_ input_ schema - The
verify_accuracyINPUT schema (WBVER-03): an OPTIONALtool-name filter (advertise == accept). Absent → reconcile every tool; a registered tool name → scope the report to that tool (an unknown name is rejected by the handler, D-03).additionalProperties:falsekeeps the surface closed. - verify_
accuracy_ output_ schema - The
verify_accuracyresultoutputSchema(WBVER-03, WBSV-07): thepmcp_workbook_runtime::ReconcileReportshape composed over the shared result envelope —tolerance, theall_within_tol+cells_checkedrollups, and the per-tooltools[](each with itsoutputs[]rows carrying the D-01cellA1 address, server/oracle values,abs_delta,within_tol).