AINumbers.co Crypto Tax API

The crypto-tax API from AINumbers.co — 1 operation(s) for crypto-tax.

Operations 1

POST /v1/tools/crypto_cost_basis_gain_calculator Crypto Cost Basis & Gain Calculator #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/ainumbers-co:ainumbers-co-crypto-tax-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

ainumbers-co-crypto-tax-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: AINumbers.co Fintech Intelligence Suite Crypto Tax API
  version: 1.0.0
  description: '**1255 fintech intelligence tools** covering ISO 20022, A2A payments, CFPB §1033, EU AI Act, DORA, MiCA, AML/KYC, BaaS, DLT/tokenization, ESG/climate finance, agentic payments (AP2, ACP, x402, Visa TAP, Mastercard Agent Pay), PQC migration, sanctions screening, and OpenChainGraph v0.4 computation chains.


    ## Transport


    > **The live transport is MCP JSON-RPC 2.0 at `https://mcp.ainumbers.co/mcp` — not REST.**

    >

    > This OpenAPI file is a **descriptive data-room artifact** — a machine-readable index of all tools and their input/output schemas. The REST paths (`POST /v1/tools/{name}`) described here are a projection; they become functional only if the optional REST shim (Area 2 Path B) is deployed.

    >

    > To call tools today, connect via the official MCP client SDKs. TypeScript: `@modelcontextprotocol/sdk`. Python: `mcp`.


    ## Architecture


    All tools run **entirely client-side** (browser JavaScript). Zero PII. Zero server calls after page load. Deterministic, reproducible outputs. Licensed CC BY 4.0.


    OpenChainGraph v0.4 compute-binding nodes additionally run **server-side on the MCP Worker** and emit verifiable artifacts with `execution_hash` (WebCrypto SHA-256 over RFC 8785 canonical JSON).'
  contact:
    name: Post Oak Labs
    url: https://postoaklabs.com
    email: tim@postoaklabs.com
  license:
    name: CC BY 4.0
    url: https://creativecommons.org/licenses/by/4.0/
servers:
- url: https://ainumbers.co
  description: Static browser-based tool host (DreamHost). Tools run client-side — no REST gateway is active on this origin. See x-mcp for the live MCP endpoint.
tags:
- name: crypto-tax
paths:
  /v1/tools/crypto_cost_basis_gain_calculator:
    post:
      operationId: crypto_cost_basis_gain_calculator
      summary: Crypto Cost Basis & Gain Calculator
      description: 'Compute cost basis and realized gain/loss per disposal using FIFO, LIFO, HIFO, or specific-identification lot matching. Short/long-term split at 12-month threshold (IRC §1222). Per-wallet basis tracking as required for US taxpayers from 2025 (IRS Rev. Proc. 2024-28). Feeds IRS Form 1099-DA and CARF/DAC8 basis reporting. Tier 1 Policy Mandate + Tier 2 gain/loss schedule CSV. Client-side. Works offline. Zero PII.


        **Tool URL:** https://ainumbers.co/tools/466-crypto-cost-basis-gain-calculator.html

        **AP2/Policy Mandate export:** yes'
      tags:
      - crypto-tax
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                method:
                  type: string
                  enum:
                  - FIFO
                  - LIFO
                  - HIFO
                  - spec_id
                  description: 'Lot-matching method: FIFO=first-in-first-out; LIFO=last-in; HIFO=highest-cost-first; spec_id=taxpayer designates each lot'
                wallet_by_wallet:
                  type: boolean
                  description: Restrict lot matching to same wallet (required for US from 2025)
                lots:
                  type: array
                  items:
                    type: object
                    properties:
                      lot_id:
                        type: string
                      asset:
                        type: string
                      wallet:
                        type: string
                      date_acquired:
                        type: string
                        description: YYYY-MM-DD
                      qty:
                        type: number
                      cost_usd:
                        type: number
                  description: Acquisition lots
                disposals:
                  type: array
                  items:
                    type: object
                    properties:
                      disposal_id:
                        type: string
                      asset:
                        type: string
                      wallet:
                        type: string
                      date_disposed:
                        type: string
                        description: YYYY-MM-DD
                      qty:
                        type: number
                      proceeds_usd:
                        type: number
                      spec_lot_id:
                        type: string
                        description: Required for spec_id method
                  description: Disposals to match
              required:
              - method
              - lots
              - disposals
      responses:
        '200':
          description: Successful tool execution result
          content:
            application/json:
              schema:
                type: object
                properties:
                  total_proceeds_usd:
                    type: number
                  total_basis_usd:
                    type: number
                  net_gain_loss_usd:
                    type: number
                  short_term_gain_loss_usd:
                    type: number
                  long_term_gain_loss_usd:
                    type: number
                  gain_loss_schedule:
                    type: array
                    items:
                      type: object
                      properties:
                        disposal_id:
                          type: string
                        proceeds_usd:
                          type: number
                        basis_usd:
                          type: number
                        gain_loss_usd:
                          type: number
                        term:
                          type: string
                          enum:
                          - short
                          - long
                          - unknown
                        date_acquired:
                          type: string
                        date_disposed:
                          type: string
      x-mcp-tool-name: crypto_cost_basis_gain_calculator
      x-tool-url: https://ainumbers.co/tools/466-crypto-cost-basis-gain-calculator.html
      x-source: manifest
      x-ap2-export: true
x-mcp:
  transport: MCP JSON-RPC 2.0 (streamable HTTP)
  endpoint: https://mcp.ainumbers.co/mcp
  protocol_version: '2025-11-25'
  authentication: none
  registry: co.ainumbers/tools (official MCP registry)
  note: Connect any MCP-compatible client (Claude, ChatGPT, custom agent) directly to this endpoint. The REST paths in this file are descriptive only — they do not exist on the live server unless the REST shim is deployed.