Skip to main content
Glama

Create Standard Book

create_standard_book
Read-only

Makes one Standard Books document — a whole set of books: chart, journal, registers, parties and recorded documents — from one of two sources, and returns it sealed.

From a QuickBooks Online export: supply export_handle, the transfer handle of the export zip (add any report files exported beside it inside the zip; a bare workbook or CSV is refused), and currency, which an export never states. The book is built from the export's journal in code; judgment writes each account's description and instructions from the entries that post to it, and kinds any account nothing in the export places. No judgment sets or changes an amount, a date, an account or a link. The book is then proved against the export's own tables and reports: the result carries the export's trial balance and general ledger beside the book's, and every difference and question as an error with its evidence. Model-backed and metered; typically under a minute.

From a workspace chart: supply chart_id, and the book is the one this workspace holds for that chart — its chart, parties, registers and every posted entry — read from the workspace. No model.

The sealed book is behind a multi-read download handle; hand it to audit_standard_book, or keep it. For an export, report_handle names the rest: trial balances, general ledgers, errors, the account review and the proof against the export.

Input Schema

NameRequiredDescriptionDefault
chart_idNoA chart this workspace holds (list_charts); the book is the workspace's for that chart. Exclusive with export_handle.
currencyNoISO 4217 code the export is kept in, e.g. USD. Required with export_handle: an export never states it.
export_handleNoWorkspace-scoped transfer handle (upload:N) naming a QuickBooks Online export zip. Add any report files exported beside it (deposit detail, invoice list, aging) inside the zip. Exclusive with chart_id.
workspace_tagYesActive workspace id (the workspace_tag create_workspace and list_workspaces return). Scopes the call and its metered usage.

Output Schema

NameRequiredDescriptionDefault
bookYesWhich book was made: identity, chart_identity, name, reporting_currency and its counts, as verify_standard_document reports them.
engineYesStamped engine build/version identity for the tool result.
handleYesMulti-read download:N handle naming the sealed book package.
reportNoDownload descriptor for the conversion report (qbo_export).
sourceYesqbo_export or workspace_chart.
statusYesbook_created (from a workspace chart); for an export, reviewed, needs_information (errors or questions to answer) or unproved (the book differs from the export in a way it does not account for).
chart_idNoThe chart the book was read for (workspace_chart).
retainedYesDownload descriptor for the sealed book: session_id, handle, file_name, media_type, byte_count, sha256, expires_at, download_program.
error_codesNoErrors per code (qbo_export).
error_countNoErrors and questions the book raises without a model (qbo_export).
report_handleNoMulti-read download:N handle naming the conversion report: status, reports (export and book trial balance and general ledger, and their differences), errors, chartAnalysis, chartImprovements, roundTrip (qbo_export).
workspace_tagYesWorkspace scoped by the tool call.
round_trip_provedNoWhether the book reproduces the export's tables and reports (qbo_export).
trial_balance_differencesNoAccounts where the export's trial balance and the book's differ (qbo_export).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds substantial behavior beyond the annotations: the export path is model-backed and metered, typically under a minute, judgment only writes account descriptions/instructions and kinds unplaced accounts, and never sets amounts, dates, accounts or links. It also discloses the self-proving step (book proved against the export's own tables, differences surfaced as errors with evidence) and that the result sits behind a multi-read download handle. The only residual tension is that a 'makes a document' tool carries readOnlyHint=true; the description frames it as derived output rather than mutation of existing records, so this reads as generation rather than a contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the outcome and the two source modes, then details per mode — a sensible structure. It is long (four dense paragraphs) and repeats some schema facts such as currency being required with export_handle, but nearly every sentence carries decision-relevant information rather than filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a metered, model-backed generation tool with an output schema, the description covers what an agent needs: which source to supply, what gets refused, what the model does and does not decide, latency, and what the sealed result contains. Return-value detail is a bonus rather than a necessity given the output schema, and the pointer to report_handle closes the loop on follow-up retrieval.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds real semantics: currency is required because 'an export never states it', report files must be added inside the zip, and the two source parameters are exclusive. These restate and reinforce the schema rather than introduce new syntax, so it lands just above baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Makes one Standard Books document') and immediately defines the artifact as a whole set of books — chart, journal, registers, parties, recorded documents — which separates it from create_standard_chart and create_standard_statements. It also names the two mutually exclusive sources up front, so the agent knows exactly what the tool produces before reading the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly branches on source: export_handle for a QuickBooks Online export (with the requirement that report files go inside the zip and that a bare workbook or CSV is refused) versus chart_id for a workspace-held chart. It also routes the output onward — 'hand it to audit_standard_book, or keep it' — giving the agent the natural next step and the alternative consumer of the result.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources