Skip to main content
Glama
NimbleBrainInc

AWS SES MCP Server

AWS SES MCP Server

mpak NimbleBrain Discord License: MIT

A Model Context Protocol (MCP) server that sends emails using AWS Simple Email Service (SES). Send HTML or plain text emails with CC/BCC support from any MCP client.

View on mpak registry | Built by NimbleBrain

Install

Install with mpak:

mpak install @nimblebraininc/aws-ses

Configuration

You need an AWS account with SES enabled, a verified sender email address, and IAM credentials with SES permissions.

mpak config set @nimblebraininc/aws-ses aws_access_key_id YOUR_ACCESS_KEY
mpak config set @nimblebraininc/aws-ses aws_secret_access_key YOUR_SECRET_KEY
mpak config set @nimblebraininc/aws-ses from_email your-verified@email.com

Optionally set the region (defaults to us-east-1):

mpak config set @nimblebraininc/aws-ses aws_region us-west-2

Claude Code

claude mcp add aws-ses -- mpak run @nimblebraininc/aws-ses

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "aws-ses": {
      "command": "mpak",
      "args": ["run", "@nimblebraininc/aws-ses"]
    }
  }
}

See the mpak registry page for full install options.

Related MCP server: MCP Sendmail Server

Tools

send_email

Send an email using AWS SES. Supports HTML bodies with automatic plain text fallback.

Parameter

Type

Required

Description

to

string

Yes

Recipient email address

subject

string

Yes

Email subject line

body

string

Yes

Email body (HTML supported)

from_email

string

No

Sender email (defaults to AWS_SES_FROM_EMAIL)

cc

string

No

CC recipients, comma-separated

bcc

string

No

BCC recipients, comma-separated

Example call:

{
  "name": "send_email",
  "arguments": {
    "to": "recipient@example.com",
    "subject": "Weekly Report",
    "body": "<h1>Weekly Report</h1><p>Here are this week's highlights...</p>"
  }
}

Example response:

{
  "success": true,
  "message_id": "0102018f-1234-5678-abcd-example",
  "timestamp": "2026-02-13T10:00:00+00:00",
  "to": "recipient@example.com",
  "subject": "Weekly Report"
}

Quick Start

Local Development

git clone https://github.com/NimbleBrainInc/mcp-aws-ses.git
cd mcp-aws-ses

# Install dependencies
uv sync

# Set credentials
cp .env.example .env
# Edit .env with your AWS credentials

# Run the server (stdio mode)
uv run python -m mcp_aws_ses.server

The server supports HTTP transport with:

  • Health check: GET /health

  • MCP endpoint: POST /mcp

Development

# Install with dev dependencies
uv sync --group dev

# Run all checks (format, lint, typecheck, unit tests)
make check

# Run unit tests
make test

# Run with coverage
make test-cov

About

AWS SES MCP Server is published on the mpak registry and built by NimbleBrain. mpak is an open registry for Model Context Protocol servers.

License

MIT

Available Tools

1 tool
send_emailB

Send an email using AWS SES.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNoCC recipients, comma-separated.
toYesRecipient email address.
bccNoBCC recipients, comma-separated.
bodyYesEmail body (HTML supported).
subjectYesEmail subject line.
from_emailNoSender email address. Falls back to AWS_SES_FROM_EMAIL env var.

Output Schema

ParametersJSON Schema
NameRequiredDescription
toYesRecipient email address
subjectYesEmail subject line
successYesWhether the email was sent successfully
timestampYesISO 8601 timestamp of when the email was sent
message_idYesAWS SES message ID

TDQS

B3.4/5.0
Behavior2/5

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

The description only states the action without disclosing any behavioral traits such as authentication requirements, side effects, rate limits, or error handling. Since no annotations are provided, the description carries the full burden, and this minimal statement fails to provide meaningful transparency.

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 a single concise sentence that front-loads the core action without any unnecessary words. It is appropriately sized for the purpose, though it could benefit from additional details while still remaining concise.

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

Completeness3/5

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

An output schema exists, so return values need not be explained. However, the description lacks behavioral context such as permissions or limitations, and no annotations are present. For a simple tool, this is minimally sufficient but leaves gaps in completeness.

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

Parameters3/5

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

Schema description coverage is 100%, so all parameters are already documented in the schema. The description adds no parameter-specific meaning beyond what the schema provides, keeping it at the baseline score.

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 clearly states it sends an email via AWS SES, identifying the action, resource, and service. This is specific and leaves no ambiguity about the tool's function, even though there are no sibling tools to differentiate from.

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

Usage Guidelines3/5

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

The description does not explicitly state when to use this tool or provide any alternatives, but the action of sending an email implies its use case. With no sibling tools, the lack of alternatives is less critical, but there is no mention of prerequisites or scenario-based guidance.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev0.1.2
    • First observedsend_email

TDQS

B3.4/5.0

Scored across 1 tool

Disambiguation5/5

With only a single tool, there is no possibility of overlap or confusion between tools. The tool's purpose is clear and unambiguous.

Naming Consistency5/5

The tool name 'send_email' follows a clear verb_noun pattern and is self-consistent. While there is only one tool, the naming is predictable and professional.

Tool Count2/5

AWS SES is a broad service with many capabilities beyond sending email, such as managing verified identities, templates, and sending statistics. A single tool is far too few for the scope implied by the server name, making the server under-scoped.

Completeness1/5

The tool surface is severely incomplete for AWS SES. Essential operations like listing verified identities, checking sending limits, and managing configuration sets are missing, leaving agents with no way to handle common SES workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that enables sending emails directly through AWS SES without copy-pasting, supporting plain text and HTML emails with features like CC, BCC, and reply-to functionality.
    3
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables sending emails via SMTP with support for HTML content, attachments, bulk sending, and template-based emails. Features session management and full MCP Streamable HTTP transport compliance.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables reading and sending emails via IMAP and SMTP through the MCP protocol. Supports multiple email accounts and configuration via UI or environment variables.
    BSD 3-Clause