Moltline TaxLots
Crypto cost-basis lots (FIFO/LIFO/HIFO/specific-ID), Form 8949 rows, 1099-DA diff. 5 of 8 free.
| Endpoint | https://mcp.moltlinestudio.com/taxlots (streamable-http) |
|---|---|
| Registry version | 1.2.0 |
| Now | 8 tools · grade D (53) · pin ts_aac8d14018fe9d181d635d5a24696ae3 · protocol 2025-06-18 |
| First / last listed | 2026-10-25 04:45 UTC / 2026-10-25 04:45 UTC |
| Grade over time | 2026-10-25: D (53), 8 tools |
Is this your server? Own a server? ToolFit hosted watch re-checks it every 24 h ($0.25 per 30 days) or 6 h ($0.60) and sends you an HMAC-signed webhook when its tools or grade change: POST https://api.youraitools.co/toolfit/v1/watch. To opt out, see About & opt-out.
Tools: parse_transactions ledger_lint match_transfers build_lots form_8949_rows reconcile_1099da wash_window_check lp_position_math
parse_transactions | Normalise an exchange CSV export into the canonical ledger rows. FREE.
Supports the Coinbase transaction-history export (Transaction Type /
Asset / Quantity Transacted columns), the Kraken ledgers export (txid /
refid / type / asset / amount / fee) and a generic CSV with the canonical
columns ts, type, asset, qty, fiat_value, fee_qty, fee_asset, fee_fiat,
counter_asset, counter_qty, account, id. params: csv_text*, source_hint, account |
ledger_lint | Find the problems that break a lot build: missing values, duplicates, negative balances. FREE.
Typical input {"ledger": <rows from parse_transactions>} returns
{"issues": [{"severity": "error", "row": "cb12", "issue": "sell of 0.5
BTC exceeds balance 0.2 in account coinbase"}], "balances": {"coinbase":
{"BTC": "0.2"}}, "counts": {...}}. Balances are running quantities per
account and asset in tim params: ledger* |
match_transfers | Pair withdrawals with the deposits that received them between your own accounts. FREE.
Typical input {"ledger": <rows>, "window_minutes": 1440} returns
{"pairs": [{"out": "kr91", "in": "cb14", "asset": "BTC", "from":
"kraken", "to": "coinbase", "network_fee": "0.0001", "minutes": 42.0}],
"unmatched": {"transfer_out": [...], "transfer_in": [...]}}. A pair needs
the same asset, a different account, params: ledger*, window_minutes, tolerance_pct |
build_lots | Build the lot inventory per account and every disposal with basis, gain and holding period. PREMIUM (license).
Methods: fifo (the default rule when no specific identification is made,
Treas. Reg. 1.1012-1(j)), lifo, hifo, or specific_id via a row's
specific_lots {lot_id: qty}. Typical input {"ledger": <rows>, "method":
"hifo", "transfers": <pairs from match_transfers>} returns {"disposals":
[{"ro params: ledger*, method, transfers, on_missing_lots, transfer_fee_policy, tax_year |
form_8949_rows | Lay the disposals out as Form 8949 rows with box categories and totals. PREMIUM (license).
Typical input {"disposals": <from build_lots>, "tax_year": 2026,
"default_reporting": "proceeds_only"} returns {"part_i": {"B": [rows]},
"part_ii": {"E": [rows]}, "totals": {...}}. Columns follow the form:
description (a), date acquired (b), date sold (c), proceeds (d), cost or
other basis (e), code (f), ad params: disposals*, tax_year*, reporting, default_reporting, whole_dollars |
reconcile_1099da | Diff the broker's 1099-DA lines against the computed disposals. PREMIUM (license).
Typical input {"disposals": <from build_lots>, "form_rows": [{"asset":
"BTC", "date_sold": "2026-03-04", "qty": "0.5", "proceeds": "31000",
"basis": "", "account": "coinbase"}]} returns {"matched": [...],
"broker_missing_basis": [...], "basis_mismatch": [...],
"proceeds_mismatch": [...], "unmatched_form_rows": [... params: disposals*, form_rows*, qty_tolerance_pct, money_tolerance |
wash_window_check | Flag loss disposals with a repurchase of the same asset inside the window. FREE.
Typical input {"disposals": <from build_lots>, "acquisitions":
[{"asset": "ETH", "ts": "2026-02-10T10:00:00Z", "qty": "2"}]} returns
{"flags": [{"row": "cb7", "asset": "ETH", "loss": "-410.00",
"repurchases": [...]}], "rule_status": "..."}. The 30-day window before
and after the sale is the one IRC 1091 uses for stoc params: disposals*, acquisitions*, window_days |
lp_position_math | Impermanent loss, hold-vs-pool value and basis split for a two-asset constant-product pool. FREE.
Typical input {"deposit": {"asset_a": "ETH", "qty_a": "1", "price_a":
"2000", "asset_b": "USDC", "qty_b": "2000", "price_b": "1"},
"current_prices": {"ETH": "3000", "USDC": "1"}} returns {"il_pct":
"-2.02", "hold_value": "5000.00", "pool_value": "4898.98",
"deposit_value": "4000.00", "basis_split": { params: deposit*, current_prices*, fees_earned_fiat |
Entries describe changes in tool definitions. They are not statements about a server, its quality or its author. The grade measures how the tool definitions fit model providers (token cost, schema compatibility, confusable names) as scored by the ToolFit engine at the time of the listing. JSON: append .json. Opt-out: how or hello@youraitools.co.