Skip to main content
Glama

Search Messages

ethora-messages-search-v2
Read-onlyIdempotent

Search chat messages within an app by query, filtering by room, author, and date range. Specify an app to retrieve relevant results from its message history.

Instructions

Search an App's chat messages (GET /v2/apps/:appId/messages/search). B2B / tenant-actor auth. Filter by room (chatId), author (fromUserId), and time window. Requires: a selected app (ethora-app-select) or an explicit appId.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qYesSearch query.
modeNo
sortNo
appIdNoRequired in B2B mode unless already selected via ethora-app-select.
limitNo
sinceNoISO date lower bound.
untilNoISO date upper bound.
chatIdNo
offsetNo
fromUserIdNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv26.9.3

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds the auth requirement (B2B/tenant-actor) and the app selection precondition, which are useful behavioral context. It does not disclose details like pagination behavior or response format, but the annotation coverage lowers the bar, so a 3 is appropriate.

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 two sentences, with the purpose and filters front-loaded in the first sentence and the requirement in the second. There is no redundant information or fluff, making it efficient and well-structured.

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

Completeness3/5

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

Given the tool has 10 parameters and no output schema, the description covers the essential purpose, filters, and auth requirement. However, it omits guidance on using mode and sort (e.g., when to choose fulltext vs substring, or relevance vs date), and does not mention pagination defaults or result format. These are gaps that an agent might need, so completeness is adequate but not thorough.

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 40%, with only q and appId described in the schema. The description adds meaning for chatId (room), fromUserId (author), and the time window (since/until), but does not explain mode, sort, limit, or offset. It compensates for some parameters but not all, so it adds partial value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Search' and the resource 'App's chat messages', with the endpoint. It mentions specific filters (room, author, time window) that distinguish it from a plain listing. However, it does not explicitly differentiate it from sibling tools like ethora-chats-history-v2 or ethora-messages-context-v2, so it is clear but not fully distinguishing.

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

Usage Guidelines3/5

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

The description provides context on when to use: it mentions B2B/tenant-actor auth and the prerequisite of a selected app or explicit appId. However, it does not state when not to use it or mention alternative tools for similar tasks, leaving the usage guidance implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools