Skip to content

Developers

Invoflux for developers and AI agents

Invoflux exposes one programmatic surface: a Model Context Protocol server that reads and acts on a single Invoflux workspace. Point an MCP client at it and an agent can answer questions about a business's invoices, bank transactions, suppliers, spending and reconciliation, on that user's behalf.

There is no public REST API today, and Invoflux issues no static API keys. Every call is authorized by a person through OAuth. If you need something this page does not cover, write to [email protected].

MCP server

Server URL
https://mcp.invoflux.com/mcp
Transport
Streamable HTTP
Authorization
OAuth 2.1, authorization code with PKCE (S256), dynamic client registration, refresh tokens
Tools
33 (28 read-only, 5 that write)

Add it to Claude Code

claude mcp add --transport http invoflux https://mcp.invoflux.com/mcp

Any MCP client that speaks OAuth will discover the rest on its own. The server answers an unauthenticated request with a 401 carrying a WWW-Authenticate header that points at its RFC 9728 protected-resource metadata.

Authentication

A token is bound to one Invoflux user and reaches exactly the companies that user could already reach. There is no machine-only grant, because there is no data here that is not somebody's.

Metadata endpoints

  • https://mcp.invoflux.com/.well-known/oauth-protected-resource
  • https://mcp.invoflux.com/.well-known/oauth-authorization-server

Read the endpoints from these documents rather than hardcoding them.

Full walkthrough

Discovery, dynamic client registration, claiming a token, using it, the error table, and revocation. Written for an agent to follow.

Read /auth.md

Tool reference

All 33 tools, as the server reports them. Tools marked replaces data overwrite an existing value, so confirm with the user before calling them.

Companies

ToolWhat it doesAccess
companies_listList every company this connection can access, with the user's role. Call this first when the user has multiple companies and you need to know which ids exist.read-only
companies_getGet a company's profile (name, VAT, country) plus this month's invoice count and total spend.read-only

Invoices

ToolWhat it doesAccess
invoices_listList invoices for a company with filters: date range, supplier name, direction, processing status, payment status, currency, amount range, has_file. Returns up to 50 with a next_cursor.read-only
invoices_getGet a single invoice by id: header fields, amounts, payment and e-invoicing status, tags, line items, and whether a file is attached.read-only
invoices_searchSemantic search over invoices using embeddings. Use when the user describes an invoice in natural language: a vendor fragment, an approximate amount, 'the AWS one from March'.read-only
invoices_get_missingReturn transactions that have no matched invoice for a period, so you can explain which invoices are still missing and from whom.read-only
invoices_get_recent_activityWhat changed recently: invoices collected in the last N days broken down by source channel, plus a count of anything that failed to extract.read-only
invoices_get_download_urlReturn a short-lived (5 minute) signed download URL for the invoice's PDF.read-only
invoices_get_forward_linkReturn a mailto: link with the invoice's PDF link in the body, ready to forward to a client or colleague.read-only
invoices_add_noteAdd a free-text note to an invoice, stored in the invoice's metadata.writes
invoices_mark_reviewedMark an invoice as reviewed by the accountant. Accountant-only.writes

Tags

ToolWhat it doesAccess
tags_listList the company's tag groups and their values. Use this to find a valid tag before tagging invoices.read-only
invoices_update_tagAdd or remove a tag on one invoice. Tags are group plus value. Adding a value replaces any other value from the same group, so call tags_list first.replaces data
invoices_bulk_update_tagsAdd the same tag to up to 100 invoices in one call. Replaces any other value from the same group on each invoice.replaces data

Bank transactions

ToolWhat it doesAccess
transactions_listList bank transactions across both manual and auto-synced accounts, normalized to one shape. Filters: date range, amount range, matched state, classification, category.read-only
transactions_getGet one transaction by id and source (manual or salt_edge), with its classification and reconciliation status.read-only
transactions_get_unmatchedReturn transactions not yet linked to an invoice, the reconciliation gaps. Use to answer 'what still needs an invoice'.read-only
transactions_link_invoiceManually link a bank transaction to an invoice when the matcher missed it.writes
reconciliation_get_summaryMonth or range level reconciliation health: total transactions, matched versus unmatched counts, and an estimate of how many invoices are missing.read-only

Suppliers

ToolWhat it doesAccess
suppliers_listList suppliers for a company with last-seen date and status.read-only
suppliers_getGet a supplier's details including detected billing pattern: cadence and next expected invoice.read-only

Spending

ToolWhat it doesAccess
spending_breakdownTotal spend for a period grouped by supplier or category, converted to one currency. Use for 'how much did I spend on X last quarter'.read-only
spending_top_suppliersTop N suppliers by total spend in a date range, with invoice counts and average.read-only
spending_compare_periodsCompare total spend between two periods, with the delta by category and top movers.read-only
spending_recurringRecurring expenses such as SaaS subscriptions, from detected supplier billing patterns: cadence, last invoice, next expected charge.read-only

Financials

ToolWhat it doesAccess
financials_get_cash_balanceCurrent cash from connected bank accounts plus a projected balance that adds unpaid receivables and subtracts unpaid payables.read-only
financials_get_cash_flowCash in, out and net by month across both transaction tables, converted to one currency.read-only
financials_get_agingAccounts receivable and payable bucketed current / 1-30 / 31-60 / 61-90 / 90+. Use for 'who owes me money' and 'what's overdue'.read-only

Accountant files

ToolWhat it doesAccess
files_listList files your accountant has shared with the company: balance sheets, reports and similar. Filters by category and period.read-only
files_get_unseenList shared files the user has not viewed yet. Use for 'anything new from my accountant'.read-only
files_get_download_urlReturn a short-lived (5 minute) signed download URL for a shared file.read-only

Accountant

ToolWhat it doesAccess
accounting_clients_listList the client companies you manage as an accountant, with their last invoice activity. Accountant-only.read-only
accounting_get_missing_across_clientsFor each client company, count transactions with no matched invoice in a period. Use for 'which clients are missing invoices for last month'. Accountant-only.read-only

Agent skills

Published as Agent Skills so a coding agent can load them directly instead of reading this page.

connect-invoflux-mcp

Discover, authorize and connect to the Invoflux MCP server at mcp.invoflux.com over OAuth 2.1 with PKCE and dynamic client registration. Use when connecting an agent to Invoflux, or when an Invoflux tool call returns 401.

Read SKILL.md

query-invoflux-finances

Pick the right Invoflux MCP tool for a question about invoices, suppliers, spending, cash or reconciliation. Covers multi-company workspaces, currency handling, the semantic-versus-structured search choice, and which tools overwrite data.

Read SKILL.md

Discovery files

Everything an agent needs to find and describe Invoflux without being told where to look.

PathWhat it is
/.well-known/ai-catalog.jsonAgentic Resource Discovery catalog: every agent-facing resource Invoflux publishes, in one document.
/.well-known/mcp/server-card.jsonDescribes the MCP server, including all 33 tools and their behavioural annotations, before an agent opens a connection.
/.well-known/agent-skills/index.jsonAgent Skills discovery index (v0.2.0), with a sha256 digest of each skill.
/auth.mdThe full authentication walkthrough: discovery, registration, token use, errors and revocation.
/llms.txtIndex of every Invoflux page as clean markdown. Append .md to any page URL to get that page on its own.