Next free-source huntWe check for new free data every weekday.
FinancialMCP serverFirst audited Nov 13, 2026

Tokenbooks - crypto and fiat accounting and payments

Crypto and fiat on one double-entry ledger: sync wallets, reconcile, cost basis, audit-ready close.The vendor's description, from its MCP Registry listing.

Passed public checksAudited Nov 13, 2026

Every public check ran and passed. Public audit: we connect as an AI client would, list the tools and check what they say. We do not run them. How we audit

Does it work?
YesConnected in 502 ms.
Sign-up?
None neededIt answered without any account or key.
Can it change things?
YesSome tools say they can change things. Your AI client should ask you first.
Endpointhttps://api.tokenbooks.io/mcp

Website Streamable HTTP · protocol 2025-11-25 · server version 0.1.1

What we checked, the evidence, and the tools it offers.

What we checked

Security

  • Passed: Connections are encrypted (HTTPS).

  • Passed: No hidden instructions found in tool text.

Safety labels

  • Note: 15 tools are labelled as able to change things.

    Expected for tools that send, write or buy. Your AI client should ask before calling them.

    • edit_accounting_rules
    • apply_accounting_rules
    • edit_transaction
    • import_adjustment_journals
    • incremental_sync
    • full_resync
    • confirm_transaction
    • reprocess_transaction
    • and 7 more
  • Passed: Every tool says whether it only reads or can change things.

Tools

  • Passed: 37 tools listed.

  • Passed: Every tool describes its inputs with a valid schema.

Protocol

  • Passed: The MCP handshake works (Streamable HTTP).

  • Passed: Protocol version 2025-11-25 (latest).

  • Passed: Unknown requests are refused.

Connection

  • Passed: The server responds.

Tools (37)

