Skip to main content
Glama
xlsx-audit-mcp

xlsx-audit-mcp

by koleharv

xlsx-audit-mcp

An MCP server that audits Excel workbooks. Other Excel MCP servers read and write your data — this one reviews your model:

  • "What feeds the Total cell on the Summary sheet?" — precedent tracing

  • "If I change this assumption, what breaks?" — dependent tracing, including cells that consume it through ranges like SUM(A1:A40)

  • "Audit this workbook" — circular references with example chains, volatile functions (INDIRECT, OFFSET, NOW, RAND...), hardcoded constants buried inside formulas, external workbook links, merged cells, extra-long formulas

Spreadsheet mistakes are famously expensive. This is the "trace precedents" discipline auditors apply by hand, exposed to an LLM for a whole workbook at once. Local files only; nothing leaves your machine.

Quick start

Claude Code

claude mcp add xlsx-audit -- npx -y xlsx-audit-mcp

Claude Desktop — add to claude_desktop_config.json:

{
  "mcpServers": {
    "xlsx-audit": {
      "command": "npx",
      "args": ["-y", "xlsx-audit-mcp"]
    }
  }
}

Then: "Audit C:\models\budget-2026.xlsx and tell me what looks fragile."

Related MCP server: xlsx-for-ai

Tools

Tool

What it does

workbook_overview

Sheets, dimensions, formula counts, defined names, external links

list_formulas

Formulas with addresses and cached values, filterable (INDIRECT, VLOOKUP, ...)

trace_cell

One cell's formula, value, precedents, and dependents (direct + via ranges)

audit_workbook

Ranked risk report across the whole model

How it works

  • Reference tokenizer that understands real formulas: string literals are stripped first (the "A1" in INDIRECT("A1") is not a reference), function names can't collide (the G10 in LOG10(...) is not a cell), $ absolutes, quoted sheet names ('My Data'!A1), and ranges are handled.

  • Shared formulas are materialized. Excel stores filled formulas once with an offset scheme; the loader translates them per-cell (relative refs shifted, absolutes preserved), so dependency queries see what each cell actually computes.

  • Ranges are never expanded for storage — dependents queries use range-containment tests, and cycle detection caps range fan-out (a SUM(A:A) can't explode the graph; capped ranges are reported, not silently dropped).

  • No formula evaluation. Cached values from the file are shown instead — no spreadsheet engine dependency.

Known limitations: R1C1 notation and structured table references ([@Column]) are counted but not resolved into the graph.

Development

npm install
npm test                 # offline tests — synthetic workbooks built in-suite
npm run build            # tsc → dist/
node scripts/smoke.mjs   # end-to-end: generates a workbook, drives the server over stdio

Architecture: src/xlsx.ts (zip + XML → workbook model) and src/formulas.ts (tokenizer, graph, smells) are pure logic; src/index.ts is the MCP wiring.

License

MIT

Available Tools

4 tools
audit_workbookAudit the workbookA

Risk report across the whole model: circular references (with example chains), volatile functions (INDIRECT/OFFSET/NOW/RAND...), hardcoded constants inside formulas, external workbook links, merged cells, very long formulas.

Inputs: path (required).

list_formulasList formulasA

Formulas with addresses and cached values. Filter with contains (e.g. 'INDIRECT', 'VLOOKUP') and/or sheet.

Inputs: path (required), limit, sheet, contains.

trace_cellTrace a cellA

Audit one cell: its formula and cached value, precedents (cells and ranges it reads), and dependents (formulas that read it, directly or via a range). Address like 'Summary!B14'; unqualified addresses use the first sheet.

Inputs: cell (required), path (required), max_dependents.

workbook_overviewWorkbook overviewA

Structure of an .xlsx workbook: sheets with dimensions and formula counts, defined names, external workbook links, merged cells. The map you need before tracing or auditing.

Inputs: path (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.3/5.0

    Scored across 4 tools

    Disambiguation5/5

    Each tool targets a distinct audit aspect: structure, formula listing, single-cell tracing, and overall risk. No overlap or ambiguity, as even the two workbook-level tools (overview vs. audit) have clearly different outputs.

    Naming Consistency4/5

    Most tools follow verb_noun pattern (list_formulas, trace_cell, audit_workbook), but workbook_overview is noun_noun, breaking the pattern slightly. The style is otherwise consistent and readable.

    Tool Count5/5

    Four tools is ideal for an Excel audit server, covering the essential workflow without redundancy or bloat. Each tool has a clear, non-overlapping purpose.

    Completeness5/5

    The tool set covers the full audit lifecycle: structure overview, formula discovery, cell-level tracing with precedents/dependents, and a comprehensive risk report. There are no obvious missing operations for the stated domain.

    Maintenance

    ActivityMaintained
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      C
      quality
      C
      maintenance
      Enables conversational data analysis of Excel/CSV files through natural language queries, powered by 395 Excel functions via HyperFormula and multi-provider AI. Supports advanced analytics, bulk operations, financial modeling, and large file processing with intelligent chunking.
      35
      29 npm
      38
      MIT
    • A
      license
      A
      quality
      B
      maintenance
      50 tools and 400 functions for working with Excel/.xlsx spreadsheets — read/write, recalculate formulas, diff, repair broken references, and audit. Built for AI agents.
      50
      2,388 npm
      6
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables agents to synthesize multi-tab enterprise spreadsheet financial models, detect circular references, compile formula dependency DAGs with functions like SUMIFS/XLOOKUP/CAGR/NPV, and evaluate deterministic preview cell matrices.
      7
      MIT