Skip to main content
Glama

AiSensy MCP by usefulapi

Update contact

aisensy_update_contact
DestructiveIdempotent

WRITE: change a contact's name, custom attributes, WhatsApp opt-in status or blocked status. Setting opted_in=false stops campaign messages to that person; blocked=true blocks them. Only the fields you pass change. PATCH /project/{project_id}/contact/{contact_id}.

Input Schema

NameRequiredDescriptionDefault
nameNo
blockedNoWhether the contact is blocked.
opted_inNoWhether the contact accepts WhatsApp notifications.
attributesNoContact attributes as name → text value. AiSensy ignores attribute names that do not exist in the project.
contact_idYesAiSensy record id (as returned by the list tools).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare this is a write, destructive, open-world, idempotent operation. The description adds meaningful behavioral context: opted_in=false stops campaign messages and blocked=true blocks the contact, plus partial-update semantics. It does not mention permissions or reversibility, but it adds real value beyond the annotations.

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?

The description is compact and front-loaded with 'WRITE:'. Every sentence contributes: fields changed, operational consequences, partial-update behavior, and the endpoint.

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?

Given the annotations and lack of an output schema, the description provides enough to invoke the tool correctly, including field effects and partial-update behavior. It could be more complete with permission requirements or expected return behavior, but those are minor gaps for this update operation.

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 80%, so the schema already documents most parameters. The description still adds useful meaning by identifying the updatable fields and explaining the consequences of opted_in and blocked, while the endpoint clarifies contact_id usage. Nested attributes semantics are left mostly to the schema.

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?

The description states a specific verb and resource: change a contact's name, custom attributes, opt-in status, or blocked status. It also names the PATCH endpoint, making clear this is an update rather than create/get/find contact operations among its siblings.

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 clearly indicates use for changing existing contacts and adds the important partial-update rule that only passed fields change. It does not explicitly contrast against alternatives like aisensy_get_contact or aisensy_create_contact, but the operation is unambiguous.

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.