The Uku MCP server for accounting practice management.
Connect Claude or ChatGPT to Uku by signing in. Your assistant then sees your clients, tasks and hours, and does the work you ask. It acts with your permissions. Big changes wait for your OK.
Works with Claude, ChatGPT, or any assistant that supports MCP.
What can I do in Uku from here?
Here is what I can reach in your firm:
Which clients had no time logged this month?
list_time_entriesevery client, since 1 September
Three clients have nothing logged at all this month:
| Client | Last entry | Manager |
|---|---|---|
| Acme Foods | 28 August | Kadri |
| Northwind Ltd | 21 August | Kadri |
| Baltic Timber | none this year | Kadri |
All three sit with the same manager, who has been on vacation since the 19th. The vacation was entered without a substitute, so the work waited instead of moving to someone else. Name one and Uku hands the tasks over.
Read only. Nothing in Uku changed.
Which clients are we losing money on?
get_biprofitability by client, last 4 months
Cost rates are set on every member, so these are real margins rather than estimates. Four contracts ran under cost last quarter:
| Client | Billed | Hours | Margin |
|---|---|---|---|
| Northwind Ltd | $20,000 | 199 | −33% |
| Acme Foods | $20,000 | 203 | −30% |
| Meridian Retail | $8,000 | 64 | −10% |
| Harbour Legal | $12,000 | 108 | −9% |
It is the price list, not the people. Northwind and Acme pay the same fixed monthly fee and both have grown past what it covers: together they hand back about $12,600 a quarter. Reprice those two against the hours they actually take and most of the hole closes.
Reading the money needs the financial access you grant. Nothing changed.
Log two hours on Acme's VAT return.
log_timeacts on the first call, no preview
Logged. 2 h on Acme Foods, VAT return September, in your name.
- The task now stands at 6 h of the 8 h budgeted
- Due 20 September, checklist at 4 of 7
Acme is on a fixed monthly contract, so the hour over budget comes out of your margin, not off the invoice. This return has run long three months in a row now, which usually points at the contract rather than the work.
Acted at once. No preview on this one: it is small, and yours to undo.
Send Acme's September invoice.
send_invoicepreview first, waits for confirmation
Here is exactly what would go out:
- Acme Foods, invoice 2451, $1,840
- 12 lines, September work
- To finance@acmefoods.example
One line gives me pause: 4 h of portal onboarding also appears on the August invoice, so this may be a double charge. Say the word and it goes as it stands, or I can drop that line first.
Waiting for your OK. Nothing has been sent.
Put the monthly bookkeeping workflow on every client who uses it.
apply_client_workflowpreview first, waits for confirmation
That reaches a lot at once, so here is the dry run:
| What | Count |
|---|---|
| Clients matched | 214 |
| Tasks that would be created | 1,926 |
| Clients already carrying it | 12 |
| People emailed | 0 |
Those 12 already picked the workflow up last month, so they would end up with a second copy of every task. I would leave them out unless you want the duplicates.
Waiting for your OK. Nothing has happened yet.
What happens to a colleague's tasks while they are on holiday?
search_helpUku's own help center
Uku hands them to the substitute named on the vacation, for exactly the days it covers. The substitute sees them in their own list, marked as cover, and they move back on the return date.
If nobody is named, the tasks stay where they are and nothing warns you. That is what happened to the three clients further up.
Read only, and it names its source: the help center article on vacations and substitution.
I act with your permissions. Anything with real reach waits for your OK first.
An example conversation. The firms, names and numbers are made up.
Connect in three steps. No key to copy.
You sign in to Uku from your assistant. That is the whole setup. The assistant then acts as you, with your permissions.
Claude web, desktop and mobile
- Open Settings → Connectors and click Add custom connector.
- Name it Uku, paste
https://app.getuku.com/mcpand click Add. Leave the other fields as they are. - Click Connect, sign in to Uku and click Allow.
On Claude Team or Enterprise, an organisation owner adds the connector once. Each member then signs in themselves. Full guide
ChatGPT
- In Settings, turn on Developer mode.
- Under Connectors, create a connector named Uku with the address
https://app.getuku.com/mcp. Set Authentication to OAuth. Leave client ID and secret empty. - Start the connection, sign in to Uku and click Allow.
ChatGPT's deep research feature cannot use this connection. A normal chat can. Full guide
Claude Code
- Run
claude mcp add --transport http uku https://app.getuku.com/mcp - Type
/mcp, select uku and choose Authenticate. - A browser opens. Sign in to Uku and click Allow.
Servers and scripts with no browser
On a server there is nobody to click Allow. Use an assistant key instead. An owner or admin opens Settings & Apps → Public API, expands Connect an AI assistant (Claude) and clicks Generate assistant key. Put the block below in your .mcp.json. Keep the "type": "http" line. The key never expires and never carries financial data.
{
"mcpServers": {
"uku": {
"type": "http",
"url": "https://app.getuku.com/mcp",
"headers": {
"X-Uku-Company": "<company UUID>",
"X-API-Key": "<assistant key>"
}
}
}
}Your assistant does not see everything? Some assistants show only about 100 actions at once. Then connect a smaller part of Uku instead: /mcp/core plus one of /mcp/work (tasks and time), /mcp/money (invoices and reports) or /mcp/admin (clients, documents, teams).
One tip in Claude. Open the Uku connector's settings. Set Read-only tools to Always allow. Leave Write/delete tools on Ask. Reading changes nothing in Uku, so Claude does not need to ask each time. Writing changes something, so one click to confirm is good.
Building something of your own instead? The API v3 reference is public and needs no key to read.
What your assistant can do in Uku today.
40 tools read your firm. 48 change something, and 43 of those show you what they are about to do and wait. 32 touch money, behind a consent of their own.
Identity 2
whoamiTells you which person and firm the assistant is acting as.
readmy_tasksLists what is on your own plate right now.
readCompany setup 3
get_setup_statusSays how far along the firm's Uku setup is.
readactivate_appSwitches on one of Uku's apps for the firm, after showing you which.
write · previews firstset_billing_defaultsSets the firm's default billing settings, after showing you what changes.
write · previews first moneySearch 7
search_ukuFinds a thing by name when you have not said what kind of thing it is.
readlist_clientsLists the firm's clients, or finds one by name.
readget_clientOpens one client's full record.
readget_taskOpens one task, with its dates, status and who is on it.
readlist_time_entriesLists individual time entries by person, client, task or date.
readlist_tasksLists tasks by client, person, status or title.
readget_client_foldersShows a client's whole document folder tree.
readReports 6
get_bi_metricsLists which business figures are available to report on, and what each one means.
read moneyget_bi_summaryGives the firm's headline numbers for a period: production, profit, utilization.
read moneybuild_bi_view_linkBuilds a link that opens the report in Uku, already filtered, for you to look at yourself.
read moneyget_time_reportTotals the hours logged in a period, by client or by person.
readrefresh_bi_dataRebuilds the firm's reporting data after something it depends on changed.
write moneyget_biShows any figure as a monthly trend, or ranked by client, person, topic or service.
read moneyAudit trail 2
get_activity_detailShows exactly what one change altered, from what to what.
readlist_activityShows who did what, and when.
readHelp 2
search_helpSearches Uku's own help center to answer “how do I…?”
readget_help_articleReads a help article in full, so the answer comes with a link you can open.
readTask actions 8
create_taskCreates a task for a client, dated and assigned.
writelog_timeLogs hours worked on a task, for you or for a colleague.
writecomplete_taskMarks a task done, after showing you which one.
write · previews firstreopen_taskPuts a finished task back into progress, after showing you which one.
write · previews firstadd_task_commentComments on a task. An internal note posts straight away; a message your client will see is shown to you first.
write · previews firstset_task_recurrencePuts a task on a repeating schedule, after showing you what it will generate.
write · previews firstbulk_task_actionApplies one change to up to 200 tasks at once, after showing you the list.
write · previews firstedit_checklist_itemAdds a step to a task's checklist, or ticks one off.
writeClient actions 5
send_emailSends an email to a client from Uku, after showing you exactly what goes out.
write · previews firstcreate_client_cloud_foldersSets up a client's cloud document folder ahead of the first upload, after showing you which client.
write · previews firstassign_folder_templateGives a client one of the firm's folder structures, after showing you what changes.
write · previews firstupload_documentPuts a small file into a client's document folder.
writedigitize_documentsEmails a client's documents out for digitisation, after showing you the file list.
write · previews firstInvoicing 10
list_invoicesLists invoices, including every one still unpaid.
read moneyget_invoiceOpens one invoice, with its lines, total and status.
read moneyget_missed_billingFinds work that was done but never billed.
read moneycreate_invoiceRaises an invoice, showing you the client, every line and the real total before it exists.
write · previews first moneyadd_invoice_rowAdds a line to an invoice, after showing you what it adds.
write · previews first moneygenerate_client_invoicesGenerates the period's invoices from the clients' contracts, after showing you what would be raised.
write · previews first moneysend_invoiceSends an invoice to the client, after showing you exactly what goes out.
write · previews first moneypromote_invoiceMoves a draft invoice on so it can be sent, after showing you which one.
write · previews first moneyupdate_invoiceCorrects an invoice's dates, reference or lines, showing you the total before and after.
write · previews first moneyset_invoice_paid_statusRecords an invoice as paid, or takes that back, after showing you which one.
write · previews first moneyBilling setup 10
list_contractsLists the firm's billing contracts and which are active.
read moneyget_contractOpens one contract, with its lines and billing dates.
read moneylist_productsLists the services the firm sells.
read moneyget_productOpens one service, with how it is priced.
read moneycreate_contractCreates a billing contract for a client, showing you the period and every line first.
write · previews first moneycreate_productAdds a service to the firm's catalogue, after showing you how it is priced.
write · previews first moneycreate_taxAdds a tax rate the firm can bill with, after showing you the rate.
write · previews first moneyapply_contract_templatePuts many clients on a standard contract package, after showing you the result for each.
write · previews first moneyupdate_contractChanges what a client is billed from now on, showing you every line and price first.
write · previews first moneyupdate_productChanges a service's settings or prices, showing you the old and the new first.
write · previews first moneyAccounting software 3
list_accounting_invoicesLists the invoices your accounting software holds for a period.
read moneyexport_invoice_to_accountingFiles an Uku invoice in your accounting software, after showing you which one.
write · previews first moneyrefresh_invoice_payment_statusAsks your accounting software whether an invoice is paid and updates Uku, after showing you which one.
write · previews first moneyBudgets & flextime 3
get_budget_statusSays how much of a client's budget is used and how much is left.
read moneyget_flextime_balanceSays how far above or below expected hours someone is.
read moneyset_member_cost_rateSets a team member's cost or billing rate from a given date, after showing you the change.
write · previews first moneyTeams 5
list_teamsLists the firm's teams.
readget_teamOpens one team, with its lead and its members.
readcreate_teamCreates a team, after showing you who will be on it.
write · previews firstdelete_teamRemoves a team that is no longer used, after showing you what goes.
write · previews firstupdate_teamSets who is on a team and who leads it, after showing you exactly what changes.
write · previews firstWorkflow templates 10
list_client_workflow_templatesLists the firm's templates for recurring work, like monthly VAT or annual reports.
readget_client_workflow_templateOpens one recurring-work template and every task on it.
readget_client_workflowSays who is responsible for what on a client, and what recurring work it carries.
readcreate_client_workflow_templateCreates a new template for recurring work, after showing you what it will contain.
write · previews firstsave_client_template_taskAdds or edits one task on a template, after showing you the before and after.
write · previews firstdelete_client_template_taskRemoves a task from a template, after showing you which one.
write · previews firstset_client_managerPuts a named person in charge of a client, after showing you who holds it now.
write · previews firstset_client_rolesSets who holds which role on a client, after showing you exactly what changes.
write · previews firstapply_client_workflowRolls a template out onto up to 200 clients in one action, after showing you the scale of it.
write · previews firstpush_client_template_changesPushes an edited template onto the clients already using it, after showing you the reach.
write · previews firstProject workflows 4
list_project_workflowsLists the firm's templates for one-off engagements, like onboarding or a year-end close.
readget_project_workflowOpens one engagement template and how its task dates hang off the project's own schedule.
readapply_project_workflowStarts a project per client from a template, after showing you what will be created.
write · previews firstpush_project_workflow_changesPushes an edited engagement template onto projects already running from it.
write · previews firstBackground jobs 1
get_job_statusSays whether a large rollout has finished, and whether any client was skipped.
readGeneric records 7
list_recordsLists anything the named tools do not cover: suppliers, topics, custom fields, and the rest.
readget_recordOpens one record of any kind the named tools do not cover.
readcreate_recordCreates a record of any kind the named tools do not cover, after showing you the fields.
write · previews firstupdate_recordChanges fields on any record, after showing you which values move and to what.
write · previews firstdelete_recordDeletes a leaf record such as a duplicate task or a stray note, after showing you what goes. Clients and people are not deletable at all.
write · previews firstget_capabilitiesTells you what the assistant can and cannot do in Uku, before it tries.
readbulk_member_actionAdds, swaps or removes people and roles across many clients at once, after showing you the full reach of the change.
write · previews firstOnly 5 actions run straight away, and they are the small ones: logging time, creating a task, ticking a checklist item, filing a document, refreshing your reports. Everything with real blast radius previews first. The same surface is available as Uku API v3 and the Uku CLI.
Your AI cannot touch money unless you say so.
The hard part of putting an assistant near a client ledger is not what it can do. It is knowing what it cannot. So that answer is built into the server, not left to the prompt.
Every write of consequence waits for you
Money, bulk changes, deletions, permissions: anything with real reach previews exactly what it is about to do and waits for an explicit yes. You approve a described action, never a guess.
Money is a separate checkbox, and not everyone sees it
Money is not part of a normal connection. When you sign in from Claude or ChatGPT, financial data is its own checkbox on the screen. Only a person with account-management rights in Uku sees that box. A key made for a server never carries money at all.
An assistant cannot ask itself into your money
What an app asks for is thrown away. The server builds the granted access from its own rules. So no assistant can get more by asking for more.
The governance plane is permanently out of reach
Inviting or removing a member, changing a role or status, the subscription, creating or deleting a company, team permissions, API keys, deleting a client or a project: none of it exists for an assistant. Not behind a permission. Absent, by design.
It acts as you, with your rights
A connection is tied to one firm and to one person. The assistant sees exactly what that person sees in Uku. A client they cannot open, it cannot open either. Uku records every action with that person's name. When the member is deactivated, or the firm moves to a plan without the assistant, the connection stops. Text that comes out of Uku is data to the assistant, never an instruction.
Written for the way US firms are now told to use AI.
In June 2026 the IRS Office of Professional Responsibility published introductory guidance on AI in federal tax practice. Where it raises a risk, Uku's answer is a product decision rather than a policy page.
RiskNo human oversight
Review is not a habit someone has to remember here. It is where the tool stops. Circular 230 §10.22 asks for human review before AI output reaches a client or the IRS.
RiskClient data spillover
A connection is bound to one firm, and inside it to one person's permissions. There is no configuration that widens either.
RiskPrivacy breaches
Money needs a consent of its own, and account administration is not reachable at all. §10.36 asks firms for secure data handling and vetted vendors.
RiskHallucination
The assistant answers from your firm's own records rather than from memory, and when it explains a feature it cites the help center article it read. You can check what it read.
These describe what the software does. The professional judgment stays where Circular 230 puts it, with the practitioner. Read the IRS bulletin.
Common questions.
What is MCP?
The Model Context Protocol is an open standard. It lets an AI assistant use an application's tools directly, so you do not copy data between them. You connect Uku once. After that the assistant reads your firm's data and does work in it, the same way it already reads your files or your calendar.
Which AI assistants work with it?
Claude and ChatGPT, on the web, on desktop and on mobile. Claude Code too. Any other assistant that supports MCP connects the same way. You keep the assistant you already use.
Which plan includes the Uku MCP server?
The Elite plan, the same plan as Uku API v3. Any active member of the firm can connect their own account. There is nothing to request and no waiting list.
How do I connect Claude or ChatGPT to Uku?
You sign in. In Claude, open Settings → Connectors, click Add custom connector and paste https://app.getuku.com/mcp. Then click Connect, sign in to Uku and click Allow. In ChatGPT, turn on Developer mode and add a connector with the same address, with Authentication set to OAuth. No key changes hands. The full steps are in the help center.
Do I need an API key?
No. When you sign in, the connection makes its own short-lived key and renews it while it stays authorised. A key is only for a server or a script with no browser, where nobody can click Allow. An owner or admin generates that assistant key in Settings & Apps → Public API.
Can my AI see our money?
Only if you tick the box. On the sign-in screen, financial data is its own checkbox. Only a person with account-management rights in Uku sees it. Tick it, and the assistant reads the whole firm's invoices, contracts, prices and budgets. Leave it, and the assistant runs tasks, time, clients and workflows all day, and says no when you ask about money.
Can it delete a client?
No. Deleting a client or a project takes its tasks, files, portal access and billing history with it. That is too much for a chat confirmation. Inviting or removing members, changing roles, the subscription, team permissions and API keys are not available to an assistant at all. Those stay in Uku, where a person does them on purpose.
Does ChatGPT work as well as Claude?
Yes. Same address, same sign-in, same permissions. Claude is the route most firms use and the one we have tested most. One difference: ChatGPT's deep research feature cannot use the connection. A normal chat can.
My assistant shows only some of Uku's actions. Why?
An assistant keeps about a hundred actions in view at once. Uku's full address is near that limit, and some assistants drop the extra actions without a warning. Connect a narrower address instead: /mcp/core, plus /mcp/work for tasks and time, /mcp/money for invoices and figures, or /mcp/admin for clients, documents and teams. Always include /mcp/core.
Does every action an AI takes show up in the audit trail?
Yes. The assistant acts as the person who connected it. Uku records which action ran, when, by which person and by which key. Nothing an assistant does is invisible or attributed to a robot.
Can one client's data end up in another client's work?
No. A connection is tied to one firm. The firm comes from the sign-in itself, so an assistant cannot point the connection at anyone else.
Does this cut our billable hours?
It changes what you bill for, and it makes that easier to show. The assistant logs its time in Uku like anyone else, and every action it takes is recorded, so the work is visible rather than absorbed. Circular 230 §10.27 asks that savings from automation be passed on openly; a firm that can show exactly what was automated is in a better position to have that conversation than one that cannot.
Can I use the Uku MCP server alongside the Xero or QuickBooks one?
Yes. An assistant can hold several servers at once, and each one is a separate connection with its own permissions. That is the shape most firms end up in: the ledger's MCP server for the books, Uku's for the practice: the tasks, the time, the deadlines and the margins.
Let your AI run the firm's work — your money stays yours.
Included in the Elite plan, alongside Uku API v3 and the CLI. Compare the plans