Skip to main content

finvariant-mcp

CI PyPI License: MIT

An MCP server that exposes finvariant, the deterministic financial-statement integrity checker for Python, as a tool for AI agents: hand it income statement, balance sheet and cash flow data and it verifies that the balance sheet balances, the cash flow ties to the balance sheet, subtotals foot, and the three statements articulate.

Agents asked to build, read or summarise financial statements tend to produce the numbers themselves: a balance sheet that does not balance, a cash flow that does not tie, a retained-earnings figure that does not roll forward. Generated financial statements fail silently. The check belongs in a deterministic, versioned, validated library that the agent calls; the agent chooses what to verify and explains the verdict.

Tools

Tool Purpose
check_statements Verify statements against the accounting invariants; return a verdict, the failing checks with expected vs actual, counts, provenance and a plain-language summary.
describe_schema The canonical field names by statement, the sign convention, and the invariants checked; call it first to format the input.

Both tools are read-only and return finvariant's JSON-safe payload, so a client can present and auto-run them safely.

Installation

Run it with uv (no install needed):

uvx finvariant-mcp

or install from PyPI:

pip install finvariant-mcp

Configuration

Add it to your MCP client. For example:

{
  "mcpServers": {
    "finvariant": {
      "command": "uvx",
      "args": ["finvariant-mcp"]
    }
  }
}

If you installed with pip, use "command": "finvariant-mcp" with no args.

Example

An agent verifying a model it just built:

describe_schema()
  -> the field names, sign convention and the four invariant groups

check_statements(
  periods=["FY2024"],
  balance_sheet={"FY2024": {
    "total_assets": 540, "total_liabilities": 158, "total_equity": 380
  }},
)
  -> { "ok": false,
       "verdict": "FAIL - statements do not tie out",
       "findings": [ { "rule_id": "EQ.accounting_equation",
                       "expected": 538, "actual": 540, "difference": 2 } ],
       "summary": "finvariant audit - ...\n  Verdict: FAIL ..." }

Design

The server is a thin, stateless wrapper. All accounting logic lives in the finvariant library, which computes the invariants from their definitions and is validated against the published statements of several real companies. The server adds the tool schema, read-only annotations and an input-schema helper so an agent can format the input and act on the result.

Related

License

MIT. Written and maintained by Atakan Arikan, MSc Student at Tsinghua University and Politecnico di Milano.

Release files for finvariant-mcp 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for finvariant-mcp 0.1.1
File Size Uploaded
finvariant_mcp-0.1.1.tar.gz 6.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for finvariant-mcp 0.1.1
File Interpreter ABI Platform
finvariant_mcp-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 13.8 kB

Release files / finvariant_mcp-0.1.1.tar.gz

Download URL finvariant_mcp-0.1.1.tar.gz
Size 6.6 kB
Tags Source
SHA-256 checksum
How to use checksums
a5e092e987ac3d8dac6a65b54ebbc21c015e8aa78e1337096446725a246e623b
BLAKE2b-256 checksum
How to use checksums
52ed149eab5ef1e12ff0848dfec69a70dc24435bfd17af853508af5dfa8c11d9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 15, 2026.

Transparency log

Release files / finvariant_mcp-0.1.1-py3-none-any.whl

Download URL finvariant_mcp-0.1.1-py3-none-any.whl
Size 7.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
badb9aea997e280fbb8be30c8d55790ad32aea104e3b322b623f44bc0564020a
BLAKE2b-256 checksum
How to use checksums
79eb70eabb51cdf169d731c81abce670486d0b275238115ceb1fe435c27762f1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 15, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page