Skip to main content
Glama
julioc-barros

imap-mail-mcp

set_flags

Mark or unmark email flags (seen, flagged, answered) for specified UIDs in a folder. Set True to add, False to remove, or omit to leave unchanged.

Instructions

Marca/desmarca flags em um ou mais UIDs: seen (lido), flagged (estrela/importante), answered. Passe True para adicionar, False para remover, omita para não alterar.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
seenNo
uidsYes
folderYes
accountNo
flaggedNo
answeredNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.2.1
    • addedInput schema / properties / account
      Added value: +{
      +  "default": "",
      +  "title": "Account",
      +  "type": "string"
      +}
  2. First observedv0.1.0

TDQS

B3.4/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full behavioral burden. It does disclose the core mutation semantics — a tri-state True/False/omit contract that tells the agent exactly how each flag is changed — which is the most important behavior here. It omits, however, any mention of permissions/auth needs, reversibility, whether unspecified flags are preserved, or what happens on partial failures across the UID list.

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?

Two sentences, no filler, and the flag enumeration plus the True/False/omit rule are front-loaded. It is efficient and earns its space, though the two clauses could be integrated slightly more tightly.

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?

For a 6-parameter mutation tool with no annotations and no output schema, the description covers the flag semantics well but leaves the folder/account/uids addressing context and the return behavior unexplained. An agent could invoke it correctly for the flag portion but would be guessing about account selection and multi-account scope.

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 0% across 6 parameters, so the description must compensate and it only partly does: it explains the semantics of seen/flagged/answered including the tri-state boolean logic, which is genuinely valuable beyond the bare titles 'Seen'/'Flagged'/'Answered'. The other three parameters (folder, uids, account) receive no explanation of format or accepted values, leaving half the surface documented by title alone.

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 states a specific verb + resource ('Marca/desmarca flags em um ou mais UIDs') and enumerates exactly which flags are affected (seen, flagged, answered). It is unambiguous about what the tool does, though it never names a sibling or scope boundary relative to them (e.g. vs move_email or read_email), so it stops short of the top band.

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?

It gives operational guidance for the flag values ('Passe True para adicionar, False para remover, omita para não alterar'), which is real usage direction. However there is no when-to-use-this-vs-alternatives guidance, no note on required permissions or prerequisites, and no statement of when NOT to use it. Usage is implied rather than framed.

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