Three Things Shipped
The TaxFormatter MCP server is now live in the Official MCP Registry. It's also live on Smithery and Glama, with a pull request open against punkpeye/awesome-mcp-servers.
While distribution was getting sorted, two more things shipped:
- Tiered AI Insights on the dashboard — when you upload a file at taxformatter.com/dashboard, the parsed result now comes with a model-scaled analysis (Gemini for Free/Starter, Claude Sonnet 4.6 for Growth, Claude Opus 4.7 for Business).
- One pricing, two surfaces — collapsed two parallel pricing tables into one. Same quota, same plan, whether you drop a file in the dashboard or call
/v1/parse.
This post covers all three. If you only care about agent-side distribution, the MCP section is the relevant part. If you're a dashboard user, skip to AI Insights.
TaxFormatter Is Now a One-Line Install for Any AI Agent
If you're shipping an AI assistant that touches accounting, bookkeeping, or tax workflows, your agent probably has a "I can't reliably parse this CSV" problem. LLMs hallucinate transaction amounts when they try to read tabular data directly, especially across the dozen-plus formats in the wild from Coinbase, Binance, Kraken, Chase, Mercury, etc.
The MCP server fixes this. Three deterministic tools (parse_crypto_csv, parse_bank_statement, list_supported_sources), backed by the same parsing engine that powers the API, now installable in any MCP-compatible client:
npx -y @taxformatter/mcp-server
Configure once in your client's MCP settings, set TAXFORMATTER_API_KEY, and your agent gets verified structured data instead of a best-guess parse:
{
"mcpServers": {
"taxformatter": {
"command": "npx",
"args": ["-y", "@taxformatter/mcp-server"],
"env": {
"TAXFORMATTER_API_KEY": "tf_live_your_key_here"
}
}
}
}
Works in Claude Code, Cursor, Windsurf, and any other client that speaks the Model Context Protocol. Smithery also serves a hosted endpoint at https://taxformatter--sean-bavo.run.tools for clients that can't run npx.
For the deep dive on how the MCP server itself works — tool schemas, agent conversation patterns, edge cases — see the original MCP server post. This post focuses on what's new.
Tiered AI Insights on the Dashboard
When you upload a file in the dashboard, the parsed result now ships with an AI-written analysis alongside the cleaned transactions. The model used scales with your subscription tier.
| Tier | Model | What you get |
|---|---|---|
| Free / Starter | Gemini 2.5 Flash | Fast summary covering totals, transaction-type breakdown, top assets, date range, taxable-event estimate, and data notes |
| Growth | Claude Sonnet 4.6 | Same coverage, with deeper reasoning on tax-relevant patterns and edge cases worth manual review |
| Business | Claude Opus 4.7 | Same coverage with the highest-quality reasoning Anthropic offers today — sharper on data anomalies and tax implications |
The output structure is identical across tiers — what changes is how carefully each model thinks about your data. Gemini Flash is fast and cheap and produces solid summaries on a small import. When there's real money involved, Sonnet and Opus pick up patterns Gemini misses (wash-sale-shaped activity, missing cost basis, suspicious gaps in date coverage, that kind of thing).
The deterministic stats (totals, transaction counts, date ranges) always render regardless of tier — those are computed in Python, not AI. The AI layer runs on top and degrades gracefully: if the model call fails, you still get the deterministic stats with an ai_error field explaining why.
Heads up — dashboard only today. AI insights are generated in the post-upload pipeline, which currently only runs for files dropped in the dashboard. The direct /v1/parse API call returns just the parsed transactions. Bringing insight generation into the API path is on the roadmap; if that gates an integration you're building, tell us and we'll prioritize it.
One Plan, Two Surfaces
For a while we ran two pricing systems in parallel — a "dashboard" tier (Free / Pro / Premium) and a "developer" tier (Free / Starter / Growth / Business). The dashboard set was brochure-only — there was no way to actually buy it. We finally killed that split.
Now there's one set of tiers, and your subscription works the same on both surfaces:
| Tier | Price | Files / month | Requests / minute | Dashboard AI Insights | Notable |
|---|---|---|---|---|---|
| Free | $0 | 25 | 10 | Gemini 2.5 Flash | All 14 exchanges, no credit card |
| Starter | $29 / mo | 100 | 30 | Gemini 2.5 Flash | Solo work and side projects |
| Growth | $99 / mo | 500 | 60 | Claude Sonnet 4.6 | Bank PDF parsing unlocked |
| Business | $249 / mo | 2,000 | 120 | Claude Opus 4.7 | High-volume + Premium insights |
Every paid tier has two upgrade reasons: more volume and a capability bump (Bank PDFs at Growth, best-in-class AI at Business). One Stripe checkout, one billing record, one surface to manage your subscription.
If you've been using the dashboard against a Free API key auto-provisioned at signup — nothing changes. If you've been using the API directly — nothing changes. The simplification is mostly behind the scenes; what's visible is that the pricing page now reads "One plan, two ways to use it. Drop a file in the dashboard or call our API."
What an Agent Conversation Looks Like
Concretely, here's what an AI agent does with the MCP server installed:
User: I have a Coinbase export from 2024 — can you tell me how many sells I had in Q4 and what assets they were?
Agent: [calls
parse_crypto_csvwith the file path]Your Coinbase export contains 247 transactions from January 12 through December 28, 2024. In Q4 specifically, you had 23 sell transactions: 14 BTC, 6 ETH, and 3 SOL, totaling roughly $12,450 in gross proceeds. Want me to filter for any specific asset or date range, or summarize the gain/loss profile based on Coinbase's reported cost basis?
The agent never touches the raw CSV. It receives clean, typed transaction objects from the parser and reasons about them in conversation. The same pattern works for parse_bank_statement against PDFs — Chase, Mercury, BoA, +10 more — with OCR, multi-page extraction, and date normalization handled by the engine instead of the model.
For a deeper dive on tool schemas, agent integration patterns, and the parsing engine's reliability story, see the original MCP server post.
Get Started
- Sign up at taxformatter.com — every account gets a Free API key auto-provisioned (25 files/month, no credit card).
- Install the MCP server:
npm install -g @taxformatter/mcp-server - Configure your client — drop the JSON snippet above into your MCP settings with your API key.
- Test it — ask your agent to parse a sample CSV.
If you'd rather try the dashboard surface to see the AI insights, sign up and upload any Coinbase / Kraken / Chase / Mercury / etc. file. The parsed result + insight panel render together on the job detail page.
Full API reference at taxformatter.com/docs/api. Package docs on npm.
Building an agent integration on top of TaxFormatter? We'd love to hear about it — reach out at support@taxformatter.com.