Skip to main content

Take action on your Spendesk data with AI - MCP Write Tools

Use Spendesk MCP Write Tools to create, update, archive and manage selected Spendesk data directly from your AI assistant, with the appropriate permissions and safeguards.

Take action on your Spendesk data with AI - MCP Write Tools

Spendesk MCP can now do more than answer questions about your financial data.

With MCP Write Tools, authorised users can ask their AI assistant to take specific actions in Spendesk, such as updating accounting information, creating a supplier, managing analytical fields or preparing a payable for export.

Write Tools are available only for supported actions and only when the user, organisation and MCP connection have the required permissions.

⚠️ Write Tools are in Beta. Write permissions are off by default: an Account Owner or Admin enables them on the MCP connection, then each user ticks the ones they need when connecting. Write Tools can change real Spendesk data, and some actions cannot be undone. Write Tools do not bypass your Spendesk permissions, but your AI assistant can still misread a request or choose an action you did not intend. Enable only the permissions you need, and check the target entity, object, fields, values and reversibility before you confirm an action. Supported tools and their behaviour may change during the Beta.

Note: The screenshots show Claude as an example. The same steps apply to ChatGPT, Dust and Langdock, with their own screens.

How to enable Write Tools on an existing MCP connection

Write permissions are off by default. Your existing MCP connection remains unchanged until you explicitly enable the permissions you need.

Single-entity organisation

  1. Go to Settings → Integrations → MCP.

  2. On the MCP connections page, click Manage on the existing connection.

  3. Open the Permissions tab.

  4. In the Access column, enable the write permissions you want to grant.

  5. Click Save.

  6. If prompted, open the Spendesk mobile app and confirm permission changes.

The Permissions tab of an MCP connection in Spendesk, with the Access column

Multi-entity organisation

  1. Go to Multi-entity Hub → MCP.

  2. Click Manage on the existing connection and follow the same steps from the Permissions tab.

Then, each user turns on the actions they need

Enabling write permissions on the connection makes them available; it does not give them to anyone yet. Each Account Owner or Controller who wants the assistant to act:

  1. Reconnects Spendesk in their AI assistant (disconnect and connect again).

  2. On the Spendesk approval screen, ticks the write permissions they need. Write permissions are unticked by default; read permissions stay ticked.

Refreshing the tool list in the AI assistant is not enough: the new actions appear only after reconnecting.

The user ticks only the write permission they need, here Manage suppliers
With read access and Manage suppliers only, Claude sees 37 Spendesk tools instead of 62

ChatGPT Business and Enterprise: ChatGPT keeps the list of tools from when the app was published in your workspace. A workspace admin must refresh the app (Enterprise) or recreate and republish it (Business) before the Write Tools appear.

Who can manage access? Account Owners and Admins can create and manage MCP connections and permissions. Account Owners and Controllers can use MCP (an Admin who is neither can set up a connection but cannot use it), subject to their Spendesk permissions and the permissions they approved when connecting. You do not need to generate new OAuth credentials or create a new MCP server connection to enable Write Tools.

What are MCP Write Tools?

MCP tools connect your AI assistant to Spendesk.

Tool type

What it does

Example

Read Tool

Finds, retrieves or analyses data

“Show all overdue payables”

Write Tool

Creates, updates, archives or triggers an action

“Update the cost centre on this payable”

A Write Tool does not give your AI assistant unrestricted access to Spendesk. Every action remains subject to your Spendesk role and permissions, the scopes granted to the MCP connection, the organisation and entity context, Spendesk business rules, and the permissions you approved when connecting.
​

Before you use a Write Tool

When your assistant calls a Write Tool, Spendesk checks the permissions enabled on the connection and approved when you connected, your Spendesk role, the organisation and entity, and the business rules of the object (for example, only a supplier with no payments, requests or subscriptions can be archived).

The confirmation step depends on your AI assistant. Claude asks for your approval before each tool call, unless you set a tool to Always allow. Dust, once connected, calls tools without asking each time. Other assistants have their own approval prompts. A preview or a plain-language answer is not proof that nothing was changed: when in doubt, check the object in Spendesk or the connection's Action log. For what an AI assistant can still get wrong and good habits before letting it act, see Use AI assistants with Spendesk safely.

