Skip to main content
Glama

Fluxmail Cloud

Read email body

get_email_body
Read-only

Read a bounded portion of one email body. Use nextOffset to continue.

Input Schema

NameRequiredDescriptionDefault
formatYes
offsetNo
maxCharsNo
accountIdNoAccount to operate on. Optional when exactly one account is connected.
messageIdYes

Output Schema

NameRequiredDescriptionDefault
dataYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "data": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "format": {
      +          "type": "string"
      +        },
      +        "nextOffset": {
      +          "type": "number"
      +        },
      +        "offset": {
      +          "type": "number"
      +        },
      +        "text": {
      +          "type": "string"
      +        },
      +        "totalChars": {
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "format",
      +        "text",
      +        "offset",
      +        "totalChars"
      +      ],
      +      "type": "object"
      +    }
      +  },
      +  "required": [
      +    "data"
      +  ],
      +  "type": "object"
      +}
  2. Changed2 schema fields changed
    • changedInput schema / properties / accountId / anyOf
      Previous value: -[
      -  {
      -    "minLength": 1,
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "maxLength": 512,
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / messageId / maxLength
      Added value: +512
  3. Changed15 schema fields changed
    • changedInput schema / $schema
      Previous value: -"https://json-schema.org/draft/2020-12/schema"New value: +"http://json-schema.org/draft-07/schema#"
    • addedInput schema / properties / accountId / anyOf
      Added value: +[
      +  {
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / accountId / description
      Added value: +"Account to operate on. Optional when exactly one account is connected."
    • removedInput schema / properties / accountId / maxLength
      Removed value: -512
    • removedInput schema / properties / accountId / minLength
      Removed value: -1
    • removedInput schema / properties / accountId / type
      Removed value: -"string"
    • addedInput schema / properties / maxChars / anyOf
      Added value: +[
      +  {
      +    "maximum": 50000,
      +    "minimum": 1,
      +    "type": "integer"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / maxChars / maximum
      Removed value: -50000
    • removedInput schema / properties / maxChars / minimum
      Removed value: -1
    • removedInput schema / properties / maxChars / type
      Removed value: -"integer"
    • removedInput schema / properties / messageId / maxLength
      Removed value: -512
    • addedInput schema / properties / offset / anyOf
      Added value: +[
      +  {
      +    "minimum": 0,
      +    "type": "integer"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / offset / maximum
      Removed value: -9007199254740991
    • removedInput schema / properties / offset / minimum
      Removed value: -0
    • removedInput schema / properties / offset / type
      Removed value: -"integer"
  4. Changed1 schema field changed
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  5. Added

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already establish readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds useful behavioral context that the body comes back truncated ('bounded portion') and that continuation is expected, but says nothing about default/maximum size behavior or what happens at end-of-body.

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 short, front-loaded sentences with zero filler and no repetition of the tool name or title. The second sentence carries the continuation guidance efficiently.

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?

With annotations covering safety, an output schema carrying the return shape, and 5 parameters, the description covers the truncation/continuation model but leaves the agent without guidance on format selection or size limits. Adequate but with clear gaps for a paging tool.

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?

No annotations beyond safety are given, but the schema is fully self-documenting: format enum, offset, maxChars, accountId, and messageId all carry descriptions or obvious constraints. The description adds one key semantic insight: the offset parameter is a pagination cursor rather than an arbitrary character index, which meaningfully extends the schema. That single insight isn't enough to reach 5, which would require explaining format choice and truncation behavior.

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 and resource ('Read a bounded portion of one email body'), which is concrete and distinguishes it partially from metadata readers. However, it never contrasts itself with sibling tools like get_email or get_thread, leaving the agent to infer why it would pick this over the general message getter.

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?

The only usage guidance is 'Use nextOffset to continue,' which covers pagination but not tool selection. There is no statement about when to call this instead of get_email, get_thread, or download_attachment.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources