Skip to main content
Glama
basis1: Excel engine for AI agents (formulas, recalculation, audit)

basis1: Excel engine for AI agents (formulas, recalculation, audit)

Official

Audit workbook

audit_workbook
Read-only

Check a workbook for broken/circular references, hardcoded plugs, external links, volatile functions, hidden sheets, stale caches, and Excel-vs-computed mismatches; recalculates, returns JSON report.

Instructions

Check a session's whole workbook for modeling problems and return a JSON report: broken references, circular references and whether they converge, hardcoded plugs (a constant or odd formula breaking a run of consistent formulas), external links, volatile functions, hidden sheets and names, stale cached values, and a verification block comparing Basis's computed values with the ones Excel last saved. Recalculates first and changes nothing else. Use it as a health check before trusting or handing off a model; for structure only use inspect_model, for one value's lineage trace_dependencies, and to compare two files diff_workbooks.

Input Schema

NameRequiredDescriptionDefault
session_idYesSession ID returned by create_session (list_sessions shows the open ones)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.3.2
    • changedInput schema / properties / session_id / description
      Previous value: -"Session ID"New value: +"Session ID returned by create_session (list_sessions shows the open ones)"
  2. First observedv0.3.1

TDQS

A4.4/5.0
Behavior4/5

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

Beyond readOnlyHint/openWorldHint, it discloses the important non-obvious trait that the tool recalculates the model first yet changes nothing else — critical, since an agent might otherwise fear a write. It also names the concrete contents of the returned JSON report, which the absence of an output schema would otherwise leave unknown. It stops short of noting cost/runtime on large workbooks.

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 verb, target, and return type, then the diagnostic list, then the routing sentence — a sensible order with no filler. The mid-sentence enumeration of report contents is dense and slightly list-heavy, but every item conveys actionable information.

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?

With no output schema, the description carries the burden of describing the return value and does so by naming each report category. Combined with the recalc-and-no-change behavior note and the sibling routing, an agent has everything needed to call it correctly.

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

Parameters3/5

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

Only one parameter exists and the schema description already covers it fully (100% coverage), including the pointer back to create_session and list_sessions. The description adds no further meaning about the session_id, so this sits at the baseline for high-coverage schemas.

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?

The description opens with a specific verb and resource ('Check a session's whole workbook') and then enumerates exactly what the check covers — broken/circular references, hardcoded plugs, external links, volatile functions, hidden sheets, stale caches, and a verification block. That enumeration lets an agent distinguish it from inspect_model, trace_dependencies, and diff_workbooks without opening 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?

It states the intended moment of use ('as a health check before trusting or handing off a model') and explicitly routes three alternatives by condition: inspect_model for structure only, trace_dependencies for a single value's lineage, diff_workbooks for two-file comparison. Both when-to-use and when-not-to-use are covered.

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