Skip to main content
Glama

List AI Voice-Agent Calls

wa_ai_list_calls
Read-only

List this workspace's AI voice-agent calls, newest first: outbound calls started with wa_ai_call_start and inbound WhatsApp calls answered by a preset whose answers_inbound is true (direction says which; from is the caller of an inbound call). Use a call_ref with wa_ai_call_get for the transcript and recording link.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNohow many to return, 1-100; defaults to 25
beforeNoa call_ref from the previous page, to list older calls; omit for the newest

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
nextNopass as before for the next, older page; absent on the last page
callsYesAI calls, newest first — outbound ones you started and inbound ones an answering preset took; each call_ref works with wa_ai_call_get
refusalNopresent only when the request was declined

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedOutput schema / properties / refusal / properties / account_status
      Added value: +{
      +  "description": "when the number is not working: its status — starting, not_running, whatsapp_down, suspended, pairing, unlinked or locked",
      +  "type": "string"
      +}
    • addedOutput schema / properties / refusal / properties / account_status_reason
      Added value: +{
      +  "description": "the detail of account_status, e.g. no_egress, stopped, no_plan",
      +  "type": "string"
      +}
    • addedOutput schema / properties / refusal / properties / since
      Added value: +{
      +  "description": "when the number stopped working, RFC3339, when known",
      +  "type": "string"
      +}
  2. Added

TDQS

A4.3/5.0
Behavior4/5

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

Annotations only declare readOnlyHint and idempotentHint=false, so the description usefully adds ordering ('newest first'), the pagination direction (omit 'before' for the newest), and the meaning of the direction/from fields in results. It does not cover auth requirements or any rate/limit behavior, but the added behavioral context is substantive.

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?

Two tight sentences: the first front-loads scope and ordering, the second routes the agent to the next tool. No filler, no restatement of the title, and the most decision-relevant fact (which calls are included) comes first.

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?

With an output schema present, return values need not be documented, and the description covers what remains: included call types, sort order, pagination via the previous-page call_ref, and the follow-up tool. Nothing an agent needs to invoke this correctly is missing.

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 description coverage is 100% for both parameters, so 'limit' and 'before' are already fully explained in structured data; that establishes a baseline of 3. The description only loosely reinforces the cursor concept by tying call_ref to wa_ai_call_get, adding little syntax or format detail beyond 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?

States a specific verb and resource ('List this workspace's AI voice-agent calls'), then precisely delimits the returned set: outbound calls from wa_ai_call_start plus inbound calls answered by a preset with answers_inbound true. That definition, combined with the sibling tools named (wa_ai_call_start, wa_ai_call_get), lets an agent distinguish this from the generic wa_list_calls without opening a schema.

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?

Gives clear routing guidance for the follow-up step: take a call_ref to wa_ai_call_get for transcript and recording. The inclusion criteria (which calls appear) are also effectively usage guidance. It stops short of explicitly contrasting with the sibling wa_list_calls, so it is strong but not fully exhaustive.

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