Gmailread mail
mail_gmailreadRead the caller's connected Gmail. Read-only; connect in Account first.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Gmail message id from GmailSearch |
mail_gmailreadRead the caller's connected Gmail. Read-only; connect in Account first.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Gmail message id from GmailSearch |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly says 'Read-only' and 'connect in Account first', which are valuable behavioral disclosures beyond the annotations (which only contain a title). However, it does not describe what happens if the connection is missing, error conditions, or the return format. Given the absence of readOnlyHint or destructiveHint annotations, the description partially carries the burden but lacks depth on failure modes and output.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a compact two-sentence structure: 'Read the caller's connected Gmail. Read-only; connect in Account first.' It front-loads the purpose and includes a critical prerequisite, with zero fluff. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and a single parameter, the description should cover essential calling details. It mentions read-only and connection, but does not describe the return value (e.g., message content, subject, attachments) or any failure behavior. It also omits usage guidance relative to search tools. While adequate for a simple read, it is not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the parameter 'id' is well-described as 'Gmail message id from GmailSearch'. The description adds no additional meaning beyond what the schema states, so the baseline of 3 applies. It does not elaborate on the ID format or provenance beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the verb 'Read' and the resource 'the caller's connected Gmail', which is clear. The presence of the 'id' parameter (described in schema as a Gmail message ID) implies it reads a specific message, distinguishing it from list/search tools like mail_inbox and mail_search. However, it does not explicitly differentiate itself from the sibling 'mail_read', which could be generic, though the name 'gmailread' helps. Overall, purpose is clear but not perfect.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a prerequisite ('connect in Account first') but no guidance on when to use this tool versus alternatives like mail_search, mail_read, or mail_inbox. It does not state that the ID comes from a prior search, which is a key usage step. Without explicit when/when-not instructions, the agent must infer usage from context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.