De-risk Claude and AI without getting left behind. You stay in full control: Claude is your assistant, not the source of truth for the organization you're trying to keep safe.
Connect Claude to Sofritech and ask about P&L, cashflow, runway, and Exact Online data right inside a conversation. Numbers come from Sofritech's verified reports, not from the model guessing. See why teams don't DIY this →
Claude is capable enough to try all of this on its own. But Claude is probabilistic by design, and financial reporting can't be. That's exactly why it needs a deterministic layer underneath it, not because Claude is wrong, but because confident isn't the same as consistent.
Add the MCP server URL below as a custom connector in Claude, then click Connect and sign in with your Sofritech account. Access is personal and covers every organization on your account.
Sofritech MCP serverhttps://mcp.sofritech.com/mcpSofritech MCP serverhttps://mcp.sofritech.com/mcpRun once per machine to register the connector:
claude mcp add --transport http sofritech https://mcp.sofritech.com/mcp
When prompted, sign in with your Sofritech account to complete OAuth.
Natural-language prompts Claude understands once connected:
Claude picks tools from your question. Start with list_organizations, then
organization_id. For consolidated P&L or balans (no division named) →
get_financial_statements. For cashflow/runway → get_cashflow_forecast.
For one Exact division → compare_periods or get_reporting_balance
with account_id and division Code from list_divisions (not HID).
| Tool | When to use |
|---|---|
| Navigation | |
list_organizations |
Organizations on your account — start here for organization_id.
Supports limit, offset, and search when you have many orgs. |
list_exact_accounts |
Linked Exact Online accounts; optional filter by organization_id. |
list_divisions |
Exact administrations for an account_id; use field Code as division. |
| Cashflow reports (Box Excel model) | |
get_cashflow_forecast |
Primary cashflow report: history + forecast, O/I/F, scenarios (fall_back, management, growth), runway. |
get_portfolio_cashflow_summary |
Cash runway overview for all organizations — shortest runway first. |
get_financial_statements |
P&L and balans (org-level, Box Excel). Use for omzet, nettoresultaat, equity, schulden, etc.
statement: pnl, balance_sheet, or all.
Not for cashflow/runway — use get_cashflow_forecast. |
| Live Exact reports (division level) | |
compare_periods |
Live Exact P&L for one division only. For org-level P&L, use get_financial_statements. |
get_reporting_balance |
Live Exact balans for one division only. For org-level balans, use get_financial_statements. |
| Data refresh | |
refresh_exact_export |
Trigger Exact → Box Excel export (async, same as portal refresh). |
get_export_refresh_status |
Poll until can_start is true, then call get_cashflow_forecast again. |
| Live Exact detail (reconciliation) | |
get_bank_entries |
Bank entry headers; JournalCode identifies the bank account. |
get_bank_entry_lines |
Individual bank lines; join to entries via EntryID. |
get_gl_transactions |
GL transaction lines for month-end review. |
get_purchase_invoices |
Purchase entries / AP invoices. |
get_receivables |
Open receivables / debtor follow-up (current balances). |
get_payables |
Open payables / creditor balances. |
get_aging_receivables |
Receivables aging buckets by due date. |
get_profit_loss_overview |
Live Exact P&L for one division. |
get_outstanding_invoices |
Outstanding invoices overview from Exact. |
| Live Exact org reports | |
get_expected_cashflows |
Near-term planned inflows/outflows — not the same as get_receivables or get_cashflow_forecast. |
get_sales_summary |
Monthly revenue totals from sales invoices. |
get_customer_concentration |
Top-N customers as % of revenue (DD / investor reporting). |
get_forecast_variance |
Box forecast vs actual + Exact budget by period. |
get_headcount_trend |
Active employment count + personnel cost aggregates (no salary detail). |
get_subscription_summary |
MRR/ARR when Exact subscriptions are in use; returns has_data=false after a negative probe when the module is unused. |
request_mcp_feature |
Log a missing capability for the Sofritech team — only after the user explicitly agrees to flag it (not automatic). |
query_exact_online |
Read-only OData on allowed paths (financial, purchase, read/financial, bulk/Financial, hrm/Divisions). Prefer curated tools when possible. |
Curated tools support odata_filter, odata_top, and odata_skip
— use next_skip from the response when truncated is true.
The connector does not store data of its own. Every tool call is proxied in real time to Sofritech using your authenticated session, and the response is returned to Claude for that conversation only. See our Privacy Policy for how Sofritech handles your data, and Anthropic's own policies for how Claude handles data you share with it in a conversation.
Revoke access at any time from Claude's connector settings, or from your Sofritech account settings — this immediately invalidates the connector's access token.