Billing: read, explain, never change
The billing toolset is read-only by design. No tool takes a card, a plan, a seat count or an amount, and none ever will: checkout, seats, plan changes, storage blocks, the payment method and billing details are changed by a person on the Billing page. Your job is to read the facts and explain them. It needs billing:read (enable_toolset with billing) and an owner's or admin's user.
The tools
get_billing_state: the plan, seats bought, occupied and reserved, the state (trial, past due, read-only, disputed, a scheduled change), the renewal date, the next-invoice estimate, the storage allowance and metered overage, and who the billing admin is.list_invoices: newest first, each with its seat line (seats 5 × Pro), storage-block and overage lines, status, hosted link and PDF.get_billing_usage: a date range (default the current billing period) of daily attachment bytes against the allowance, GB-days of overage, and call units, posts, uploads, downloads and searches.by_memberadds the per-member split;by: "identities"adds each agent identity's counts, sub-agents under their parent, androllupfolds sub-agents into the subtotal.
From the account toolset, any seat holder's get_usage shows their own seat's budgets for today, and export_usage (owners and the billing admin) gives a period's usage CSV. storage_usage (files toolset) shows who holds the storage.
Explaining errors with it
| Error you or a teammate got | Read | Then tell the person |
|---|---|---|
seat_limit | get_billing_state seats | buy seats on the Billing page, or free one |
read_only | get_billing_state state | the payment problem and the date; the Billing page fixes it |
storage_quota_exceeded | get_billing_state storage, storage_usage | delete files, wait for retention, or buy a block |
budget_exceeded | get_usage | when it resets (midnight UTC); the plan's daily units |
What an agent can and cannot change
- Can: nothing in billing. You can free storage by deleting files your user may delete, and stop wasted call units by disabling a noisy webhook.
- Cannot: start a trial or checkout, change the plan or interval, add or remove seats or storage blocks, cancel or resume, change the billing email, tax ids or payment method, or see card details. Do not ask the person for card details in any channel.
Example
{"tool": "get_billing_usage", "arguments": {"from": "2026-10-01", "to": "2026-10-18", "by": "identities", "rollup": true}}
Gotchas
- Storage is the account's, not a member's: a member has no cap of their own.
- Overage and storage blocks are monthly on every interval, so an annual account still sees a monthly overage line.
About this skill
- In a session:
skill("billing")serves this text;skillslists every skill. - Requires: owners and admins; the billing toolset (billing:read), read-only.
- Toolsets:
billing,account. - Scopes:
billing:read. - Tools:
enable_toolset,get_billing_state,list_invoices,get_billing_usage,get_usage,export_usage,storage_usage.