Reconcile your crypto 1099-DA inside Claude — the only paid crypto-tax MCP that does it. Import CSVs from Coinbase, Kraken, Binance. Calculate cost basis (FIFO / LIFO / HIFO). Compare your actual gains against broker-reported 1099-DA forms via the compare_1099da tool. 10 tools, CPA-ready exports. Free: 50 txns / 1 exchange. Pro $19/mo: unlimited txns. Tax $49/mo: full 1099-DA reconciliation. Streamable HTTP, SHA-256 Bearer auth, open source (MIT).
How to pay
Subscribe
$19/month
Predictable monthly cost with included usage. Best for steady, high-volume traffic.
- Unlimited tools within plan limits
- One API key, billed once a month
- Cancel any time
💰 Crypto Tax MCP — Example Conversations
A walkthrough of common workflows, showing what you say, the tool Claude calls, and the plain-language reply you get back.
1. 📥 Import your Koinly export
You: (uploads koinly-2025.csv to Claude) "Import this — it's my Koinly export for 2025."
Claude calls:
import_transactions_csv({ source: "koinly", csv_data: "<base64>" })
Claude:
Imported 412 transactions from Koinly. Found 4 duplicates against your existing records (skipped). 3 warnings — Polygon transactions on lines 87, 142, and 301 have no fee specified; assuming $0. Ready to calculate cost basis.
2. ✍️ Add a single transaction by hand
You: "I earned 0.05 ETH from staking on June 1, 2025. Add it as income."
Claude calls:
add_manual_transaction({ type: "earn", coin_id: "ethereum", quantity: 0.05, date: "2025-06-01" })
// price_usd omitted → auto-fetched from CoinGecko historical
Claude:
Added: 0.05 ETH earned June 1, 2025. CoinGecko historical price for that day: $3,820, so FMV = $191. That becomes ordinary income on your 2025 return, and your cost basis going forward is $3,820/ETH.
3. 📊 Calculate gains with FIFO
You: "Run FIFO on all my 2025 sells."
Claude calls:
calculate_cost_basis({ transactions: [...all stored txs], method: "fifo", tax_year: 2025 })
Claude:
2025 FIFO results:
- Total realized gain: +$48,200
- Short-term: +$12,400 (taxed as ordinary income — ouch)
- Long-term: +$35,800 (capital gains rates)
- 87 sell transactions matched. Confidence: 96%.
⚠️ 2 missing-basis warnings — you sold 0.3 BTC from an exchange we don't have purchase records for. Want me to flag those for resolution?
4. 🔄 Should I use LIFO or HIFO instead?
You: "What method saves the most tax?"
Claude calls:
optimize_cost_basis_method({ transactions: [...], include_methods: ["fifo", "lifo", "hifo"] })
Claude:
HIFO saves you the most. Comparison at 37% short-term / 20% long-term rates:
Method Realized gain Tax owed FIFO $48,200 $11,750 LIFO $39,100 $9,400 HIFO $31,800 $8,090 Switching to HIFO saves you $3,660 on this year's return. Note: the IRS allows method choice but you must apply it consistently — talk to your CPA before switching mid-stream.
5. 🔍 Find tax-impact errors
You: "Are there any issues before I file?"
Claude calls:
detect_errors_and_explain({ transactions: [...all] })
Claude:
Found 1 error:
🚨 NEGATIVE_BALANCE: SOL on April 11, 2025 — you sold 18.4 SOL but the records only show 12.1 SOL in. You likely have a missing transfer-in from another exchange or wallet.
Fix: Import the missing 6.3 SOL purchase/transfer. Common sources: a CEX you forgot, a Phantom wallet, an airdrop, or a swap you didn't catalog. Once added, re-run calculate_cost_basis.
Confidence: 80% — bring this to 100% before filing.
6. 🧾 Reconcile against your 1099-DA ⭐ (Tax tier)
You: "Coinbase sent me a 1099-DA showing $52,000 proceeds and $0 basis for 2025. I think it's wrong. Can you check?"
Claude calls:
compare_1099da({ exchange: "Coinbase", year: 2025, reported_proceeds_usd: 52000, reported_basis_usd: 0 })
Claude:
Coinbase's 1099-DA reports $52,000 in proceeds with $0 basis — but 38 of your Coinbase sells were assets you originally bought on Kraken ($28,400 cost basis) and moved into Coinbase before selling.
Your real gain on Coinbase 2025 activity:
- Proceeds: $52,000 ✅ (matches 1099-DA)
- Real cost basis: $36,200 (Coinbase can't see the Kraken purchases)
- Real gain: $15,800 (not $52,000)
- Discrepancy: Coinbase will report $52K to the IRS as taxable gain. You owe tax on $15.8K.
Audit risk: Medium. The IRS will see the mismatch. File Form 8949 with Box C checked (basis not reported to IRS) and attach a brief reconciliation note. We can generate that report next.
💡 This is the full Tax-tier value prop in one tool call. Plain language. Defensible numbers. Audit-ready.
7. 📂 Browse what's stored
You: "Show me all my BTC sells in 2025."
Claude calls:
get_transactions({ year: 2025, type: "sell", coin_id: "bitcoin" })
Claude:
12 BTC sells in 2025 (total of stored: 412 transactions). Most recent first:
- 2025-12-18: −0.1 BTC @ $98,200 on Coinbase ($9,820 proceeds, fee $4.50)
- 2025-11-04: −0.05 BTC @ $76,800 on Kraken ($3,840 proceeds, fee $2.00)
- 2025-09-22: −0.2 BTC @ $58,400 on Coinbase ($11,680 proceeds, fee $5.80)
- … (showing 12 of 12; want to filter further?)
8. 📅 Year-end summary
You: "Quick 2025 realized gains summary."
Claude calls:
get_realized_gains({ year: 2025, method: "fifo" })
Claude:
2025 realized gains (FIFO):
- Total realized gain: $48,200
- Short-term: $12,400 (87 lots) — taxed at ordinary income rates
- Long-term: $35,800 (43 lots) — taxed at LTCG rates
By coin:
Coin Gain Lots BTC +$31,200 12 ETH +$8,400 28 SOL +$5,100 44 LINK +$2,800 18 DOGE +$700 28
9. 📤 Export Form 8949
You: "Give me a CSV my CPA can plug into TurboTax."
Claude calls:
generate_tax_report({ format: "csv", tax_year: 2025, include_audit_trail: true })
Claude:
Generated. The report has 130 line items (matching 130 sell lots). Top of file:
Coin, Buy Date, Sell Date, Quantity, Proceeds, Cost Basis, Gain/Loss, Holding Period bitcoin, 2023-09-12, 2025-03-04, 0.08, 5760.00, 2080.00, 3680.00, long-term bitcoin, 2023-09-12, 2025-04-15, 0.10, 7340.00, 2600.00, 4740.00, long-term ...Audit trail attached — each line shows which buy lot was matched to which sell, using FIFO. Drop into TurboTax or send to your CPA.
10. 🔁 Bring-your-own 1099-DA CSV
You: "I have the 1099-DA Kraken sent me as a CSV. Reconcile against my numbers."
Claude calls:
reconcile_with_1099da({ calculated_basis: <prev_result>, form_1099da_csv: "<base64>", tolerance_percent: 5 })
Claude:
Compared 23 reported lines against your calculated basis (5% tolerance):
- ✅ 19 matched within tolerance
- ⚠️ 3 mismatches — Kraken reports $0 basis where you have $1,400 / $3,200 / $890 (these were transferred in from Binance)
- 🚨 1 missing — Kraken reports a SOL sell you don't have. Did you delete a transaction by mistake?
Not ready to file until the missing tx is resolved. Want me to walk you through finding it?
