Skip to main content
Glama

Agreements: change a draft agreement (price, services, client details)

agreement_update
Destructive

Change a drafted (not yet sent) agreement by talking: price, services, the client or contact details, start date, term or special terms. Same agreement, same preview link, which refreshes itself. Give only what changes.

Input Schema

NameRequiredDescriptionDefault
clientNoA different business (re-fills its details)
monthlyNoDollars
one_timeNoDollars
servicesNo
start_dateNo
term_monthsNo
agreement_idYes
contact_nameNo
custom_termsNoReplaces the special terms
contact_emailNo
contact_phoneNo
email_messageNo
crm_location_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior4/5

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

Annotations declare destructiveHint=true and idempotentHint=false; the description adds genuinely new context the agent can't get from the schema — that the update preserves the same agreement and preview link, and that the link self-refreshes. "Give only what changes" clarifies merge semantics rather than whole-object replacement. It does not say what makes the operation destructive or whether omitted fields are preserved vs. cleared.

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

Conciseness5/5

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

Three short sentences, zero filler, with the scope constraint front-loaded before the field list and the invocation rule last. Every clause carries information.

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?

For a 13-parameter mutation with no output schema, the description covers scope, merge behavior, and the preview-link consequence, which is most of what an agent needs. Gaps are the two unmentioned parameters and the absence of any statement about the refreshed preview containing changed pricing.

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 only 31% schema coverage across 13 parameters, the description has to compensate, and it largely does: it maps plain-language field names (price, services, client, contact details, start date, term, special terms) onto monthly/one_time, services, client, contact_*, start_date, term_months and custom_terms. It omits email_message and crm_location_id, which remain undocumented in both places.

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?

"Change a drafted (not yet sent) agreement" gives a specific verb plus resource and pins the lifecycle state, which is exactly the boundary against agreement_send / agreement_status. It then enumerates the mutable surface (price, services, client/contact details, start date, term, special terms), so an agent knows what this tool can and cannot touch.

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?

The "drafted (not yet sent)" qualifier tells you when this is applicable, and "Give only what changes" is a concrete partial-update instruction that steers correct invocation. It stops short of naming the alternative (e.g., use agreement_send once finalized, agreement_status to check state), so the exclusion is inferential rather than explicit.

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.