BalanceProof MCP server: SEC balance sheets for AI clients
A remote MCP server that gives an AI client SEC balance sheets and a way to check them against Assets = Liabilities + Equity. Paste the URL; there is nothing to install.
Connect it
BalanceProof runs a remote MCP server at https://balanceproof.dev/mcp. There is
nothing to install and no package to run: you give your client the URL.
claude mcp add --transport http balanceproof https://balanceproof.dev/mcp
That is Claude Code. Most other clients take the same two things in their connector settings, a URL and an optional headers map:
{
"mcpServers": {
"balanceproof": {
"type": "http",
"url": "https://balanceproof.dev/mcp"
}
}
}
Client settings differ and change; if yours names the fields differently, the URL is the part that matters.
With and without a key
With no key the server runs on a shared demo allowance, rate limited per
address, which is enough to try it. A free key raises that to
1,000 calls a month tied to your account rather than
to a machine. Send it as an Authorization: Bearer YOUR_KEY
header (the REST API uses X-API-Key instead). Each tool result
reports your current plan and remaining calls in its metadata. Get a key from
the dashboard, or ask the model to run
get_api_key and it will ask for your email address and your
agreement to the terms first.
claude mcp add --transport http balanceproof https://balanceproof.dev/mcp \
--header "Authorization: Bearer YOUR_KEY"
The tools
search_companies— find a ticker from a company name.get_balance_sheet— the latest filed balance sheet, line by line.get_api_key— create a free key from inside the chat, after asking for your email and your agreement to the terms.get_balance_sheet_history— past balance sheets, newest first.get_balance_sheet_changes— what moved since the previous period, and figures that differ between filings.get_financial_statements— income statement and cash flow; each period is checked when the filing reports the lines the check needs, otherwise not_testable.get_exceptions— filings that fail the check and figures that differ between filings, across every company.check_balance_sheet— does Assets = Liabilities + Equity hold on the filing, and if not, by how much and why.
A tool call counts as one call on your plan. Three need a paid plan:
get_balance_sheet_changes from Starter,
get_exceptions from Pro, and the
as_of argument of get_financial_statements from
Pro. History depth follows the plan, and the result says how far back
the data goes. The full table is on
what the free key includes.
A real tool result
This is what check_balance_sheet returns for
AAPL, produced by calling the tool function against the
database when this page was rendered. The first block is the text the model is
handed; the second is some of the structured data beside it.
Apple Inc. (AAPL) balances for the period ending 2026-06-27: assets equal liabilities plus equity within tolerance.
Total assets $383.27B ($383,266,000,000). Total liabilities $275.75B ($275,746,000,000). Shareholders' equity $107.52B ($107,520,000,000).
Not every component was reported: Goodwill
{
"ticker": "AAPL",
"period_end": "2026-06-27",
"balances": true,
"identity_basis": "as_filed",
"imbalance_pct": 0.0,
"total_assets": 383266000000.0,
"total_liabilities": 275746000000.0,
"total_equity": 107520000000.0
}
What to ask it
- “Does Apple’s latest balance sheet actually balance?”
— the model reaches for
check_balance_sheet. - “Show me Microsoft’s liabilities and equity.” —
get_balance_sheet, aftersearch_companiesif you gave a name instead of a ticker. - “How has JPMorgan’s balance sheet changed over the last
year?” —
get_balance_sheet_history.
What it is not
- As filed. Figures are what companies reported to the SEC, not adjusted or restated by this server.
- Filing data only. No prices, no estimates, no recommendations. It is not investment advice.
- The same data as the API. The REST balance sheet API and this server read the same database; use REST when you are writing code and MCP when you are talking to a model.