Before confirming an action, ask your AI assistant to show:

  1. The entity where the action will run.

  2. The object that will be changed.

  3. The action that will be performed.

  4. The fields and values that will be affected.

  5. Whether the action can be undone in the Spendesk interface.

  6. Where the action can be undone, if applicable.

  7. What may happen to existing or exported data.

Before archiving a supplier, Claude shows what will change, in which entity and whether it can be undone
Claude asks for approval before the Archive supplier action: choose Allow once

Example: “Before executing this action, tell me whether it can be undone in the Spendesk UI, where I can undo it, and which data could be affected.”
​

Write Tool reversibility

Status

Meaning

✅ Can be undone

The action can be reversed, with the same tool or a documented action.

⚠️ No one-click undo

The result may be corrected with another action, but Spendesk does not provide a direct Undo button.

🛑 No undo

The action cannot be reversed with an MCP tool, and in some cases not from the Spendesk interface either. Each row says which: No MCP undo, No UI undo or Effectively irreversible. Support intervention or a separate remediation may be required.

Available Write Tools

Suppliers

Tool

Description

Can it be undone?

Where or how?

Warning

create_suppliers

Create one or more supplier records, including supplier and payment information.

⚠️ No one-click undo

Archive the supplier afterwards, if it has no payments, requests or subscriptions.

Archiving is a corrective action, not a true rollback of the creation. The assistant only sets bank details you gave and confirmed exactly.

update_supplier

Update selected fields on an existing supplier.

⚠️ No one-click undo

Edit the supplier again with the previous values.

The previous values may not be available to the user.

archive_supplier

Archive or restore a supplier while preserving historical records.

✅ Can be undone

Ask the assistant to unarchive it, or in Spendesk go to Settings → Accounts payable → Archived, select the supplier and click Un-archive suppliers.

Only suppliers with no payments, requests or subscriptions can be archived.

Claude confirms the result: one supplier updated, none skipped, no failures
Restoring the supplier with the same tool: it is active again, with its data as before

Chart of Accounts

Tool

Description

Can it be undone?

Where or how?

Warning

create_accounts

Create entries in the company chart of accounts.

⚠️ No one-click undo

Archive the account afterwards (delete_accounts archives it).

Not available when your chart of accounts is managed by your accounting integration: make the change in your accounting software.

update_accounts

Update existing chart-of-accounts entries.

⚠️ No one-click undo

Update the account again with the previous values.

Not available when your chart of accounts is managed by your accounting integration.

delete_accounts

Archive a chart-of-accounts entry (it is not permanently deleted).

✅ Can be undone

Ask the assistant to unarchive it (update_accounts sets it back to active).

Not available when your chart of accounts is managed by your accounting integration.

Analytical Fields

Tool

Description

Can it be undone?

Where or how?

Warning

create_analytical_field

Create a company-defined analytical dimension.

⚠️ No one-click undo

Delete it afterwards (delete_analytical_field archives it).

Existing classifications may be affected.

update_analytical_field

Update an analytical field configuration.

⚠️ No one-click undo

Edit the field again with the previous values.

There is no automatic rollback of previous values.

delete_analytical_field

Delete or archive an analytical field.

🛑 No MCP undo

No restore tool is available in MCP.

The field is soft-deleted, but its values are not deleted. They become stranded and cannot be managed individually.

create_analytical_field_value

Add a value to an analytical field.

⚠️ No one-click undo

Delete it afterwards (delete_analytical_field_value archives it).

The value may already be used on payments.

update_analytical_field_value

Update an analytical field value.

⚠️ No one-click undo

Edit the value again with the previous value.

Renaming may affect future selections and reporting.

delete_analytical_field_value

Delete an analytical field value.

🛑 No MCP undo

No restore tool is available in MCP.

Review the value and its usage before confirming deletion.

Expense Categories

Tool

Description

Can it be undone?

Where or how?

Warning

create_expense_category_field

Create the company expense-category field.

⚠️ No one-click undo

Delete it afterwards (delete_expense_category_field), which also removes its categories.

A company has only one expense-category field.

update_expense_category_field

Update the expense-category field configuration.

⚠️ No one-click undo

Edit the configuration again with the previous values.

Review whether the field is mandatory before changing it.

delete_expense_category_field

Delete the expense-category field and its categories.

🛑 No MCP undo

No restore tool is available in MCP.