As the server describes them. The labels are the server's own: it says whether each tool only reads or can change things.

  • get_server_infoReview supported blockchains and fiat sources, accounting standards, plans, limits and tier features, signup, connection endpoint, authentication, and exclusions. No credentials needed; use before co…Read-only
  • get_accounting_referenceLook up valid accounting values—including operation types, transaction statuses, cost-basis methods, and lot event kinds—before classifying or filtering; use the returned exact values instead of gues…Read-only
  • list_workspacesList workspaces available to the authenticated Tokenbooks user, or search by name or slug.Read-only
  • list_portfoliosList portfolios available in a workspace, or search by name or slug.Read-only
  • get_portfolioRead one portfolio's settings and accounting policy by exact name or slug, including its financial reporting framework and legal entity type. If legalEntityType is omitted, it is unset.Read-only
  • get_portfolio_balancesCheck whether each wallet's computed token balances match its latest synchronized snapshot; returns per-wallet match status, token count, last transaction time, and an overall match flag.Read-only
  • list_accounting_rulesFind saved accounting rules, filter them, or recover the exact ruleRef needed to preview, edit, or delete one rule.Read-only
  • edit_accounting_rulesCreate, update, enable/disable, reorder, or delete saved accounting rules. Pass preview: true on any of those to see the impact without saving; use operation: current to preview the saved ruleset as…Can change things
  • apply_accounting_rulesRe-run the current saved rules and default assignments for vendors, people, or organizations (counterparty defaults) across eligible existing accounting transactions; this destructive bulk job ignore…Can change things
  • list_walletsList wallets in a portfolio with sync status and transaction counts. Pass chainId and walletAddress to check one wallet instead — safe codes/messages show whether to retry or reconnect credentials. E…Read-only
  • list_journal_line_assignment_optionsFind ledger accounts, saved counterparties, or responsibility centers (departments or projects) assignable to an accounting entry line.Read-only
  • edit_transactionCreate manual source transactions (signed wallet movements; duplicate hashes refused; accounting asynchronous), or change one accounting transaction: memo/tags/type, journal lines or unit fair market…Can change things
  • import_adjustment_journalsPreview or post a complete CSV or XLSX file of balanced manual adjustment journals for one portfolio. Preview first; post only after reviewing every blocking issue, then resend the unchanged source w…Can change things
  • get_sync_statusCheck sync health across every wallet in a portfolio. Current activity takes priority over each latest finished result; safe codes and messages tell you whether to retry or reconnect credentials.Read-only
  • incremental_syncPull only recent blockchain and wallet activity while keeping all existing transaction and accounting history; use this routine refresh before reports or when new activity is missing, then track its…Can change things
  • full_resyncDANGER: delete and rebuild the selected wallet transaction, journal, and cost-basis history from source data. Use only after the user explicitly requests this destructive reset and accepts the conseq…Can change things
  • list_portfolio_transactionsFind accounting transactions—called Portfolio Transactions in Tokenbooks—for review or reconciliation; filter by status, type, errors, spam, wallet, or asset, optionally attaching grouped contributin…Read-only
  • list_raw_transactionsFind compact source transactions first, called Raw Transactions in Tokenbooks, including unprocessed or partially linked activity. Pass rawTransactionId to show how one maps to wallet movements and a…Read-only
  • get_filter_optionsList the available values for one portfolio filter—such as accounts, wallets, assets, transaction status, or warnings—before building a filtered query.Read-only
  • get_portfolio_issue_summarySummarize accounting problems that need review with exact counts for uncategorized, errored, and spam-related transactions, plus examples of uncategorized and errored transactions.Read-only
  • confirm_transactionPost a proposed accounting transaction to the books; this queued action returns a requestId.Can change things
  • reprocess_transactionRecalculate one accounting transaction after correcting its inputs; this destructive queued job may regroup only its assigned wallet movements, and waitForCompletion can return the final state.Can change things
  • preview_transaction_classificationPreview how selected wallet movements would be grouped and labeled as accounting transactions. Returns every proposal in order and saves nothing.Read-only
  • merge_transactionsDestructively combine wallet movements from several accounting transactions into one target transaction and reclassify it; preview the grouping first, then track the queued requestId.Can change things
  • split_transactionsDestructively move selected whole existing operation handles unchanged out of one accounting transaction into a new classified transaction; use this only when the needed economic legs already exist a…Can change things
  • mark_token_spamMark or unmark a token as spam so unwanted dust or airdrops are excluded from accounting and existing records are updated; this queued action defaults to marking spam and returns a requestId.Can change things
  • simulate_fiat_quoteEstimate exchange rates, processing fees, amount received, and corridor limits for a bank payout before sending money; compare supported rails such as ACH, SEPA, EFT, FPS, IMPS, or SWIFT.Read-only
  • get_journal_entryRead every debit and credit line in one journal entry—the detailed accounting record—and trace each line to its cost-basis records and blockchain movements.Read-only
  • get_lot_ledgerTrace paginated cost-basis acquisition, disposal, transfer, and adjustment history across a portfolio, optionally narrowed by asset, wallet, event kind, accounting transaction, or date.Read-only
  • request_report_exportQueue a spreadsheet, PDF, or JSON accounting report—such as profit and loss, trial balance, balance sheet, journal, or transaction export—for a reporting period; track the returned requestId with get…Can change things
  • get_request_statusCheck the status of any queued background work — report generation, wallet sync, rule application, or a transaction change — using the requestId returned when it was queued; there is no separate repo…Read-only
  • add_walletAdd one or more blockchain addresses and start their first sync. Omit the blockchain connection identifier (integrationId) to add an EVM 0x address on every supported EVM network; other addresses req…Can change things
  • create_workspaceCreate a workspace when list_workspaces is empty or the user wants another; then create_portfolio. On failure, check list_workspaces before retrying.Can change things
  • create_portfolioCreate an accounting portfolio in an existing workspace, optionally choosing jurisdiction and policies; Canada and US profiles require matching currency, entity type, and timezone. If no jurisdiction…Can change things
  • get_asset_positionSummarize one cryptocurrency or token across every wallet with quantity, cost basis, market value, unrealized gain or loss, and portfolio totals. This covers wallet holdings, not all ledger accounts;…Read-only
  • list_chainsFind which blockchains support wallet syncing by name, Tokenbooks chain slug, or numeric EVM network ID; results identify EVM networks whose shared 0x address can be added together with add_wallet.Read-only
  • get_helpFind practical Tokenbooks instructions or accounting guidance. Pass query to search by topic (MCP workflow, cost basis, fair market value, gas fees, stablecoins, ...), or pass a slug from a previous…Read-only

Audit history

  1. Nov 13Passed

What we sent

Every request in this audit, with the answer and how long it took. We never send credentials and never call a tool.

RequestAnswerTime
initializeHTTP 200502 ms
initializedHTTP 202136 ms
tools/listHTTP 200740 ms
prompts/listHTTP 200160 ms
unknown-methodHTTP 400156 ms

Run this server, or disagree with the result?

Fix the issue and it shows in the next weekly audit, or email us to ask for a re-audit or to dispute a finding. Read how we audit for what each check means.