Skip to main content
Glama

Set email forwarding (safe merge or replace-all)

set_email_forwarding
DestructiveIdempotent

Set up email forwarding for your domain: add, update, or remove forwarding rules, preserving existing ones by default, or replace all rules when needed.

Instructions

Configure email forwarding. Like DNS setHosts, Namecheap's setEmailForwarding is REPLACE-ALL, so this tool defaults to a safe merge: it reads existing rules, upserts the ones you provide (matched by mailbox), removes any you list in remove, and writes the full set back — untouched rules are preserved. Use mode=replace_all (with confirm=true) to overwrite every rule with exactly forwards.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeNomerge
domainYes
removeNoMailboxes (local parts) to remove (merge mode only).
confirmNoRequired true for mode=replace_all.
forwardsNoRules to add or update.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
domainYes
accountYes
successYes
forwardsYes
providerYes
environmentNo
Behavior5/5

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

The description goes well beyond the annotations by explaining the safety mechanism: default is a safe merge that reads existing rules, upserts matching ones, removes listed mailboxes, and preserves untouched rules. It also discloses that replace_all is destructive and requires confirm=true. This adds critical behavioral detail beyond the destructiveness/idempotence hints and is fully consistent with 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 two sentences, front-loaded with the main action, then packing the behavioral details efficiently. Each sentence earns its place: the first establishes purpose and the safe merge default; the second explains the destructive alternative. No wasted words.

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?

Given the tool's complexity, the presence of an output schema, and annotations, the description is complete. It covers the default safe behavior, the destructive mode, the confirm requirement, and how existing rules are preserved. The only missing nuance is error handling, but that is not expected at this level.

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

Parameters5/5

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

The description meaningfully explains how the parameters interact: `forwards` are upserted by mailbox, `remove` deletes specific mailboxes, `mode` toggles merge vs. replace_all, and `confirm` is a safety gate. This orchestration is not evident from the individual schema descriptions, significantly enhancing understanding.

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 starts with a clear verb+resource: 'Configure email forwarding.' It then explains the merge vs. replace_all behavior, which distinguishes this mutation tool from the read-only sibling `get_email_forwarding`. The reference to 'DNS setHosts' adds context about replace-all semantics without obscuring the core purpose.

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 clearly indicates this tool is for modifying email forwarding rules and provides context on when to use merge vs. replace_all. However, it does not explicitly mention alternatives like `get_email_forwarding` for reading or state when not to use the destructive replace_all mode. The context is clear but lacks explicit exclusions.

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

Install Server

Other Tools

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/fledgeling-co/namecheap-mcp'

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