For PMs, credit & short-side analysts
Pro tierCatch the red flag before it tanks a position
Run the forensic audit, read which inputs drove it, and check whether a later filing changed the figures you relied on.
Forensic accounting checks — accrual quality, distress scores, revenue-recognition stress — across your whole universe.
The pain
The blowups that hurt most are the ones hiding in the footnotes — aggressive revenue recognition, ballooning accruals, covenant stress. Reading every 10-K line by line across a book doesn't scale.
“The blowups I regret were all in the footnotes.”
Aggressive revenue recognition and growing accruals hide in the notes, not the headline.
“I cannot read every 10-K across my book.”
Line-by-line reading does not scale past a handful of names.
“The number I used was quietly changed in a later filing.”
Without a restatement trail you find out when the position already hurts.
The solution
- 1
Score the accounting quality
forensic_audit computes the Beneish M-Score, Altman Z′, and Piotroski-F composite from the standardized statements — a fast distress + manipulation read on any name.
- 2
Decompose the suspicious line
get_company_fundamentals + get_capital_allocation_profile expose the accruals, leverage trend, and cash-vs-earnings gap behind the score — so you know why it flagged.
- 3
Trust, then verify
verify_fact_lineage links every input back to the filing it came from, so a short thesis is defensible to your IC and your risk desk.
Copy this
Real code and a ready prompt. Each block says what it needs before it runs.
APython SDK
No token needed: runs on the free sample
from valuein_sdk import ValueinClient with ValueinClient() as client: # no key: the free sample # Figures a later filing changed, with how each change was disclosed. changed = client.restatements(ticker="AAPL", limit=5) print(changed[["standard_concept", "period_end", "first_value", "current_value", "disclosure_class"]]) # The filings those figures came from. print(client.filing_links("AAPL", form_types=["10-K"], limit=3))Restatement Radar is open on every plan, including the free sample.
pip install valuein-sdk
BPrompt for Claude or ChatGPT
Works without a token on the free sample; your token unlocks your plan
Run forensic_audit on this company. Then use get_capital_allocation_profile to show what sits behind any flag, and verify_fact_lineage on the three figures that matter most. Report each flag with its filing; do not give a score of your own.Tools it uses: forensic_audit, get_capital_allocation_profile, verify_fact_lineage
CConnect your AI client
No token? Delete the headers block and it runs on the free sample
{ "mcpServers": { "valuein": { "url": "https://mcp.valuein.biz/mcp", "headers": { "Authorization": "Bearer YOUR_VALUEIN_TOKEN" } } }}What you get
You size down or short the deterioration before it's in the price — and you can show exactly which filing lines triggered the call.
- A fast read on accounting quality with the inputs that triggered it, not a black-box score.
- A restatement trail that shows whether a figure was changed and how it was disclosed.
- Filing links you can hand to your IC and your risk desk.
Related use cases
Frequently asked
Which forensic models are included?
Beneish M-Score (manipulation), Altman Z′ (distress), and a Piotroski-F composite (quality), computed from the standardized fact table — plus accruals-anomaly and ghost-company SDK templates.
Can I run this across my whole watchlist at once?
Yes — pair forensic_audit with screen_universe to rank the book by distress, or schedule it as an agent that flags new deterioration daily.
Try it on your own ticker.
The free sample needs no token and no card. One token works across your AI agent, your code and the Workspace.