Skip to main content
Glama

Start connecting an inbox

add_inbox

Registers an inbox (pending credentials). Returns inboxId for follow-up tools plus sayToHuman. Show only sayToHuman to the human, then quietly call the matching start_* tool. Use propose_connection first if unsure of the provider. If your app refuses to run this tool, tell the person they can add the inbox themselves on the Inboxes page of the website, and point them to /docs/troubleshooting/agent-not-allowed.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "label": "<label>",
      "provider": "<provider>",
      "email": "<email>"
    },
    "name": "add_inbox"
  }
}

Input Schema

NameRequiredDescriptionDefault
emailYes
labelYes
imapHostNoFor provider=imap: the IMAP server (e.g. mail.example.com). Filled in for Yahoo, AOL, Fastmail and Zoho addresses; required for any other domain.
imapPortNoIMAP port, default 993
imapUserNoIMAP username if different from email. For provider=icloud with your own domain on iCloud+: the iCloud Mail address (ending in icloud.com, me.com or mac.com).
providerYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare that this is not read-only, is open-world, is not idempotent, and is not destructive. The description adds return values (inboxId and sayToHuman), a display constraint (show only sayToHuman), a post-call workflow, and a fallback path, though it does not detail authentication requirements or side effects beyond pending credentials.

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 three sentences, front-loaded with purpose and return values. Every sentence carries workflow or edge-case guidance, with no wasted text, though it is somewhat dense.

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 six-parameter registration tool with no output schema, the description covers purpose, return handling, next steps, and failure behavior. It leaves parameter semantics to the schema, which is only partially described, but is otherwise complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 50%, and the required label, email, and provider parameters have no descriptions in the schema. The description does not explain any parameter meanings; it only indirectly mentions provider in the context of propose_connection. It fails to compensate for the missing schema descriptions.

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?

Registers an inbox (pending credentials) states a specific verb and resource, with the pending-credentials state making the outcome clear. It distinguishes itself from start_* tools by directing the agent to call the matching start_* tool afterward, and from propose_connection by saying to use that first if unsure of the provider.

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 says to use propose_connection first if unsure of the provider, then to quietly call the matching start_* tool. It also gives a concrete fallback if the app refuses to run the tool, covering alternatives and next steps without leaving the agent to infer.

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