Skip to main content
Glama

Set Presence

wa_set_presence

Announce a typing state ("composing"/"paused") to a chat, or set one of your accounts online/offline ("available"/"unavailable"). Fire-and-forget: there is no delivery confirmation.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
chatNothe chat (a phone number or a group/channel JID) to announce a typing state to; required for composing/paused, ignored for available/unavailable
stateYescomposing (show "typing…"), paused (stop), available, or unavailable
account_idYesthe account, as returned by wa_list_accounts

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
statusYesok (queued to the bridge) or refused (nothing was sent)
refusalNopresent only when status is refused

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. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations declare non-read-only, non-idempotent, non-destructive, so the safety profile is covered; the description adds real behavioral context with 'Fire-and-forget: there is no delivery confirmation,' telling the agent not to expect a verifiable result. It does not mention rate limits or whether state resets automatically.

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 sentences, no filler, with the dual-mode purpose front-loaded and the fire-and-forget caveat earning its place as a distinct behavioral fact.

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?

Given an output schema exists, the description needn't describe returns; combined with 100% schema coverage it conveys modes, the chat precondition, and the lack of confirmation. Nothing needed to invoke this tool 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%, so all three parameters are already documented, including the composing/paused vs available/unavailable split and the chat-required condition. The description repeats the same value mapping rather than adding syntax or format detail, so baseline 3 applies.

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?

Names a specific verb (announce/set) and resource (presence of an account or typing state in a chat), and enumerates the exact mode values. An agent can tell exactly what this tool does relative to siblings like wa_send_message, which actually delivers content.

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?

Explains the two operating modes and the conditional requirement that chat is needed for composing/paused but ignored for available/unavailable. No explicit alternatives are named, but no sibling overlaps, so the guidance is sufficient.

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