This action deletes all categories belonging to the field.

create_expense_category

Create an employee-facing expense category.

⚠️ No one-click undo

Delete it afterwards (delete_expense_category archives it).

The category may already be used on payments.

update_expense_category

Update an expense category and its classification links.

⚠️ No one-click undo

Edit the category again with the previous values.

Renaming can affect exported payable labels.

delete_expense_category

Delete or archive an expense category.

🛑 No MCP undo

No restore tool is available in MCP.

Review the category and its usage before confirming deletion.

Payables and Settlements

Tool

Description

Can it be undone?

Where or how?

Warning

update_payable

Update accounting information on an existing payable.

⚠️ No one-click undo

Update the payable again with the previous values.

Updating line items may replace several accounting fields at once.

mark_payable_as_ready

Move a payable from toPrepare to toExport (ready for accounting export).

✅ Can be undone, in Spendesk

Go to Bookkeep → Export, select the payable and send it back to Prepare. No MCP tool does this.

The payable must have complete bookkeeping information.

mark_payable_as_exported_manually

Record that a payable was exported outside Spendesk.

🛑 No UI undo currently

No self-service undo is currently documented. Contact Support if a correction is required.

Do not use this action unless the payable was actually exported outside Spendesk.

mark_settlement_as_exported_manually

Record that a settlement was handled outside Spendesk.

🛑 Effectively irreversible

No MCP tool can move a settlement back out of the exported state.

Confirm that the settlement was handled outside Spendesk before using this tool.

Purchase Orders

Tool

Description

Can it be undone?

Where or how?

Warning

create_purchase_order

Create a purchase order and spending commitment.

⚠️ No one-click undo

Cancel the purchase order if it is still eligible.

Cancellation is a separate lifecycle action, not a rollback.

cancel_purchase_order

Cancel an open purchase order.

🛑 No UI undo

No direct Undo action is available.

This action is irreversible.

close_purchase_order

Close a completed purchase order.

🛑 No UI undo

No direct Undo action is available.

This action is irreversible. Closing also rewrites the PO amount to match the billed amount, so the original approved amount cannot be recovered.

Accounting Exports

The Manage accounting exports permission also lets the assistant download an export and list your journal templates.

Tool

Description

Can it be undone?

Where or how?

Warning

create_accounting_export

Generate a purchase or bank journal export for a period of up to 31 days.

✅ Preview: nothing changes · 🛑 Committed: no rollback

By default the export is a preview and changes no bookkeeping status. It is committed only when you explicitly ask for it.

A committed export marks the payables and settlements included as exported. Verify the period and journal type before committing, and don't run it twice.

For developers and security reviews, the MCP tool reference lists every tool with its permission, and Using the AI assistant safely explains what protects you. Assistant actions and safety details what each action changes and what Spendesk enforces.

How to use Write Tools effectively

Identify the object clearly

Include the name or ID of the object you want to update.

Good example: “Update payable pay_12345.”
​

Describe the action explicitly

Be specific about the operation you want to perform.

“Archive supplier supplier_123.”
​

Ask for a preview first

“Show me what would change on this payable, but do not update it yet.”
​

Ask about reversibility

“Before executing this action, tell me whether it can be undone in the Spendesk UI, where I can undo it, and what data could be affected.”
​

Ask for confirmation after the action

“Confirm that the payable was updated and show me its resulting accounting fields.”

Important limitations

A corrective action is not always a rollback

Archiving an object, editing it again or recreating a deleted value does not necessarily restore the exact previous state. In particular, some delete tools have no MCP restore tool, even when the underlying record remains in the database.

If you do not see a direct Undo action in the table above, review the impact carefully before confirming.
​

Some actions are irreversible

Examples include marking a payable or settlement as manually exported, cancelling or closing a purchase order, deleting an analytical field or value, deleting an expense category or field, and committing an accounting export.
​

Warning: Review these actions carefully before confirming them. If an action was made by mistake, contact Spendesk Support with the object ID, the action performed, the approximate time of execution and the correlation ID shown in the Action log.
​

Actions on several items can partly succeed

Some tools handle several items in one call — for example create_suppliers and update_accounts — and can succeed for some items and fail for others. Always review the result list returned by your AI assistant, then check the items in Spendesk.
​

