Skip to main content
Glama
e-arveldaja MCP Server

e-arveldaja MCP Server

by iseppo

Update Client

update_client
Idempotent

Update client fields by ID, with identity changes checked for duplicates; activation fields are rejected and non-stored sent fields are returned as ignored.

Instructions

Update client fields. Server-managed activation fields are rejected; use deactivate/reactivate tools. Identity changes (code, VAT, country, person type) pass the same identity and duplicate checks as create_client. The client is read back afterwards: sent fields it does not store are listed in ignored_fields (action updated_with_ignored_fields).

Input Schema

NameRequiredDescriptionDefault
idYesClient ID
dataYesObject with fields to update.
allow_duplicateNoAllow a registry code another live client (or the company itself) already uses (default false).
foreign_identity_attestedNoOperator attestation for a FOREIGN legal entity's identity, required when changing its identity fields (see create_client).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.29.2
    • addedInput schema / additionalProperties
      Added value: +false
  2. Changed2 schema fields changedv0.27.0
    • addedInput schema / properties / allow_duplicate
      Added value: +{
      +  "description": "Allow a registry code another live client (or the company itself) already uses (default false).",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / foreign_identity_attested
      Added value: +{
      +  "description": "Operator attestation for a FOREIGN legal entity's identity, required when changing its identity fields (see create_client).",
      +  "type": "boolean"
      +}
  3. First observedv0.18.1

TDQS

A4.2/5.0
Behavior5/5

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

Beyond the annotations (idempotent, non-destructive, closed-world), the description discloses that certain fields are rejected outright, that identity fields trigger duplicate/identity validation identical to create_client, and that a read-back occurs with an 'updated_with_ignored_fields' action reporting ignored_fields. This is exactly the kind of non-obvious mutation behavior an agent cannot infer from structured fields.

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?

Three tight sentences, front-loaded with the core action and the exclusion, then validation behavior, then return semantics. Every sentence carries information, though the final clause about ignored_fields/action is densely packed and could be split for readability.

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?

With no output schema, the description usefully explains the post-update read-back and the ignored_fields signal, and it covers the validation side effects of identity edits. Minor gaps remain around failure modes for an invalid id or permission requirements, but nothing critical for calling the tool correctly is missing.

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 baseline is 3; the description adds real meaning by naming which fields are identity-bearing (code, VAT, country, person type) and thus subject to duplicate checks, and by explaining that unstoreable fields surface in ignored_fields. It leaves allow_duplicate and foreign_identity_attested to the schema rather than elaborating further.

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

Purpose4/5

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

The description opens with a specific verb+resource ('Update client fields') and immediately narrows scope by excluding server-managed activation fields in favor of deactivate/reactivate tools. It is clearly a client mutation tool, distinguishable from siblings like deactivate_client or create_client, though the opening phrase alone is generic and only the following sentences supply the real scope.

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?

It gives an explicit when-not rule ('Server-managed activation fields are rejected; use deactivate/reactivate tools') and clarifies that identity changes follow create_client's checks, which routes the agent correctly between tools. It does not cover other adjacent choices such as update vs. delete_client, or when to set allow_duplicate, but the key exclusion is stated.

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

Deploy Server

Other Tools