Skip to main content
Glama

Workeey Quote Links

Revise a Quote Link

revise_quote_link
Destructive

Change a Quote Link that already exists: send the COMPLETE new quote (every field, exactly as for create_quote_link, not only the changes) together with the quote's manage_token. Start from the quote in the last entry of versions from get_quote_status, change what the user asked, and send all of it.

The customer link stays the same and now shows the new version, marked as updated. Earlier answers stay attached to the version they answered (an approval of version 1 shows as approved v1, quote since revised), and the customer can answer the new version. Same rules as create_quote_link: only prices the user gave you or agreed to from price_check; no links, email addresses (except business.email) or payment details; the customer's display name only. Returns the new version number and its totals. If it returns errors, each one names the field, the problem and the fix: apply every fix and call again.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "business": "<business>",
      "customer": "<customer>",
      "title": "<title>",
      "options": "<options>"
    },
    "name": "revise_quote_link"
  }
}

Input Schema

NameRequiredDescriptionDefault
taxNoOptional. Tax exactly as the user supplies it: Workeey never decides tax rules. Send ONE of rate_percent (applied to the chosen option plus the chosen add-ons), amount (a fixed tax amount) or note (for example "Tax not included"). Leave tax out if the user gave no tax information.
notesNoOptional. Anything else the customer should know: what is included, timing, access. No links, email addresses or payment details (Zelle, Venmo, Cash App, PayPal, bank or card numbers, crypto).
termsNoOptional. The business's terms, such as warranty or cancellation. No links, email addresses or payment details (Zelle, Venmo, Cash App, PayPal, bank or card numbers, crypto).
titleYesThe job, in a few words.
addonsNoOptional. Extras the customer can tick on top of the option they pick (up to 10).
sourceNoOptional. Which AI app is making this quote. Recorded as an unverified claim and never shown to the customer.
depositNoOptional. Deposit wording shown on the quote: percent OR amount, and an optional note. Text only: Workeey takes no payments.
optionsYesThe choices the customer picks between: 1 to 4 options (for example Standard and Premium), each priced on its own. A quote with a single price has one option. Workeey adds up every option, so send no totals.
businessYesThe user's own business, the one sending the quote. The customer sees these details marked as provided by the creator, not verified by Workeey.
currencyNoOptional. Three-letter ISO 4217 code of a currency with cents (2 decimals), like USD, CAD or EUR. Default USD. A currency without 2-decimal cents (JPY, KWD) isn't supported yet.USD
customerYesWho the quote is for: a display name only. Never the customer's phone, email or address; quote links get shared and stay in chat history.
locationNoOptional. Where the job is: city and state only, never the customer's street address.
exclusionsNoOptional. What the price does not include.
valid_untilNoOptional. The date the quote is valid until, YYYY-MM-DD. Default 30 days from today; at most 365 days ahead.
manage_tokenNoThe quote's private manage token: the long code after # in the private link (https://www.workeey.com/q/m/#<token>), returned as manage_token by create_quote_link. The whole private link is accepted too. Required, unless your MCP client already sends it as an Authorization: Bearer header.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Goes well past the annotations (destructiveHint=true, idempotentHint=false) by disclosing what is preserved: the customer link URL stays the same, prior answers stay bound to the version they answered, and the new version is marked updated. It also states the return value (new version number and totals) and the per-field error contract. The only gap is that it does not spell out what happens to fields omitted from the resend, though the COMPLETE-quote instruction implies full replacement.

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-loads the core instruction (complete quote plus manage_token) in the first sentence, then layers versioning behavior, content rules, and the error loop. Slight redundancy: the recap of banned content (links, emails, payment details) repeats restrictions already stated on notes, terms, and deposit.note in the schema.

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

Completeness5/5

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

For a 15-parameter, deeply nested mutation tool with no output schema, the description covers the missing pieces an agent actually needs: the source of truth for the current version, the full-replace contract, the token requirement, post-revision link behavior, and the return shape. Nothing essential is left unstated.

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?

Schema coverage is 100%, so the baseline is 3, but the description adds a non-obvious semantic the schema never states: this is a full replacement, not a patch, so every field must be resent. It also reinforces that manage_token is the authorization handle for an existing quote.

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 and resource ('Change a Quote Link that already exists') and immediately distinguishes itself from create_quote_link by referencing its exact field semantics. An agent can tell revision apart from creation without opening either schema.

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

Usage Guidelines5/5

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

Gives an explicit prerequisite workflow: pull the last entry of versions from get_quote_status, change only what the user asked, then resend the whole quote. It also names the governing rule set (same rules as create_quote_link) and the retry condition (apply every error fix and call again), leaving little to inference.

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.

Resources