Skip to main content
Glama

WhatsApp Forward Message

whatsapp_forward_message
Destructive

Forwards one WhatsApp message (text, document, image, video or voice note/audio) to another chat, marked as forwarded. chat_id and message_id come from whatsapp_read_messages; to_chat_id MUST come from whatsapp_list_chats — never fabricate IDs. This is a write operation: the first call (confirm=false) returns a preview without sending; set confirm=true to actually send.

Input Schema

NameRequiredDescriptionDefault
accountNoWhich linked WhatsApp account to use: its label or id from whatsapp_list_accounts. Leave it out to use the default account.
chat_idYesChat ID the message is in, from whatsapp_read_messages
confirmNoMust be true to actually send. Without it, returns a preview.
rememberNoWith confirm: true, also stop asking for this kind of action from now on. Only when the person said so ("don't ask again"). The person can revoke it in LMCP or with set_always_allowed.
message_idYesmessage_id of the message to forward, from whatsapp_read_messages
to_chat_idYesChat ID to forward it to, from whatsapp_list_chats

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=false and destructiveHint=true, and the description reinforces rather than contradicts this by naming it a write operation. It adds genuinely new behavioral context beyond annotations: the preview-then-confirm gate and the ID provenance constraint.

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?

Three sentences, front-loaded with the core action, then ID sourcing, then the write/confirm mechanics. Every clause carries decision-relevant information.

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, full schema description coverage and rich annotations, the description only needs to supply the call workflow and ID provenance — both present. Nothing an agent needs to invoke it correctly is absent.

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 100%, so the baseline is 3; the description goes slightly further by tying chat_id/message_id/to_chat_id to their producing tools and stressing 'never fabricate IDs'. It does not add meaning for the remember parameter, which is only covered in 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 ('forwards'), a specific resource (one WhatsApp message) and enumerates supported media types, immediately distinguishing it from whatsapp_send_message / whatsapp_send_file. The 'marked as forwarded' clause captures the semantic difference from a plain send.

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

Usage Guidelines5/5

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

Explicitly names the source tools for each ID (whatsapp_read_messages for chat_id/message_id, whatsapp_list_chats for to_chat_id) and forbids fabricating IDs, plus spells out the exact two-step call sequence (confirm=false preview, then confirm=true). Little is left to inference.

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