Skip to content
Financica logo

Financica MCP server

Which MCP servers are Financica's own, from the official registry and from asking its own domain, whether they answer, and what they offer. A program checked each of these, nobody copied them from a product page.

read 2026-10-10

← Back to Financica

Whose server it is
  • Addresshttps://financica.app/mcpnot in the official registry: answered when asked

No entry in the official MCP registry names this server. It answered on financica.app when the Atlas asked at the address servers are usually mounted on, so it is the vendor's own. Clients and catalogues that list servers from the registry do not show it.

When we asked itchecked 2026-10-27
  • Stateanswerschecked 2026-10-27
  • Tools66
  • Server calls itselffinancica
  • Server version1.0.0
  • Protocol version2025-06-18

On 2026-10-27 the server answered initialize and tools/list without a sign-in. First answer in 199 ms.

Should an agent connect itConnect it, with care
  • Its tools do every use case we checked: Auto-categorize bank transactions and read receipt PDFs; Prepare VAT returns and view cash runway in real time.

Once connected

  • For "Auto-categorize bank transactions and read receipt PDFs", the likely first call is search_transactions.
  • For "Prepare VAT returns and view cash runway in real time", the likely first call is generate_vat_return.
  • sheet_create, add_transaction_comment, add_invoice_comment, create_ledger_account, create_journal_entry change data without a sign-in: anyone with the address can call them.
  • Its definitions take about 18841 tokens of context: enable only the tools a task needs.

Said by rules from the measurements above. The likely first call is a model's pick from the tool list; read its description before relying on it.

Measured dailydaily checks: 8, the first on 2026-10-27
  • INITE MCP score73 of 100answers 88 · does the job 100 · definitions 100 · context 50 · connects 100 · lowered by the warning signs below
  • What an agent can do with it2 of 2 use cases
  • Answered100% of days8 of 8 daily checks
  • Median first answer2159 ms
  • Space in an agent's context≈ 18,841 tokensthe definitions of all its tools (66), which an agent carries on every turn
  • Tool definitionsA · 100 of 100
  • Typed results0 of 66 toolsdeclared outputSchema: results come typed, read once
  • Every tool passes all six checks.

What an agent can do with it

  • not sure · Send PEPPOL e-invoices without per-document fees
  • can do · Auto-categorize bank transactions and read receipt PDFs
  • can do · Prepare VAT returns and view cash runway in real time

Each of the product's use cases, put to Jev against this server's tool list: can an agent do it with these tools?

Worth a look

  • Tools that change data, on a server that answers without a sign-in: sheet_create, add_transaction_comment, add_invoice_comment, create_ledger_account, create_journal_entry

A program checks the server once a day: initialize and tools/list, no model. Tokens are the definitions' length at about four characters a token. The grade averages six checks of every tool's name, description, schema and annotations; it says how well the tools are described, not whether they work. The score weighs what was measured and nothing else: answering (25%), doing the product's job (25%), definitions (20%), context (10%), use (10%) and how readily a client connects (10%). A part that was not measured is left out, and a hidden instruction caps the score at 40. The state of vendors' MCP servers: method and numbers →