Data may be affected differently depending on its state

  • Exported historical records preserve the value used at the time of export.

  • Records still in Prepare may lose a deleted or changed value.

  • Future transactions may no longer offer an archived or deleted value.

Permissions and access

Write Tools are available only when the write permission is enabled on the MCP connection and approved by the user when connecting, the user's Spendesk role allows the operation (Account Owner or Controller), and the object is eligible for the requested action.
​

MCP does not bypass Spendesk permissions. Your AI assistant cannot grant itself additional access or use a tool that is not available to your connection.
​

Multi-entity organisations

With an organisation-level connection, each action targets one entity: your assistant must name it for every call, and it can only act in active entities where you are an Account Owner or Controller. Before you confirm a write, ask the assistant which entity it will act on. The Action log records the entity of each call.

Security and control

  • Actions are scoped to your authorised organisation and entities.

  • Every action is made in the name of the signed-in Spendesk user: each user authorises the connection with their own Spendesk login, and MCP has no shared or anonymous identity.

  • Spendesk permissions continue to apply.

  • The MCP connection cannot expand its own permissions.

  • Sensitive actions should be reviewed before confirmation.

  • OAuth credentials should be stored securely and never pasted into an AI conversation.

  • Every tool call — reads and actions — is recorded in the connection's Action log in Spendesk (Manage → Action log): date, tool, status, user and entity. Account Owners and Admins can open it. The Action log does not list the fields or values that were changed: to see what changed on an object, open it in Spendesk.

  • Keep approval on for Write Tools in your assistant: in Claude, choose Allow once rather than Always allow for actions.

  • An Account Owner or Admin can remove the connection from its page in Spendesk (Manage → Remove).

The Action log records the Archive Supplier call with its date, status, user, entity and correlation ID

Example prompts

Update a payable

“Show me the accounting fields for payable pay_12345. I want to update its cost centre to Marketing, but do not make any changes yet. Also tell me whether I can undo this change in the Spendesk UI.”
​

Create a supplier

“Create a supplier named Acme Ltd using the following details. First show me the data that will be created, tell me how I could correct the action if needed, and ask for my confirmation.”
​

Manage an analytical field

“Add Germany as a value to the Business Unit analytical field. Before doing this, tell me whether the new value can be deleted or restored later.”
​

Update an expense category

“Rename the expense category Software to Software and AI Tools. Show me which records and configuration may be affected, and tell me whether this can be undone in Spendesk.”
​

Create a purchase order

“Create a purchase order for Acme Ltd for €12,000, starting on 1 October 2026 and ending on 31 December 2026. Do not create it until I confirm. Also tell me whether the purchase order can later be cancelled or reopened.”
​

Prepare an accounting export

“Prepare the purchase accounting export for September 2026. Before running it, show me the period, journal type, records included and whether this action can be undone.”
​

Frequently Asked Questions

Can MCP change my Spendesk data?

Yes. Authorised Write Tools can create, update, archive or trigger specific operations in Spendesk.
​

Can every user use Write Tools?

No. Only Account Owners and Controllers can use them, and only the actions whose write permission is enabled on the MCP connection and approved when they connected.
​

Can MCP modify any Spendesk object?

No. Write Tools are available only for the objects and actions listed in this article. The assistant cannot approve or reject requests or invoices, pay an invoice or schedule a payment, create or change cards, users or cost centres, or read budgets. mark_payable_as_ready makes a payable ready for accounting export: it is not an approval. See What can't the assistant do? in the Getting Started guide.
​

Can I undo an action?

It depends on the action. This article shows whether a direct Undo action is available in Spendesk and where to find it.
​

What is the difference between Undo and a corrective action?

An Undo restores the previous state through a dedicated Spendesk action. A corrective action performs another operation to compensate for or modify the result. It may not restore the exact previous state.
​

What should I do if an action cannot be undone?

Do not perform the action unless you are certain it is correct. If it was already performed by mistake, contact Spendesk Support with the tool name, object ID, action performed, values submitted, approximate time of execution and the correlation ID shown in the Action log.
​

Why did my Write Tool action fail?

The most common reasons are missing permissions (the write permission is not enabled on the connection, or you did not tick it when connecting — reconnect and tick it), an invalid object ID, an unsupported object status, an object changed since it was retrieved, or missing or invalid information.

Did this answer your question?