Skip to main content
Glama

Set up or update the business quoting profile

setup_trade

Create a business, or update its saved settings (call with trade_key to update). Saves the rates and rules every quote uses: day and hour rates, labourer rate, materials markup, VAT registration and number, CIS, deposit rule, validity, payment terms, standard exclusions, brand colour, logo (https link or base64; PNG or JPEG for the PDF), quote number prefix, price book. On first call returns trade_key ONCE: it is shown only once and every other tool needs it. Also returns nero_trade_ref, the same identity the Nero Work exchange and Spark Pack use. Money in pounds.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "setup_trade"
  }
}

Input Schema

NameRequiredDescriptionDefault
emailNo
phoneNo
tradesNoRequired on first setup.
addressNo
depositNoDeposit rule. basis percent (with percent), fixed (with amount in pounds), materials (deposit equals the materials total), or none. no_deposit_under: no deposit on quotes below this total in pounds.
websiteNo
day_rateNoThe trade's own charge-out rate per day, pounds, before VAT.
logo_urlNohttps link to the logo (PNG best, JPEG fine, SVG shows on the phone page only). Under 400 KB.
postcodeNo
hour_rateNoPer hour, pounds. If only one of day_rate and hour_rate is set the other is worked out from hours_per_day.
trade_keyNoOmit to create a new business. Give it to update an existing one (only the fields you send change).
vat_numberNo
logo_base64NoThe logo file as base64, instead of logo_url.
price_itemsNoMaterials the trade buys often, saved to their price book. Each: code (short id, optional), description, unit, unit_cost (pounds, what they pay), cost_includes_vat, markup_percent (optional, overrides the default).
brand_colourNoHex colour, for example #0B5FFF. If a logo is given and no colour, one is taken from the logo.
company_nameNoRegistered company name if a limited company.
display_nameNoBusiness name customers see. Required on first setup.
licence_bodyNoScheme or registration body: niceic, napit, elecsa, stroma, gas_safe, oftec, hetas, fensa, certass, trustmark, nfrc, fmb, other.
quote_prefixNoLetters before the quote number, for example BLE gives BLE-0001. Default from the business initials.
accent_colourNo
hours_per_dayNoDefault 8.
payment_termsNoShown on every quote, for example "Deposit to book, balance on completion by bank transfer."
price_displayNoitemised (default) shows quantity and price per line; sections shows one price per section (labour, materials) with the lines listed.
validity_daysNoDefault 30.
cis_registeredNo
company_numberNo
licence_numberNoRegistration number with that body (Gas Safe number for gas engineers).
vat_registeredNoRequired on first setup. If false, no VAT is ever added.
labourer_day_rateNoCharge-out day rate for a mate, labourer or apprentice.
standard_exclusionsNoThings this business never includes unless stated, shown on every quote.
materials_markup_percentNoAdded to what materials cost the trade. Default 15.
use_suggested_exclusionsNoAdds a short set of common exclusions for the trade(s), for example plastering after chasing for electricians.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds substantial behavior beyond the annotations: the trade_key is returned only ONCE and is required by every other tool, nero_trade_ref carries the same identity into Nero Work and Spark Pack, and all money is in pounds. It also discloses consequences such as VAT never being added if vat_registered is false and the logo needing PNG/JPEG for the PDF. Nothing here contradicts readOnlyHint=false, destructiveHint=false, or openWorldHint=true.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the create-vs-update rule, then the field roll-up, then the return behavior — an efficient ordering for a 32-parameter tool. The middle sentence is a long comma run of field names, which is dense but each element earns its place as a scope statement; nothing is redundant with the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, and the description compensates by naming the two return values (trade_key, nero_trade_ref) and the once-only nature of the former — the single most consequential fact for calling this correctly. For a 32-parameter setup mutation with nested deposit and price_items objects, this covers what an agent needs to invoke and sequence it, though error/validation behavior is unaddressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 32 parameters at 72% schema coverage, the schema does most of the field-level work, but the description adds meaning by grouping the fields into rates/rules/branding/price book and by fixing the money unit as pounds across all numeric inputs. The update semantics (only fields you send change) and the one-time trade_key are reinforced at the tool level rather than left in a single parameter description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource plus its dual mode: "Create a business, or update its saved settings (call with trade_key to update)." It then enumerates the concrete settings captured (rates, markup, VAT, CIS, deposit, terms, branding, price book), so an agent knows exactly what this tool owns versus get_trade or save_price_items.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit branching rule for the two modes (omit trade_key to create, supply it to update with partial changes), and establishes the prerequisite: the returned trade_key is needed by every other tool. It stops short of naming an alternative for price-book maintenance or stating what to do when the key has been lost, so it is clear guidance rather than exhaustive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.