Skip to main content
Glama

Getfly CRM MCP by usefulapi

Update customer

getfly_update_account
DestructiveIdempotent

WRITE: Update fields of an existing customer, found by its current customer code. Send only the fields to change. Names (relationship, country, province...) must match those configured in Getfly. Contacts and the type/source/industry lists are not editable here. PUT /api/v6.1/account.

Input Schema

NameRequiredDescriptionDefault
emailNo
websiteNo
birthdayNoyyyy-mm-dd.
sic_codeNoTax code.
ward_nameNo
descriptionNo
account_codeNoNew customer code, only to rename the code.
account_nameNo
country_nameNo
phone_officeNo
custom_fieldsNoCustom field values by field key.
district_nameNo
province_nameNo
relation_nameNo
current_account_codeYesThe customer's current code (account_code).
billing_address_streetNo
account_manager_usernameNoLogin name of the new managing user.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare the write/destructive/idempotent profile, so the description's added value is the partial-update rule (mitigating the destructive hint) and the hard constraint that relationship/country/province names must match values pre-configured in Getfly — a failure mode not encoded anywhere in the schema. It doesn't say what happens when a name doesn't match (error vs. silent no-op) or whether omitted fields are preserved, which is the main remaining gap.

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?

Four short sentences, zero filler, with the WRITE marker and lookup key front-loaded before the operational constraints. Every sentence carries distinct information: mode, identification, partial-update rule, value validation, exclusion list.

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 17-parameter mutation with no output schema and thin schema coverage, the description covers the highest-risk items: identification, partial update, constrained name values, and non-editable field groups. It stops short of covering failure behavior or what a successful update returns, and the majority of the 17 fields remain undocumented.

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

Parameters3/5

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

At 35% schema coverage across 17 parameters, the schema leaves most fields undescribed, and the description compensates only partially: it clarifies the lookup parameter (current_account_code), the rename case (account_code), and the value-space constraint on name fields. Undescribed fields such as email, website, description, billing_address_street, and custom_fields get no semantic help from either source.

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?

"WRITE: Update fields of an existing customer" states a specific verb (update), resource (customer), and scope (existing, field-level), and the HTTP verb/path (PUT /api/v6.1/account) pins the operation precisely. Against siblings like getfly_create_account, getfly_get_account, and getfly_list_accounts, an agent can immediately tell this is the mutation-by-lookup tool.

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?

"Send only the fields to change" defines the partial-update contract up front, and "Contacts and the type/source/industry lists are not editable here" is a concrete exclusion that redirects the agent away from fields it might otherwise guess at. What's missing is any routing advice toward a sibling (e.g., create_account for new customers, get_account to read before updating), so usage is clear but not fully comparative.

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.