Skip to main content
Glama
tomboone

Yahoo Mail MCP Server

by tomboone

Server Quality Checklist

58%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v3.0.0

  • Disambiguation5/5

    Each tool targets a distinct action or resource: listing, reading, deleting, searching, archiving, moving, and modifying flags/read state. There is no overlap between tool purposes; even paired operations like mark_as_read/mark_as_unread are clearly delineated.

    Naming Consistency5/5

    All tool names follow a consistent snake_case verb_noun pattern (e.g., list_emails, delete_emails, move_emails) with a few verb_as_adjective variants (mark_as_read, mark_as_unread). The naming is uniform and predictable across the entire set.

    Tool Count5/5

    With 11 tools, the server provides a focused but comprehensive set of email management operations. The count is well within the ideal range and each tool serves a clear purpose without unnecessary redundancy.

    Completeness4/5

    The core email lifecycle (list, read, search, organize, flag, delete) is well covered. Missing send/compose and folder management (create/rename/delete) are notable gaps, but the available operations cover the primary use case of reading and organizing emails.

  • Average 3.8/5 across 11 of 11 tools scored. Lowest: 3.2/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 25 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is failing
  • Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.

    If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.

    MCP servers without a LICENSE cannot be installed.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

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

    No annotations are provided. The description only states the action 'mark emails as unread' and an unrelated fact about UIDs being permanent. It fails to disclose effects like flag state changes, reversibility, or required permissions.

    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 two short sentences, front-loads the action, and contains no filler. The note about UIDs is brief and relevant.

    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 simple mutation tool with well-described parameters, the description is minimally viable. However, it lacks usage context and any mention of interactions with other email operations. Given the absence of annotations and output schema, it leaves some gaps but does not feel severely incomplete.

    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 covers both parameters with descriptions. The description adds value by explaining that UIDs are permanent identifiers, which clarifies why they are used as the primary key. This goes beyond the schema's simple 'Array of UIDs to mark as unread'.

    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 uses the specific verb 'Mark' with resource 'emails' and indicates the method 'using UIDs'. It clearly conveys the action of setting emails to unread, which inherently distinguishes it from the sibling mark_as_read. However, it doesn't explicitly name alternatives, so slightly below perfection.

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

    Usage Guidelines2/5

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

    No guidance on when to use this over mark_as_read, archive, or other actions. The description lacks context about use cases or prerequisites, such as requiring UIDs from a prior list operation.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It notes that UIDs are permanent identifiers, which gives some context about the stability of references, but it does not disclose side effects, reversibility, idempotency, or permission requirements. As a mutation tool, this is a significant gap.

    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 two short sentences with no filler. The first sentence states the action and method; the second provides a brief auxiliary note about UIDs. Both sentences earn their place, and the structure is front-loaded with the core purpose.

    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 simple mutation tool with no output schema and no annotations, the description is thin but adequate. The schema covers all parameters, and the tool's operation is straightforward. However, it lacks usage context and behavioral details like idempotency or folder handling beyond the schema, leaving some gaps for an agent.

    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?

    The input schema already fully describes both parameters (uids and folder) with default values and coverage 100%. The description adds a note that UIDs are permanent, which reinforces the semantics of the uids parameter but does not provide substantial new information. Baseline 3 is appropriate when schema covers the parameters.

    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 action ('Mark emails as read') with a specific method ('using UIDs'). It distinguishes from sibling tools like mark_as_unread by the explicit action, though it does not name alternatives. The phrase 'UIDs are permanent identifiers' adds useful context about the identifier mechanism.

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

    Usage Guidelines2/5

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

    There is no guidance on when to use this tool versus alternatives such as mark_as_unread, flag_emails, or archive_emails. The description only states what the tool does, leaving the decision of when to invoke it entirely to the user. No exclusions or contextual hints are provided.

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

  • Behavior2/5

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

    With no annotations, the description must fully disclose behavioral traits. It states that emails are moved to the Archive folder and that UIDs are permanent identifiers, which is a basic mechanism note. However, it omits important side-effect information such as permission requirements, whether the operation is reversible, or what happens to read/unread state, similar to the 'update_drive' example. The description does not contradict annotations (none exist), but it is too thin to provide robust transparency.

    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 extremely concise: two short sentences with no redundant wording. Every phrase earns its place, and the UID clarification is a valuable addition, making it well-structured for quick consumption.

    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 simple tool with strong schema coverage and a clear purpose, the description provides adequate foundational information. However, it lacks explicit guidance on alternatives (e.g., 'move_emails') and does not describe potential side effects or return values, which are not covered by an output schema. It is minimally sufficient but leaves gaps that could affect correct invocation in ambiguous situations.

    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 100%, so the schema already explains both parameters (uids and folder). The description adds only the note that UIDs are permanent identifiers, which is a slight semantic enhancement but does not materially improve parameter understanding. This aligns with the baseline score of 3 for high schema coverage.

    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 action: move emails to the Archive folder using UIDs. It specifies the resource (emails), the target (Archive folder), and the mechanism (UIDs), making the purpose easy to understand. However, it does not explicitly differentiate from the sibling tool 'move_emails', which could perform a similar operation, so it loses a point for lacking clear sibling distinction.

    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 phrase 'for long-term storage' provides clear context for when to use this tool: when needing to archive emails permanently. It does not explicitly mention alternative tools or exclusion scenarios, but the intended use case is reasonably clear. Sibling tools like 'move_emails' are not referenced, preventing a higher score.

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

  • Behavior3/5

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

    With no annotations, the description carries the full burden. It does disclose an important behavior: UIDs are permanent identifiers that don't change when emails are deleted. This adds value beyond the obvious search operation. However, it does not mention that the operation is read-only, or address other behavioral aspects like ordering, pagination, or error scenarios, leaving gaps.

    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 concise at two sentences, with the main purpose front-loaded. It avoids verbosity, though the phrase 'using UIDs' is slightly redundant and could be cleared up. The structure is efficient for a search tool.

    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?

    Despite lacking an output schema and annotations, the description provides key information about the return type (UIDs) and their stability, which is crucial for downstream operations. It does not detail return format or pagination, but the parameter schema covers filtering details. Given the tool's moderate complexity (7 parameters), the description is fairly complete but not exhaustive.

    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?

    The schema covers 100% of parameters with meaningful descriptions, so the description does not need to explain parameter meanings. It does not add any parameter-specific context beyond what the schema provides, so the baseline of 3 is appropriate.

    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 starts with 'Search emails using UIDs with advanced filters,' which clearly identifies the action and resource. However, the phrase 'using UIDs' is slightly ambiguous—it could be interpreted as requiring UIDs as input, but the next sentence clarifies that UIDs are returned. It distinguishes itself from siblings like list_emails by emphasizing advanced filters and the UID return format.

    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 implies usage by stating 'Get UIDs from results for subsequent operations,' suggesting when to use this tool (to find emails for later actions). However, it does not explicitly contrast it with sibling tools like list_emails or state when not to use it. The guidance is implicit rather than explicit.

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

  • Behavior3/5

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

    No annotations are provided, so the description must disclose behavior. It adds useful context that UIDs are permanent identifiers, which helps the agent understand they are stable references. However, it does not mention side effects, required permissions, or whether the flag is additive or overwrites existing flags.

    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 only two sentences, front-loads the main action, and contains no filler or repetition.

    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 simple tool with two parameters and no output schema, the description covers the core action and identifier semantics. It lacks details on folder usage but the schema handles that. The description is adequately complete for this low-complexity tool.

    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?

    The input schema already describes both parameters with 100% coverage, so the baseline is 3. The description adds a small nuance by explaining that UIDs are permanent, but it does not elaborate on the folder parameter beyond the schema's default.

    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 action verb ('Flag') and resource ('emails') with a clear qualifier ('important/starred'), distinguishing it from sibling tools like unflag_emails and mark_as_read.

    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 states the action and method ('using UIDs') but does not mention when to prefer this over alternative tools, such as mark_as_read or unflag_emails. There is no explicit when-not-to-use guidance, though the purpose is straightforward.

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

  • Behavior3/5

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

    With no annotations provided, the description carries the full burden for behavioral disclosure. It discloses return content (UIDs and metadata: size, flags, attachment status), but does not state whether the operation is read-only, affects read status, or has pagination/ordering behavior beyond the schema's offset/count. This is adequate but not rich.

    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 two concise sentences, front-loaded with the action and resource. Every word earns its place: 'recent' scopes behavior, 'Yahoo Mail folder' identifies the platform, and the return type is summarized without fluff.

    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 simple list tool with fully documented parameters and no output schema, the description is nearly complete. It explains what is returned and a key characteristic ('recent'). It doesn't explicitly mention sorting order or that it does not modify emails, but given the tool's simplicity and schema coverage, this is a minor gap.

    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 100%: every parameter (count, folder, offset) has its own detailed description with defaults. The tool description adds no additional parameter context, so the baseline of 3 applies — the schema does all the heavy lifting.

    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 a specific verb and resource: 'List recent emails from a Yahoo Mail folder.' It distinguishes itself from siblings like read_email (individual email), search_emails (query-based search), and list_folders (folder enumeration). The return value overview (UIDs and metadata) further clarifies the tool's purpose.

    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 implies usage for listing emails from a folder but does not explicitly contrast with search_emails or other alternatives. The schema's folder parameter mentions 'Use list_folders,' but the description itself offers no direct guidance on when to choose this tool over siblings. It provides clear context but lacks exclusions.

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

  • Behavior2/5

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

    With no annotations, the description carries full responsibility for behavioral disclosure. It only states the action and a note about UID permanence; it does not mention side effects, permissions, reversibility, or behavior for already-unflagged emails. As a mutation tool, this lack of transparency is a significant gap.

    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 two short sentences that immediately convey the core action and input method. The extra note about UID permanence is relevant and not redundant; no words are wasted.

    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 simple mutation tool with a complete schema and no output schema, the description covers the essential purpose and input. It lacks behavioral details (permissions, side effects) but those are penalized separately. The description is adequate, though it could mention that the specified folder must contain the UIDs.

    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?

    The schema already fully describes both parameters (100% coverage). The description adds value by noting UIDs are permanent identifiers, which helps the agent understand UIDs can be reused across calls. This goes beyond the schema's basic definitions, though the addition is modest.

    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 'Remove flag/star from emails using UIDs', using a specific verb and resource. It distinguishes itself from sibling tools like flag_emails (adds flags) and mark_as_read (changes read status) by specifying the exact action and input method.

    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 implies the tool is used for unflagging emails but provides no explicit guidance on when to use it versus alternatives. The mention of UIDs suggests programmatic use, but there are no when/when-not statements or references to sibling tools.

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

  • Behavior3/5

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

    With no annotations, the description carries the transparency burden. It adds useful behavior about UIDs being permanent and unaffected by deletions, but does not disclose potential error handling, return format, or whether reading affects email state. This is moderate transparency.

    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 two sentences, front-loaded with the core purpose, and every sentence provides necessary information. No filler or redundancy.

    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 simple 2-parameter read tool, the description gives enough context: what it does, how to get input, and a key behavior. It does not explicitly state return contents, but the purpose is clear from the name and description. Missing edge-case details, but acceptable.

    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?

    The input schema already provides full parameter descriptions (100% coverage). The description repeats schema info about UIDs being permanent, adding no meaningful new semantics beyond what the schema already states. Baseline 3 is appropriate.

    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 reads email content using UIDs, with a specific verb and resource. It distinguishes itself from sibling tools like list_emails and search_emails by focusing on content retrieval and explicitly referencing how to obtain UIDs.

    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 provides clear workflow context by instructing to get UIDs from list_emails or search_emails, implying this tool is used after those. It does not explicitly state exclusions or contrast with alternatives, but the reference to sibling tools gives sufficient usage guidance.

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

  • Behavior4/5

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

    No annotations provided, so description must carry the burden. It discloses the key behavioral trait that this is a soft delete, moving emails to Trash and being recoverable, which is critical for a delete operation. It could add more detail about permissions or failure behavior, but the soft-delete disclosure is substantive.

    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?

    Two sentences, front-loaded with the verb and resource. No redundant words; every phrase adds meaning.

    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 simple tool with 2 params and no output schema, the description covers the action, recoverability, and UID semantics. It lacks explicit return-value info, but that's not expected for a delete operation. Overall adequate given complexity.

    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 baseline is 3. The description adds value by clarifying that UIDs are permanent identifiers, which prevents misuse (e.g., assuming sequence numbers). It doesn't detail folder behavior, but schema already documents the default.

    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 action ('Move emails to Trash') and resource (emails by UIDs), and distinguishes from sibling tools like archive_emails by explicitly noting it's a soft, recoverable delete to Trash. It also adds context about UIDs being permanent identifiers.

    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 implies usage—delete to Trash when you need recoverable removal—but does not explicitly contrast with alternatives like move_emails or archive_emails. It offers a hint about UIDs being permanent, but no explicit when-to-use or when-not-to-use guidance.

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

  • Behavior3/5

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

    With no annotations, the description carries the burden of behavioral disclosure. It states the tool lists 'all available' folders, but does not clarify whether the result is a flat list or hierarchical, includes system folders, or what the return format is. This is a minimal but adequate disclosure for a simple read-only operation.

    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 a single, front-loaded sentence that directly states the tool's purpose without any wasted words.

    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 zero-parameter, simple list operation, the description is almost complete. It clearly states what is listed, but does not describe the return value structure (e.g., whether it's an array of strings or objects), which would be expected given the absence of an output schema. Still, it is sufficient for practical use.

    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?

    The tool has zero parameters, and the schema has no properties (100% coverage by default). The description does not need to explain parameters, so a baseline of 4 is appropriate.

    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: 'List all available IMAP folders/mailboxes in your Yahoo Mail account.' It specifies the verb (list), resource (IMAP folders/mailboxes), and scope (Yahoo Mail account), distinguishing it from sibling tools that operate on emails.

    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?

    While there is no explicit 'when to use' or alternative mention, the context is clear: this tool is for listing folders, whereas all siblings handle email operations. The purpose itself makes the usage obvious, and no exclusions are needed.

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

  • Behavior3/5

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

    With no annotations, the description must carry behavioral disclosure. It adds useful context that UIDs are permanent identifiers and points to list_folders, but it does not mention side effects like source folder behavior, reversibility, or error cases. This is moderate but not comprehensive.

    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 two concise sentences. The first states the core action and parameters; the second provides crucial context about UIDs and a practical usage tip. Every word earns its place, with no redundant content.

    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 tool with three simple parameters, no output schema, and no annotations, the description covers the essential action, key parameter semantics, and a prerequisite tool. It does not fully describe error conditions or return behavior, but it is adequate for the tool's apparent simplicity.

    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?

    The input schema already covers all parameters with descriptions (100% coverage). The description adds value by explaining that UIDs are permanent identifiers, which is not in the schema, and reinforces the use of list_folders for folderName. This goes beyond the baseline schema coverage.

    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 action: 'Move emails to a specified folder using UIDs.' It distinguishes from sibling tools like delete_emails or archive_emails by specifying the move operation. Mentioning UIDs and list_folders further pins down the resource and prerequisites.

    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 provides a clear usage hint: 'Use list_folders to see available folders,' which guides the agent on a necessary precursor step. It does not explicitly mention alternatives or when not to use this tool, but the context of permanent UIDs and folder listing gives practical usage guidance.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

yahoo-mail-mcp-server MCP server

Copy to your README.md:

Score Badge

yahoo-mail-mcp-server MCP server

Copy to your README.md:

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/tomboone/yahoo-mail-mcp-server'

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