Skip to main content
Glama
fuyouai

@fuyouai/email-mcp

Official
by fuyouai

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool has a distinct purpose: listing folders, listing messages, searching messages, fetching a single message, and sending. Even though list_messages and search_messages both return messages, their usage is clearly differentiated by the description (folder browsing vs. condition-based search).

    Naming Consistency5/5

    All tool names follow the consistent verb_noun pattern: list_folders, list_messages, search_messages, get_message, send_message. There are no mixed conventions or vague verbs, making the API predictable.

    Tool Count5/5

    With exactly 5 tools, the server is well-scoped for basic email operations. It covers the core actions (list, search, read, send) without unnecessary bloat or an overly thin surface.

    Completeness3/5

    The toolset covers reading and sending email, but lacks common email management operations such as deleting, moving, or marking messages as read/unread. This is a notable gap for a full email workflow, though an agent can still accomplish basic tasks.

  • Average 3.7/5 across 5 of 5 tools scored.

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

    • No community issues in the last 6 months
    • 4 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under MIT License.

  • 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?

    With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the tool performs an IMAP SEARCH, but does not disclose whether it is read-only, what the return format is, or any limitations. This lack of behavioral context 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.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single concise phrase that conveys the core purpose without wasted words. It is appropriately front-loaded, though it could potentially include more detail without becoming verbose.

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

    Completeness2/5

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

    Given the lack of an output schema and annotations, the description is expected to compensate for missing behavioral details. It fails to explain what the search returns, how results are ordered, or any constraints beyond the parameter schema. This makes it incomplete for a tool that likely has nuanced behavior.

    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 documents all 6 parameters. The description does not add any meaning beyond what the schema provides, which matches the baseline of 3 for high 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 '按条件搜索邮件(IMAP SEARCH)' clearly states the verb 'search', the resource '邮件' (emails), and the scope '按条件' (by conditions). It distinguishes this tool from siblings like list_messages and get_message by emphasizing conditional search, which is a unique capability.

    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 when a user needs to search emails by specific criteria, but it does not explicitly state when to use this tool versus alternatives. There is no mention of alternatives or exclusions, so the guidance remains 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.

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It only describes the retrieved data and does not mention side effects, error conditions (e.g., on invalid UID), permissions/authentication, or whether the operation is read-only. This is insufficient for a tool with no annotations.

    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, focused sentence that immediately states the action and scope. It is front-loaded with the verb and resource, and every word contributes to understanding the tool's 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?

    The tool is simple with 2 parameters and no output schema. The description covers the return content (subject, body, attachments) but omits details like error handling, folder defaulting behavior beyond what the schema states, or response format. It is minimally complete but lacks depth for a no-annotation 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?

    Schema description coverage is 100% (both 'uid' and 'folder' have detailed descriptions including default). The tool description adds no additional parameter semantics beyond what the schema already 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.

    Purpose5/5

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

    The description clearly states '获取单封邮件的完整内容' (fetch complete content of a single email) and enumerates the returned data (subject, body, attachment metadata). This verb+resource pairing differentiates it from siblings like list_messages or search_messages, which operate at a different level of detail.

    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 use for retrieving full email content via the phrase '完整内容', but it does not explicitly state when to use this tool over alternatives like list_messages or search_messages, nor does it provide exclusions or prerequisites. Usage context is only implied.

    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?

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It does not mention the read-only nature, performance implications, or any other behavioral traits beyond the basic listing action. The IMAP LIST mention adds implementation detail but not behavioral insight.

    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, concise sentence that front-loads the primary purpose. Every word contributes value, and there is no redundancy.

    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 lack of an output schema, the description should clarify the return format or any limitations. It only states that all folders are listed, without explaining what the response looks like (e.g., folder names, hierarchy, or truncation). While the tool is simple, this leaves some ambiguity.

    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 reflects this. The description correctly implies no inputs are needed, which aligns with the baseline of 4 for parameter-less tools.

    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 ('list') and resource ('all folders in the mailbox'), and explicitly names the protocol (IMAP LIST). This distinguishes it from sibling tools that deal with messages rather than folders.

    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 is given about when to use this tool versus alternatives, nor are there any exclusions or prerequisites. The description simply states what it does without contextual placement among 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?

    The description adds behavioral details not in annotations: default INBOX and UID descending order. However, it does not disclose the return format (e.g., metadata vs full content), error handling, or whether it is read-only. With no annotations, the description carries the full burden but covers only basic behavior.

    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 concise sentence that front-loads the core action and includes key default/sort behavior. No redundant or extraneous 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 simple listing tool, the description covers the essential context: the action, default folder, and sort order. The schema documents all parameters. However, with no output schema, the description does not explain what the response will contain (e.g., message IDs, subjects, pagination), leaving 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%, so the baseline is 3. The description adds minimal extra meaning beyond the schema, such as the default folder (INBOX) and sort order, but does not elaborate on parameter usage or edge cases.

    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 states a specific verb ('列出' = list) and resource ('邮件' = emails) with a scope ('指定文件夹' = specified folder), and it distinguishes this from siblings like search_messages and get_message by focusing on listing all messages in a folder.

    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 clearly implies when to use the tool (to list emails in a folder) but does not explicitly mention alternatives or exclusions. It lacks guidance such as 'for searching, use search_messages' which would clarify selection.

    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 carries the burden. It discloses the SMTP environment dependency and the text/html constraint, but does not mention return values, error behavior, or side effects like sending delays or recipient validation.

    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 sentence that front-loads the primary action ('通过 SMTP 发送邮件') and then provides necessary constraints. It is concise with no unnecessary 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?

    Given the tool's 7 parameters and no output schema, the description provides essential operational context (SMTP env var, body condition) that complements the schema. It lacks explicit return/error information, but for a send tool this is a minor gap.

    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 covers 100% of parameters, so baseline is 3. The description adds the crucial constraint 'text 与 html 至少填一项' (at least one of text/html required), which is not captured in the schema and clarifies parameter usage.

    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 '通过 SMTP 发送邮件' (send email via SMTP) clearly identifies the action (send) and resource (email), with a specific mechanism (SMTP). This distinguishes it from sibling tools focused on listing or searching messages.

    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 context such as using the SMTP environment variable and the requirement that at least one of text/html must be filled. It doesn't explicitly name alternatives, but the purpose is distinct enough from siblings to imply when to use it.

    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

email-mcp MCP server

Copy to your README.md:

Score Badge

email-mcp 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/fuyouai/email-mcp'

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