Skip to main content
Glama

mark_read_by_search

Destructive

Batch-mark emails as read or unread by folder, sender, subject, or date range. Preview the affected count with a dry run before confirming to avoid losing track of unseen messages.

Instructions

条件に一致するメールをまとめて既読(または未読)にする。

mark_messages_read の大量版。メールは移動しないので、居場所も 短縮IDも変わらない。既定は dry_run=True で件数を数えるだけ。

注意: 既読/未読は「まだ見ていない」という情報そのものなので、 まとめて既読にすると何が未処理だったかは復元できない。 実行前に必ず対象と件数を利用者に示して確認を取ること。

Args: folder: 対象フォルダ。省略するとメールボックス全体。 from_address: 差出人の部分一致(アドレスと表示名の両方を見る)。 subject_contains: 件名の部分一致。 since: この日以降 YYYY-MM-DD。 until: この日まで(その日を含む) YYYY-MM-DD。 read: True(既定)で既読、False で未読に戻す。 max_messages: 1回で処理する上限。既定5000、上限25000。 dry_run: True(既定)なら件数を数えるだけ。False で実際に変更する。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
readNo
sinceNo
untilNo
folderNo
dry_runNo
from_addressNo
max_messagesNo
subject_containsNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior5/5

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

The description adds significant behavioral context beyond annotations: it specifies that emails are not moved (location and short ID unchanged), explains the irreversibility of the read status change, and details the dry_run default behavior. The annotations already mark it as destructive, but the description enriches that with concrete consequences.

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?

The description is well-structured and appropriately sized. It begins with a one-line summary, then provides a sibling comparison, safety warning, and a clear parameter list. Every sentence serves a purpose, and the front-loaded summary immediately conveys the core function.

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 the tool's complexity (8 parameters, destructive behavior, bulk operation), the description is complete. It covers purpose, sibling differentiation, safety considerations, parameter details, dry_run default, and the fact that emails are not moved. The presence of an output schema means return values do not need to be described. All necessary context is present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description fully compensates by providing detailed explanations for all 8 parameters in an 'Args' section. It covers partial matching for from_address and subject_contains, date formats for since/until, the meaning of read, max_messages limits (default 5000, max 25000), and dry_run behavior. This adds substantial meaning that the schema alone lacks.

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 clearly states the tool's function: bulk mark emails as read/unread based on search conditions. It explicitly distinguishes itself from the sibling 'mark_messages_read' by calling itself a 'bulk version', making the purpose and differentiation very clear.

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?

The description provides explicit guidance: it is the bulk version of mark_messages_read, advises to use dry_run first to preview count, and warns about the irreversibility of marking many messages as read. It includes a strong recommendation to show the target and count to the user before execution, which is a clear usage guideline.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ma2no4413/outlook-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server