Skip to content

Agent Tool Configuration

This page is where you create and edit a tool configuration.

Page type: Card (with embedded ListPart) Source table: Agent Tool Configuration Objects:

  • Page 72778315 "SA Tool Config Card QUA"Page.72778315.SAToolConfigCard.al
  • Page 72778316 "SA Tool Config Tools QUA" (embedded Available Tools subpage) — Page.72778316.SAToolConfigTools.al

Note — merged page: This manual covers two pages shown together. The card header holds the configuration's settings. The Available Tools section below it lists every BC object (API page, web service, table, report, or agent) that belongs to this configuration.

This page is where you create and edit a tool configuration. You give the configuration a name, decide whether write operations are permitted at all, and then build up a list of individual tools — BC objects the agent can access. Each tool can have its own read/write permission settings, row limits, and usage description for the AI.

In plain terms

This is the page that turns a chatty assistant into one that can actually do things in Business Central — so it's worth understanding well.

A bare AI model can only produce text. To look up a sales order, create a customer, or run a report, it needs tools. A tool is one specific action you expose to the agent: one API page, one table, one report, or one web service. Mid-conversation the model decides "to answer this I should read the salesInvoices tool", the app runs that call against BC, and the result flows back. That back-and-forth is tool calling.

A tool configuration is, in effect, a permission set — but for the AI. For each object you add, you decide what the agent may do with it:

  • Allow Read — may it look at this data?
  • Allow Create / Modify / Delete / Bound Actions — each is Not Allowed, Allowed, or On Confirmation (the agent proposes the change and a person must approve it before it commits — the AI's version of an approval workflow).

The master switch Allow Write Operations is the safety catch over the whole set: turn it off and every tool is forced read-only no matter its individual settings.

Worked example. A "Sales Lookup" configuration: add the Customers and Sales Orders API pages with Allow Read on and all writes Not Allowed — now any agent using this config can answer questions about sales but can't change anything. Later you add Sales Quotes with Allow Create = On Confirmation so the agent can draft a quote but only a human can commit it.

You build the configuration here, then attach it to an agent under BC Data Connections. Two helpers fine-tune how tools behave: Field Rules (Tool Field Defaults) hide or pre-fill fields for the agent, and Parent Links (Parent-Child Field Links) wire a header tool to its line tool.

How to open it

Fields

General

FieldTypeDescription
NameText[100]A unique name for this tool configuration. Required.
DescriptionText[250]Describe what this configuration is for.
ActiveBooleanOnly active configurations can be selected on agents.
Allow Write OperationsBooleanWhen enabled, tools in this config can create, modify, and delete records. When disabled, all tools are forced read-only regardless of individual tool settings.

Available Tools

Each row represents one BC object added to this configuration. The columns are listed below in the order they appear.

FieldTypeDescription
Object TypeEnumThe type of BC object exposed as a tool. Values: API Page, Web Service, BC Agent, Smart Agent, Report, Table. Read-only.
Object IDIntegerThe ID of the BC object. Read-only.
Object NameText[250]The name of the BC object. Read-only.
Service NameText[250]The entity/service name used by the AI to identify this tool. For API pages this is the camelCase entity set name (e.g. salesInvoices); for web services it is the published service name.
UsageText[500]Describe what this tool should be used for. Sent to the AI so it knows when to use this tool.
Max. Search ResultsIntegerMaximum records returned per search call for this tool. 0 = use the agent-level default. The higher of this and the agent-level limit applies. Not available for Agent or Report tools.
Max PreviewIntegerMaximum rows shown as inline preview in the chat for this tool. 0 = use the agent-level default. Not available for Agent or Report tools.
Max. DownloadIntegerMaximum rows included per download for this tool. 0 = use the agent-level default. The higher of this and the agent-level limit applies. Not available for Agent or Report tools.
Allow ReadBooleanAllow the agent to read data from this object. Applies to API page, web service, and table tools. Not available for Agent or Report tools.
Allow CreateEnumValues: Not Allowed, Allowed, On Confirmation. Not Allowed = blocked. Allowed = agent can create freely. On Confirmation = user must approve. Applies to API page, web service, and table tools. Only editable when Allow Write Operations is enabled on the configuration.
Allow ModifyEnumValues: Not Allowed, Allowed, On Confirmation. Not Allowed = blocked. Allowed = agent can modify freely. On Confirmation = user must approve. Applies to API page, web service, and table tools. Only editable when Allow Write Operations is enabled on the configuration.
Allow DeleteEnumValues: Not Allowed, Allowed, On Confirmation. Not Allowed = blocked. Allowed = agent can delete freely. On Confirmation = user must approve. Applies to API page, web service, and table tools. Only editable when Allow Write Operations is enabled on the configuration.
Allow Bound ActionsEnumValues: Not Allowed, Allowed, On Confirmation. Not Allowed = blocked. Allowed = agent can invoke freely. On Confirmation = user must approve. Applies to API page, web service, and table tools. Only editable when Allow Write Operations is enabled on the configuration.
Report FormatEnumThe output format for the report. Values: PDF, Excel, Word, HTML, XML. Only editable for Report tools.
Parent Object IDIntegerThe Object ID of the parent tool in this config. Use the Parent Links action to configure field mappings. Applies to API page, web service, and table tools.
Confirmation PageIntegerBC page used to preview and confirm agent-proposed writes when Allow Create / Modify / Delete / Bound Actions = On Confirmation. Must target the same source table as this tool. Leave 0 to use the default confirmation popup. Not available for Agent or Report tools.
Agent Task TimeoutIntegerMax seconds to wait for the agent to finish. Default 120 seconds. Applies to BC Agent and Smart Agent tools only.
Wait for ResultBooleanWhen enabled, waits for the sub-agent to complete before responding. When disabled, delegates and continues. Applies to BC Agent and Smart Agent tools only.

How to choose — write permissions: when in doubt, start every write at On Confirmation rather than Allowed. The agent still does the work of preparing the change, but a person reviews and approves it before it commits — so a misunderstanding can't silently corrupt data. Move a tool to Allowed only once you've watched it behave correctly and the operation is low-risk. Keep Allow Write Operations off entirely for any configuration meant purely for lookups.

Actions

The following actions appear in the Available Tools subpage toolbar.

ActionWhat it does
Add API PagesBrowse API pages and add selected ones as read-only tools. You can select multiple pages; any that already exist in the configuration are skipped.
Add TableBrowse BC tables and add one as a direct-access tool.
Add Web ServicesBrowse published web services (pages, queries, codeunits) and add selected ones as tools.
Add BC AgentBrowse configured BC Agents and add one as a delegatable tool.
Add ReportBrowse BC reports and add one as a runnable tool. The agent can generate PDF, Excel, Word, HTML, or XML output.
Configure Report FiltersOpen the report request page to configure default filters and options. These are used as defaults when the agent runs the report. Available only for Report-type tools.
Add Smart AgentBrowse active Smart Agents and add one as a delegatable sub-agent tool. An agent cannot add itself.
Field RulesConfigure per-field rules for the selected tool: hide fields from the agent, mark them mandatory, set default values (static or per-user), and control fill behaviour. Opens the Tool Field Defaults page. Not available for Agent-type tools.
Parent LinksConfigure parent-child field link mappings for the selected tool. Only available when Parent Object ID is set. Opens the Parent-Child Field Links page.
Show SchemaShow the fields and data types available on the selected tool. For API pages and web services, fetches the live schema from the endpoint.
Describe ToolShow the full description of this tool as sent to the AI model, including permissions and field rules.

Notes

  • Turning off Allow Write Operations immediately sets Allow Create, Modify, Delete, and Bound Actions to Not Allowed on every tool in the configuration.
  • For On Confirmation operations, the agent proposes the change and the user reviews it in either a BC page (if Confirmation Page is set) or the default popup dialog.
  • Add Report opens the report's request page so you can capture default filter settings before the tool is saved.
  • Show Schema for a Report shows the stored request page XML rather than a live endpoint schema.
  • Smart Agent sub-agents default to 120-second timeout and synchronous execution (Wait for Result = on).
  • BC Agent tools use the agent's User Security ID, which is filled automatically from the user lookup.