Skip to main content
Glama

m365_mail_list

Read-onlyIdempotent

List emails in one Microsoft 365 mail folder, returning IDs, summaries, and previews newest first. Use a filter or search to narrow results and top to cap total emails.

Instructions

Browse one mail folder (inbox by default), returning IDs, summaries and previews up to 200 characters, newest first within the returned set. Use filter or search, not both; top caps total results across internal pages. Use m365_mail_search across folders, m365_mail_read for a body, or m365_mail_folders for folder IDs.

Input Schema

NameRequiredDescriptionDefault
topNoMaximum total emails to return, not page size; defaults to 20
filterNoOData filter, e.g. isRead eq false; cannot be combined with search
folderNoFolder ID or well-known name such as inbox or sentitems; defaults to inbox
searchNoSearch text within this folder; cannot be combined with filter

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv1.2.1
    • changedInput schema / properties / filter / description
      Previous value: -"OData filter, e.g. isRead eq false"New value: +"OData filter, e.g. isRead eq false; cannot be combined with search"
    • changedInput schema / properties / folder / description
      Previous value: -"Folder name: inbox, sentitems, drafts, etc."New value: +"Folder ID or well-known name such as inbox or sentitems; defaults to inbox"
    • changedInput schema / properties / search / description
      Previous value: -"Search query within folder"New value: +"Search text within this folder; cannot be combined with filter"
    • changedInput schema / properties / top / description
      Previous value: -"Maximum emails to return"New value: +"Maximum total emails to return, not page size; defaults to 20"
  2. Changed4 schema fields changedv1.2.0
    • changedInput schema / properties / top / description
      Previous value: -"Number of emails (max 100 per page, paginated)"New value: +"Maximum emails to return"
    • addedInput schema / properties / top / maximum
      Added value: +500
    • addedInput schema / properties / top / minimum
      Added value: +1
    • changedInput schema / properties / top / type
      Previous value: -"number"New value: +"integer"
  3. First observedv1.0.7

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent and non-destructive, so the safety profile is covered; the description goes further by disclosing the return shape, the 200-character preview cap, the newest-first ordering and that top caps totals across internal pages rather than page size. It stops short of noting auth requirements or rate limits, so it is strong but not exhaustive.

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?

Three sentences, none wasted: scope first, then the constraint on arguments, then sibling routing. Front-loaded with the primary behavior and free of restated boilerplate.

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

Completeness5/5

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

For a read-only list tool with no output schema, it supplies everything an agent needs: default folder, what is returned, preview limits, ordering, pagination cap semantics and which sibling to use instead. Annotations carry the safety profile, so no critical gap remains.

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% and the schema already explains each parameter, so the baseline is 3. The description adds real interpretive value by clarifying that top is a total cap across internal pages and that filter and search are mutually exclusive — both are easy misuse traps the schema only partially signals.

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?

States a specific verb and resource — browse one mail folder — plus the default (inbox), the return shape (IDs, summaries, previews up to 200 chars) and ordering (newest first within the returned set). An agent can distinguish it from m365_mail_search, m365_mail_read and m365_mail_folders without opening any schema.

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

Usage Guidelines5/5

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

Explicitly routes the agent: use m365_mail_search across folders, m365_mail_read for a body, m365_mail_folders for folder IDs. It also states an intra-tool exclusion (filter or search, not both), so both the tool choice and the argument choice are covered.

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