Skip to main content
Glama
MauiGrowth

mx-route-mcp

by MauiGrowth

Set catch-all

set_catch_all
DestructiveIdempotent

Configure how mail to non-existent addresses on a domain is handled: reject, silently discard, or forward to a specific address.

Instructions

Sets how mail to non-existent addresses on a domain is handled: type=fail rejects it, type=blackhole silently discards it (mail is lost), type=address forwards it to address. address is required when type is address and must be omitted otherwise. Destructive: confirm with the user before calling.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
typeYesfail = reject, blackhole = silently discard, address = forward
domainYesDomain name on the MXroute account, e.g. example.com
addressNoDestination email address; required when type is 'address'

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, and the description adds specificity beyond them: blackhole silently discards mail (mail is lost) and the agent should confirm with the user first. It does not, however, describe the response shape or what happens to existing catch-all configuration.

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 tight sentences, front-loaded with the action, then the enum semantics, then the conditional parameter rule and the safety warning. Every sentence carries load.

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?

No output schema exists and none is strictly needed for a settings mutation; the description covers the action, the enum behaviors, the conditional requirement, and the destructiveness warning. An agent has everything needed to call it correctly and safely.

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%, so the baseline would be 3, but the description adds a constraint the schema omits: `address` must be omitted when type is not 'address'. It also restates the enum semantics, which is redundant with the schema.

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?

Names a specific verb and resource (set how mail to non-existent addresses is handled) and enumerates the three behaviors. It is clearly distinguishable from the read-only sibling get_catch_all, which is not mentioned but is obviously the read counterpart.

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?

Gives a clear operational instruction ('Destructive: confirm with the user before calling'), which tells the agent when extra care is needed. It does not explicitly name the get_catch_all alternative for reading current settings, so it stops short of full when-vs-alternative routing.

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