Skip to main content
Glama

Zalo Read Messages

zalo_read_messages
Read-only

Reads recent Zalo messages that Local MCP captured while linked. Optionally pass thread (a thread id from zalo_list_chats) to read one conversation. NOTE: Zalo's web protocol can't backfill old history — this returns messages received since Local MCP started listening (right after zalo_connect). Requires Zalo linked; otherwise returns an actionable connect hint, never a silent empty.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMax messages to return (default 50).
threadNoThread id (from zalo_list_chats) to filter to one conversation; omit for all.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added
  2. Removed
  3. Added

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already mark the tool read-only and non-destructive, but the description adds genuinely non-obvious behavior: Zalo's web protocol cannot backfill, results are limited to messages captured after zalo_connect, and failures produce an actionable connect hint rather than a silent empty result.

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 carry all the essential information: what the tool reads, how to filter, and the critical temporal and failure caveats. There is no redundancy or filler; every clause earns its place.

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

Completeness4/5

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

For a read-only tool with two optional parameters, the description covers prerequisites, temporal scope, and failure behavior. It does not describe the exact return shape, and with no output schema that small gap prevents a perfect score, but the agent has enough to call it correctly.

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 100%, so both parameters are already well documented. The description's mention that `thread` comes from zalo_list_chats restates the schema rather than adding new meaning, which fits the baseline of 3.

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 uses a specific verb and resource: "Reads recent Zalo messages that Local MCP captured while linked." It clearly scopes the tool to a capture window, which separates it from generic messaging readers and from zalo_search_messages by noting that old history cannot be backfilled.

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?

The description gives clear usage context: pass `thread` from zalo_list_chats to filter, and expect an actionable connect hint if Zalo is not linked. It lacks an explicit "when not to use" or a pointer to a search alternative, but the selection context is otherwise solid.

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