Tools it offers66 tools · read 2026-10-27
  • describe_schema

    The ai.* views available to `query`: each view's purpose and columns with types. Read once per conversation before writing SQL.

  • query

    Run one read-only SQL SELECT (Postgres) over the ai.* views and get the rows back. This is the primary way to read the books: filter, join, aggregate, window, and date math are all available. Call describe_schema first if unsure of the…

  • navigate

    Open a page of the Financica web app for the user. Use it when they ask where something is, or to show them the page behind an answer (the invoice you just discussed, the import page they need). Paths must match one of these patterns…

  • sheet_create

    Create a workbook, optionally seeded from CSV text or from a `query` SQL statement (its result becomes the first sheet, header row included). Returns the workbook id and its sketch. Seed from a query whenever the data is already in the…

  • sheet_open

    Open a workbook and return its sketch: every sheet, detected table regions, per-column types, value ranges and fill formulas. A compressed structural overview, usually enough to act on without viewing cells.

  • sheet_view

    Render part of a workbook under a token budget. Use only when the sketch left something ambiguous: small ranges come back as a dense grid showing formulas and computed values together.

  • sheet_exec

    Run a command script against a workbook and persist the result. Returns the recalc delta echo: exactly which cells changed, old to new, including formula ripple, so there is no need to re-read a range to learn what an edit did. A failing…

  • search_transactions

    Search for transactions. Returns a list of transactions matching the filters. Each transaction has legs (debit/credit lines) with amounts and accounts.

  • get_transaction

    Get full details of a single transaction by ID, including all legs, amounts, and linked accounts.

  • search_accounts

    Search the chart of accounts. Returns ledger accounts matching the query and/or type filter.

  • get_account_details

    Get full details of a single ledger account by ID, including balances.

  • search_invoices

    Search invoices (inbound expenses or outbound revenue) by counterparty, issue-date range, status and amount. Use it for questions scoped to a client or a period ('this customer's invoices this year', 'unpaid supplier bills over 1000')…

  • get_invoice

    Get full details of a single invoice by ID, including line items, payment status, counterparty info, and credit applications. The response includes `posting` — the legs of the journal entry this invoice posted to the books (account name…

  • get_invoice_audit_log

    Get the audit history (change log) for a single invoice: creation, field updates, line-item replacements and additions, voids, deletes, and payments, with who made each change and when. Use this whenever the user asks about an invoice's…

  • search_counterparties

    Search customers and suppliers (counterparties). Returns counterparties matching the query.

  • get_dashboard_summary

    Get a summary of the organization's financial dashboard: cash balance, income, expenses, net income, outstanding invoices, aging data, and uncategorized transaction count.

  • get_transaction_comments

    Get all comments on a transaction.

  • get_invoice_comments

    Get all comments on an invoice.

  • get_transaction_attachments

    Get all file attachments on a transaction. Returns filenames, types, and URLs.

  • read_document_text

    Extract and read text content from a PDF document attachment. Use this to understand what an invoice or receipt says.

  • share_document

    Attach a stored document (an invoice PDF, a receipt, a bank statement, any file) to your reply so the user can open or download it. Use it whenever the user asks to see, get, download, or send a document you found.

  • lookup_documentation

    Search Financica help documentation to answer user questions about how the app works, features, workflows, and best practices. Returns matching help article content.

  • search_ledger_entries

    Search transaction legs (ledger entries) directly. Useful for tracing postings by source, metadata, or account. Returns legs with their parent transaction details and linked accounts.

  • aggregate_ledger_entries

    Sum ledger movements grouped by period, account, role and/or counterparty. Use this instead of search_ledger_entries whenever the question is about totals rather than individual postings — 'VAT collected per quarter', 'spend per…

  • list_system_accounts

    List the accounts the posting engine owns for this organization — control accounts (receivables, payables, the VAT sub-ledgers), clearing accounts (money in transit, currency exchange), and the uncategorized holding accounts — with what…

  • generate_income_statement

    Generate an income statement (P&L / profit and loss) showing revenue and expense accounts with their balances for the current period.

  • generate_balance_sheet

    Generate a balance sheet showing assets, liabilities, and equity as of a specific date.

  • generate_trial_balance

    Generate a trial balance showing all account debit and credit balances. Useful for verifying the books are balanced.

  • generate_vat_return

    Generate a VAT return summary showing VAT on sales, VAT on purchases, and net VAT position for a date range. Useful for preparing quarterly or monthly VAT filings.

  • generate_report_pdf

    Generate a downloadable PDF of a financial report (balance sheet, income statement, or trial balance) in the requested language, and return a link to it. Use this when the user asks for a report 'as a PDF', 'to download', 'to print', or…

  • generate_invoice_pdf

    Render one of the organization's own sales invoices or credit notes (direction outbound) as a PDF and attach it to your reply. Use it when the user asks for an invoice 'as a PDF', 'to download', or 'to send'. A draft renders with the…

  • get_cash_position

    Get the current cash position across all bank accounts, broken down by currency. Also shows monthly burn rate and runway estimate.

  • get_invoice_aging

    Aged receivables and payables: open (unpaid or partially paid) invoices bucketed by how overdue they are (Current, 1-30, 31-60, 61-90, 90+ days), per currency, with overdue and outstanding totals. Use this for 'who owes me money and how…

  • get_expense_breakdown

    Break down expenses by account for the fiscal year to a date, largest first, each with its share of total expenses. Answers 'where is my money going?' and 'what am I spending the most on?'. Signs and account names match the income…

  • compare_periods

    Compare the profit & loss at two dates (fiscal-year-to-date each): revenue, expenses, and net income with the delta and percentage change per currency. Defaults to this year vs the same date last year. Answers 'how is this year tracking…

  • check_books_health

    Close-readiness scorecard for the current books: whether the ledger is balanced (debits = credits), how many transactions are still uncategorized, and how much is overdue on both sides. Use this for 'are my books ready to close?' or a…

  • check_invoice_postings

    Compare invoice records against the journal entries they claim to have posted, and report the ones that disagree. Finds invoices that were never posted, whose posted entry carries no expense/income content, whose VAT is missing from the…

  • check_year_end_close

    Year-end close checklist for a fiscal year: whether the year has ended at all, uncategorized balances, balance sheet accounts with no statutory rubric, off balance residue, unposted invoices, a missing corporate income tax accrual, a…

  • find_duplicate_invoices

    Scan recent invoices for likely duplicates — the same bill entered or imported twice. Flags (a) same direction + counterparty + amount within 30 days, and (b) a repeated invoice number. Use this to catch double-booked or double-paid…

  • get_cash_flow_history

    Monthly cash-flow history across all bank accounts: per currency, an opening balance, then each month's inflow, outflow, net, and end-of-month balance, plus a runway projection (average net of the last three full months extrapolated to…

  • get_account_statement

    Account statement: one ledger account's movements over a date range, with the opening balance, a per-line running balance, and closing balances per currency. The classic drill-down to tie out a balance-sheet line or explain how an account…

  • get_missing_receipts

    Find missing paperwork before a close or tax filing: inbound (supplier) invoices with no attached document, and posted expense transactions with no attachment, linked document, or matched invoice. Filter by minimum amount and date range…

  • describe_entities

    Catalog of additional record types readable via list_records / get_record: each entity's description, supported filters, and whether get_record works for it. Call this before using list_records on an unfamiliar entity. Transactions…

  • list_records

    List records of a product entity (documents, members, integrations, audit log, ...) with common filters. Use describe_entities to see which filters each entity supports. Returns a page of curated records with public ids.

  • get_record

    Get one record by id for entities that support it (see describe_entities). Accepts the public id from list_records output.

  • check_peppol_reachability

    Check whether a company can receive e-invoices over the Peppol network, via a public SML/SMP lookup. Answers 'can I e-invoice this customer?' before you try to send. Works for any company, not just ones already in the books.

  • find_unreconciled_transactions

    Find bank-imported transactions that have not been reconciled (matched) to any invoice. These are transactions from bank feeds/imports that need to be matched to invoices or categorized.

  • find_reconciliation_matches

    Automatically find matching unpaid invoices for unreconciled bank transactions. Scores matches by amount, counterparty name, invoice number, and date proximity. Returns proposed matches ranked by confidence. Use this to help users…

  • add_transaction_comment

    Leave a note on a transaction (a comment visible in the app's transaction thread). Useful for recording context, a question, or a decision. Non-destructive.

  • add_invoice_comment

    Leave a note on an invoice (a comment visible in the app's invoice thread). Useful for recording context, a question, or a decision. Non-destructive.

  • create_ledger_account

    Create a new account in the chart of accounts. Use search_accounts first to check that no suitable account already exists. Always confirm the name and type with the user before calling.

  • create_journal_entry

    Create a manual double-entry journal entry. The legs must balance: the sum of all amounts must be zero (positive = debit, negative = credit). Use search_accounts to find account IDs. The call itself pauses for the user's approval, so…

  • update_transaction

    Edit the header of an existing transaction: its description, reference or date. Legs and amounts are not touched; to change those, reverse and repost. A null field is left as is. Refused for entries whose date is owned by an invoice or a…

  • categorize_transaction

    Run AI auto-categorization on a transaction. Returns suggested account categorizations with confidence scores. The user should review and approve before applying.

  • bulk_categorize_transactions

    Run AI auto-categorization on multiple transactions at once. Returns suggested categorizations for each.

  • apply_categorization

    Apply categorization suggestions to transactions: replace each transaction's open counterpart legs with the given category lines (existing account by acct_… id, or create_account for a new one). Echo back the lines from…

  • create_invoice

    Create a new invoice from scratch with line items: an outbound sales invoice (money owed to you) or an inbound bill (money you owe). Per-line tax and the subtotal/tax/total are computed automatically from the line items. Use…

  • apply_credit_note_to_invoice

    Apply a credit note (negative invoice) to an invoice, reducing the invoice's balance due. The credit note and invoice must be in the same currency. Always confirm the amounts with the user before calling.

  • update_invoice

    Update fields on an invoice. Only works on editable invoices (not locked Stripe invoices, not sent/approved/posted outbound invoices). Always confirm changes with the user before calling. Fields not provided are left unchanged.

  • replace_invoice_line_items

    Replace ALL line items on an invoice: this removes every existing line item and substitutes the provided ones. Use this only when the user wants to overwrite the whole set. To keep the current line items and tack on more, use…

The first 60 of 66, as the server listed them.

How to connect

Add the server to your MCP client config. Claude Desktop, Cursor and most other clients read this shape:

{
  "mcpServers": {
    "financica": {
      "type": "http",
      "url": "https://financica.app/mcp"
    }
  }
}

Add it

Claude Code, in a terminal

claude mcp add --transport http financica https://financica.app/mcp

Add to CursorAdd to VS Code

claude.ai, ChatGPT and other clients: add https://financica.app/mcp as a custom connector in the settings.

Each line is something a program found when it went looking: the registry entry, the server's own answer, a spec that parses. A missing line means we did not find it, not that it does not exist.