mcpField
A
aws-mail-manager

aws-mail-manager

github.com/amazon-sesCloud & DevOps870 installsUpdated 22w ago
Repository

About aws-mail-manager

aws-mail-manager is an agent skill that guides developers and AI agents through configuring Amazon SES Mail Manager for inbound email processing. It covers setup dependencies, rule syntax, routing, and common API pitfalls.

Key features

  1. 01Inbound email configuration
  2. 02Traffic and message filtering
  3. 03Rule-based email routing
  4. 04Archive and relay setup
  5. 05API guidance and pitfalls

Use cases

  1. 01Setting up inbound email pipelines
  2. 02Blocking senders or IP ranges
  3. 03Archiving mail for compliance
  4. 04Routing mail to external SMTP servers

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/amazon-ses/skills --skill aws-mail-manager

After installing, type/aws-mail-managerin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

examples/
README.md
examples/01-setup-pipeline/
setup_pipeline.py
examples/02-route-by-recipient/
route_by_recipient.py
examples/03-archive-and-search/
archive_search.py
examples/04-address-list-import/
address_list_import.py
examples/05-update-rule-set/
update_failure_policy.py
examples/06-smtp-relay-replacement/
smtp-relay-replacement.yaml
examples/07-cdk-inbound-pipeline/
README.md
references/
agent-instructions.md
references/address-lists/
address-list-guide.md
references/api/
ses-api-index.md
references/archives/
archive-guide.md
references/cleanup/
cleanup-guide.md
references/relays/
relay-guide.md
references/rule-sets/
rule-set-guide.md
references/setup/
getting-started.md
references/traffic-policies/
traffic-policy-guide.md
references/troubleshooting/
troubleshooting-guide.md
references/workflows/
event-driven-ai-pipeline.md
guided-setup.md

Details

From the project README

Amazon SES Mail Manager

Amazon SES Mail Manager is an email processing service for inbound email. It receives email via SMTP ingress points, applies traffic policies and rule sets, then routes messages to archives, relays, S3, SNS, WorkMail, or drops them.

Key Capabilities

  • Ingress Points — SMTP endpoints (OPEN, AUTH, or MTLS) that receive email. Point your MX records here. Configurable TLS policy: REQUIRED, OPTIONAL, or FIPS.
  • Traffic Policies — Connection-level filtering by sender IP, recipient, or TLS version. Evaluated before message body is received.
  • Rule Sets — Message-level processing with conditions (SPF/DKIM verdicts, headers, size, IP) and actions (archive, bounce, relay, S3, SNS, Lambda, drop).
  • SMTP Relays — Forward email to external SMTP servers with optional authentication.
  • Archives — Durable email storage with async search and export. Configurable retention from 3 months to permanent.
  • Address Lists — Managed allow/block lists used in rule conditions. Supports bulk CSV/JSON import.
  • Add-ons — Third-party integrations (spam filtering, threat analysis) attachable to rule sets.

When to Use This Skill

  • Setting up an inbound email processing pipeline
  • Walking a developer through Mail Manager configuration decisions step by step
  • Filtering spam or blocking senders/IP ranges before email reaches your systems
  • Archiving email for compliance, legal hold, or eDiscovery
  • Routing email to different destinations based on recipient, sender, or content
  • Forwarding email to on-premises or third-party SMTP servers
  • Building allow/block lists for email filtering
  • Enforcing TLS requirements on inbound connections

What This Skill Does NOT Cover

  • Outbound email sending — Use the Amazon SES V2 API (sesv2 client) for sending email.
  • SES core features — Identity verification, DKIM/SPF/DMARC setup, configuration sets, suppression lists. See the aws-ses skill.
  • WorkMail setup — Mail Manager can deliver to WorkMail mailboxes, but WorkMail provisioning is a separate service.

Common Mistakes (Quick Reference)

MistakeFix
Using ses or sesv2 clientUse boto3.client('mailmanager')
Creating ingress point firstCreate traffic policy + rule set first
RecipientCondition in traffic policyUse StringExpression with Attribute: RECIPIENT
Values in TlsExpressionUse singular Value for TLS expressions
Missing DefaultAction on traffic policyAlways set DefaultAction: ALLOW or DENY
SOURCE_IP in traffic policyTraffic policies use SENDER_IP; rule sets use SOURCE_IP
Updating rule set without fetching firstupdate_rule_set replaces ALL rules — fetch first
DNS before ingress point is ACTIVEPoll get_ingress_point until Status == ACTIVE
Evaluate field in DmarcExpressionDmarcExpression has no Evaluate — just Operator + Values
Archive ARN in TargetArchiveUse archive ID (a-xxxx), not ARN — 66-char limit enforced by API
CFN !GetAtt Archive.ArchiveId returns ARNExtract ID: !Select [1, !Split ["/", !GetAtt Archive.ArchiveArn]]
Archive name collision after rollbackAppend ${AWS::AccountId} — names persist through PENDING_DELETION
FIPS TLS policy can't be changedFIPS is immutable after creation — delete and recreate to change
TLS policy default varies by regionFIPS in US/CA, REQUIRED elsewhere — set explicitly

See Agent Instructions for detailed explanations, full condition/action syntax, and the complete common mistakes list.

Resource Links

Summary

This skill provides the context AI agents need to work with Amazon SES Mail Manager correctly — the right API client, condition/action syntax, resource dependency order, and common pitfalls. Start with the Agent Instructions for the full reference, or use the Guided Setup for an interactive walkthrough.

Comments

Markdown supported