Ledger

io.github.eternal-romanPublished by GitHub account eternal-romanv0.19.1Updated Oct 25, 2026

Exact-decimal double-entry for agents. Call MCP tools; do not do money math in tokens.

VerifiedSTDIODesktop onlyFinanceDeveloper Tools

Overview

AI-generated overview

A local stdio MCP server that gives an assistant exact-decimal double-entry bookkeeping tools so money math and ledger posting happen in code, not in tokens.

What you can do
Compute exact-decimal money arithmetic: add, subtract, multiply, divide, allocate, convert and compare amounts, and look up IFRS/GAAP citations from a graph. Validate and post journal entries, including guarded posting against locked periods, and create hard-close period locks. Read balances for one account or a trial balance across all accounts, verify the accounting equation, and generate closing entries and cash-flow statements. Produce audit hashes, verify determinism, replay runs with checkpoints, and build proof bundles. Handle FX translation with CTA, depreciation schedules, position reconciliation, FIFO/LIFO/HIFO lot relief and trade-date versus T+N settlement entries.
When to use it
Use it when an assistant needs to do bookkeeping or financial arithmetic where rounding errors and token-based math are unacceptable, such as posting entries, checking balances, closing periods or auditing a ledger. It suits deterministic, reproducible accounting workflows rather than general financial advice.
Requirements
Runs as a local process over stdio, started with npx from the npm package, so Node.js and network access for the package download are needed. No authentication, environment variables or headers are declared. Ledger data is passed in and out as JSON.
Before you install
It posts and locks accounting entries and creates period locks, which change ledger state, so review inputs before applying. It is deterministic tooling only and gives no financial, tax or compliance advice; you own the inputs, jurisdiction and compliance. Proof bundles require a hash that is session-issued or recomputable.

Installation

In SourceWeft

  1. Open Ledger in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

@eternal-roman/ledger-mcp

MCP adapter for @eternal-roman/ledger. The kernel does the math. This process exposes it over stdio.

Agents must not compute money in tokens. Call these tools instead.

Run

bash
npx -y @eternal-roman/ledger-mcp
json
{  "mcpServers": {    "ledger": {      "command": "npx",      "args": ["-y", "@eternal-roman/ledger-mcp"]    }  }}

Same shape in Cursor, Windsurf, and other stdio MCP hosts.

On start, read ledger://canon/rules, then ledger://canon/workflow. Catalog: ledger://tools/catalog.

Tools

ToolUse when
money_computeAny arithmetic (add/sub/mul/div/allocate/convert/compare)
entry_validateBefore posting
ledger_postValidate then apply; fail-closed
ledger_balanceOne account (pass currency if mixed)
ledger_trial_balanceEvery account
ledger_verify_equationAssets + Expenses = Liabilities + Equity + Income
ledger_audit_hashTamper-evident digest (ledger-audit-v2)
ledger_verify_determinismRebuild twice; byte-identical
trace_runReplay with per-step checkpoints
cite_lookupIFRS/GAAP from the graph
artifact_makeProof bundle; hash must be session-issued or recomputable
periods_create_lockCreate a hard-close lock
periods_guarded_postPost, rejected if the period is locked
closing_generate_entriesIncome/Expense → RE
fx_compute_translationReporting currency + CTA
depreciation_build_scheduleStraight-line or declining
cashflow_statementDirect method from cash accounts
reconcile_positionsLedger vs external snapshot
portfolio_reliefFIFO/LIFO/HIFO lots
settlement_build_entriesTrade date vs T+N

Stateless: ledger JSON in, ledger JSON out. Prompts: post_entry, audit_ledger, cite_treatment.

Not advice

Deterministic tools only. You own inputs, jurisdiction, and compliance. MIT LICENSE.

Source: mcp/README.md at commit c839c8f

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.19.1LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts