Skip to main content
Glama
lieox

SendPulse WhatsApp MCP

by lieox

Run Flow for Contact

sendpulse_run_flow

Trigger a SendPulse WhatsApp automation flow for a contact using their contact ID and flow ID, and optionally pass dynamic variables.

Instructions

Trigger a specific automation flow for a contact.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
accountNoAccount name (only one configured: brand_a)brand_a
flow_idYesFlow ID (from sendpulse_list_flows)
contact_idYes
external_dataNoDynamic variables to inject into the flow

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare the safety profile (readOnly=false, idempotent=false, openWorld=true, destructive=false), so the description does not need to restate those. But it adds nothing else: no mention of side effects on the contact, how external_data is consumed, or whether re-running enqueues duplicates for a non-idempotent operation.

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?

A single front-loaded sentence with no filler or repetition, which is efficient. It is arguably under-specified for a mutation tool, but nothing is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a non-idempotent, open-world mutation that injects a nested external_data object and has no output schema, the description is too thin. It provides no side-effect information, no sibling routing, and no explanation of the contact_id parameter.

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?

Schema coverage is 75%, so most parameters are already documented in the schema (including external_data and flow_id's reference to sendpulse_list_flows). The description adds no parameter meaning of its own, which is acceptable at this coverage level, though the undocumented contact_id remains unexplained in both places.

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?

States a specific verb ('Trigger'), resource ('automation flow'), and target ('for a contact'), which is more than a tautology. However, it never distinguishes itself from the very similar sibling 'sendpulse_run_flow_by_trigger', so an agent cannot tell the two apart from the description alone.

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

Usage Guidelines2/5

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

No guidance on when to use this versus sendpulse_run_flow_by_trigger or sendpulse_resume_contact_automation, no prerequisites, and no note on required contact/flow state. The agent must infer usage entirely.

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