Skip to main content
Glama

iContact MCP by usefulapi

Update contact

icontact_update_contact
DestructiveIdempotent

WRITE: change fields of one contact; only the fields you pass are sent. Setting status to donotcontact or deleted stops mail to that contact. POST /contacts/{contactId}.

Input Schema

NameRequiredDescriptionDefault
faxNo
cityNo
emailNoNew email address.
phoneNo
stateNo
prefixNoName prefix, e.g. Dr.
statusNoNew contact status.
streetNo
suffixNo
street2No
businessNoCompany name.
last_nameNo
contact_idYesiContact contact id.
first_nameNo
postal_codeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already flag destructiveHint=true and idempotentHint=true, so the description's real added value is the warning that setting status to donotcontact or deleted stops mail, plus the partial-update semantics. This is meaningful behavioral context beyond the annotations, though return shape and permission needs are not addressed.

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 'WRITE' and tight, no wasted sentences. The endpoint POST /contacts/{contactId} is mildly redundant but grounds the operation; overall efficient.

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 15-parameter mutation tool with annotations covering safety and no output schema, the description covers the key gotcha (donotcontact/deleted suppression) and partial-send behavior. Minor gaps on return values and full parameter guidance remain but are acceptable given annotation coverage.

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?

With only 33% schema description coverage across 15 params, the description compensates partially by explaining partial-update behavior and the consequence of the status enum values. It does not add meaning for the other 10+ undocumented fields, but the schema does carry types and constraints.

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 (change fields of one contact) and clarifies it is a WRITE operation. Clearly distinguishable from icontact_create_contact and the get/list siblings.

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

Usage Guidelines3/5

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

The 'only the fields you pass are sent' note implies partial-update usage, but there is no explicit when-to-use-vs-alternatives guidance (e.g., when to use this vs create_contact or set_subscription). Usage is inferred rather than stated.

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.