Skip to main content
Glama

Get WhatsApp campaign

get_whatsapp_campaign
Read-onlyIdempotent

Get one WhatsApp campaign with its progress: stats counts recipients by status (queued, sending, sent, delivered, read, failed, and skipped_* for contacts deliberately not messaged: opted out, Meta frequency cap, missing variable, region restricted, no WhatsApp identity), plus its send window, pace and daily cap. failure_reason says why a failed campaign stopped; paused_until is a cooldown Meta asked for. replies_count is how many recipients replied; lead_stats counts their replies by lead stage: hot and warm are qualified, cold, needs_review (a person should look), opted_out, unscored (not assessed). Empty when reply qualification is off. Name stages in the reply language (in Spanish: caliente, tibio, frío, por revisar, dado de baja, sin calificar).

Input Schema

NameRequiredDescriptionDefault
fieldsNoOptional: return only these fields of each record.
campaign_idYesCampaign id as returned by list_whatsapp_campaigns.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.2/5.0
Behavior5/5

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

Annotations already declare this as a safe read-only, idempotent, non-destructive operation. The description adds substantial behavioral context beyond that: it explains stats counts, failure_reason, paused_until cooldowns, replies_count, lead_stats stages, and when lead_stats is empty. There is no contradiction with annotations.

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?

The description is front-loaded with the core purpose and the main stats summary, then proceeds to field-specific details. It is dense but each clause explains a return field or condition; the Spanish stage-name aside is specific but still tied to the lead_stats semantics.

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

Completeness5/5

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

There is no output schema, so the description carries the return-value burden. It explains the complex stats, failure, cooldown, and lead-stage fields, while annotations cover safety and the input schema fully documents parameters. An agent has enough information to invoke and interpret the result.

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 description coverage is 100%, so the baseline is 3. However, the description adds meaning for several values in the optional `fields` enum, such as stats, failure_reason, paused_until, replies_count, and lead_stats, helping an agent choose and interpret selectable fields beyond the enum names alone.

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: 'Get one WhatsApp campaign with its progress.' The cardinality 'one' distinguishes it from list_whatsapp_campaigns, and 'WhatsApp campaign' distinguishes it from other campaign getters like get_campaign or get_voice_campaign.

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?

The description gives no explicit when-to-use guidance or alternatives. It does not say to use list_whatsapp_campaigns to obtain the campaign_id, nor when this tool is preferable to get_campaign. Usage is only implied by the required campaign_id and the word 'one'.

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.

Resources