Skip to content
support

What an assistant can do

The tool catalog, so you can answer can it do X precisely, plus how filtering, sorting, and paging work.

Users never type tool names. The assistant picks tools itself. This page exists so you can answer “can it do X?” precisely, and so you know what to expect in an audit trail.

Cross-cutting tools#

ToolNeedsWhat it does
searchreadFree-text search across every entity the caller can reach, grouped by type
fields_describereadLists the fields available on an entity, with types
user_listread, partner tierPartner staff directory, used to resolve record owners by name

Records on the organization plane#

Available to every customer. Each entity has _list, _get, _create, _update, and _delete.

EntityCoversFree-text search matches
serviceService inventoryService IDs (all three), note
accountAccount numbersAccount number, alias, billing account name
invoiceCarrier invoicesInvoice number, status
contractContractsName, contract number
locationLocations and sitesName, address, city, short code
ticketSupport ticketsSubject, description, provider ticket number
projectProjectsName, description
connectionNetwork circuitsLumen service ID, display name, location
phonePhone inventoryPhone number, assigned-to, extension

Records on the partner plane#

Your firm’s own CRM, reachable only by partner staff and only when the CRM module is on.

EntityCoversFree-text search matches
companyCRM companiesName, domain, billing email
contactCRM contactsFirst and last name, email, job title
dealDealsName, stage, owner name
crm_taskCRM tasksTitle, description
noteNotesTitle, content
quoteQuotesDocument number, secondary reference
pipelineDeal pipeline stagesName. Read-only, no create, update, or delete

Reports#

ToolReturns
report_spend_by_providerTotal invoiced spend per provider with invoice counts, optionally bounded by date
report_expiring_contractsContracts expiring within N days, 90 by default
report_dashboard_metricsHeadline counts: services, invoices, open tickets, contracts expiring in 90 days

Reports are a curated set, not an arbitrary query builder.

Action tools#

ToolWhat it does
connection_set_bandwidthPlaces a real bandwidth change order with the carrier, previewing the price delta first

This is the only tool that reaches outside the platform. See Changing data safely.

Filtering, sorting, and paging#

Every list accepts more than free text. Nobody needs to know the syntax, because the assistant builds it from a plain description, but knowing what is possible helps you tell a user how to ask.

  • q: free text, matched against that entity’s search fields in the tables above.
  • sort: any field, ascending or descending. An unrecognized field quietly falls back to the default order rather than failing.
  • filter: a condition tree combined with AND and OR. Operators are eq, neq, contains, gt, lt, isEmpty, and isNotEmpty, plus the relative-date presets thisMonth, lastMonth, nextMonth, thisQuarter, lastQuarter, and nextQuarter.
  • fields: return only the columns that matter. Unlike sort and filter, naming an unknown or withheld field is a hard error, not a silent drop.
  • createdFrom and createdTo: bound results by creation date, YYYY-MM-DD, inclusive.
  • limit and offset: 25 rows by default, 100 maximum. Reports cap at 200.

There are no unbounded queries, by design.

What is held back#

Soft-deleted records are hidden. Including them requires the mcp:admin scope and exists for merge, restore, and audit work, not for ordinary listing.

Credential fields are stripped from every read. Any field whose name looks like a secret, password, API key, access token, or private key is projected out, so an assistant cannot retrieve one even when it can read the record it sits on. A request that names such a field explicitly is refused rather than silently dropped.

Commission records are invisible. Commission tickets live on the partner commissions plane and are excluded from every organization-plane read and write.

Common questions#

Why does an assistant list a tool it then refuses to use? The tool list is identical for everyone, because it is published before any access check. Access is evaluated when a tool actually runs. So a tool for a record type the caller’s plan or role does not cover appears in the list and returns a clear refusal when called.

Can it run any report I can build in the app? No. Three reports today, listed above. For anything else, the assistant lists records and works from those, which is slower and truncates at 100 rows per page.

Related guides

  • AI assistants and the MCP server What the MCP server is, who it is for, and the one rule that answers most questions about it.
  • Changing data safely Every write is a preview first, which fields are refused by design, and how bandwidth change orders work over MCP.
  • Getting good answers The habits that separate a useful MCP session from a frustrating one, and prompt patterns worth passing on.

Last reviewed September 3, 2026.

Something wrong or missing? Tell us or contact support.