Sessy — Amazon SES observability
Server Details
Read-only Amazon SES observability: search events, inspect bounces, pull delivery stats.
- Status
- Healthy
- Uptime
- 99.8% over 65 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- marckohlbrugge/sessy
- GitHub Stars
- 907
TDQS
Scored across 7 tools
Each tool has a clearly distinct action-resource focus: list_sources, create_source, update_source, get_source_setup, email_stats, search_events, and get_message are easy to tell apart. The one soft overlap is that create_source also returns AWS SES wiring details (webhook URL, config set, setup steps) that get_source_setup returns, but the new-vs-existing distinction in the descriptions keeps them separable.
Six of seven tools follow a clean verb_noun snake_case pattern (create_source, get_source_setup, list_sources, update_source, search_events, get_message). The lone deviation is email_stats, which is noun_noun rather than a verb form, but it remains readable and predictable.
Seven tools is well-scoped for an SES observability service: three source lifecycle tools, two event/message retrieval tools, one aggregate stats tool, and one setup helper. Each tool earns its place with no redundant entries.
The surface covers the full observability lifecycle — create/read/update sources, search events, drill into individual messages, and aggregate stats — with clear guidance on paging via search_events. The only gap is source deletion and retention changes, which are explicitly and deliberately delegated to the web UI, so it is a documented limitation rather than a dead end.
Available Tools
7 toolscreate_sourceCreate sourceAInspect
Create a new email source (one per app or mail stream) and return the AWS SES wiring details for it: webhook URL for the SNS subscription, suggested configuration set and topic names, and the remaining setup steps. Retention is configured in the web UI.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Display name, e.g. the app or mail stream it tracks | |
| color | No | Badge color in the web UI; defaults to the least-used color |
Output Schema
| Name | Required | Description |
|---|---|---|
| setup | Yes | |
| source | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (not read-only, not idempotent, non-destructive, closed-world). The description adds real value beyond them by disclosing the returned SES wiring payload and that retention is deliberately not settable via the API and must be done in the web UI. It omits auth requirements and duplicate-name behavior, keeping it at 4.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: the create action and its return payload are front-loaded, and the retention caveat is appended as a short boundary clause. No filler or restatement of the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description need not enumerate return fields, and the annotations carry the safety profile. It covers scope, the creation cadence, and the retention boundary, but says nothing about behavior on duplicate names or permissions, leaving a small gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: 'name' and 'color' are both documented in the schema, including the enum values and the least-used-color default. The description adds no parameter-level detail (its only configuration remark, retention, is explicitly not a parameter), so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (create a new email source) and even discloses the return payload (SES wiring details, webhook URL, config set/topic names). It does not explicitly differentiate from siblings such as get_source_setup, which also surfaces setup details, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical 'one per app or mail stream' gives clear context for when a source should be created, and the retention note defines a boundary of API responsibility. There is no explicit when-not guidance or pointer to update_source for existing sources, so it stops short of 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
email_statsEmail statsARead-onlyIdempotentInspect
Aggregate email stats for one source or the whole account over a date range: counts by event type, unique opens/clicks, bounce/complaint/open/click rates, bounce breakdown by subtype, and an optional daily time series. Rates are percentages of sends.
| Name | Required | Description | Default |
|---|---|---|---|
| to_date | No | ISO 8601 date or timestamp; only with date_range custom | |
| from_date | No | ISO 8601 date or timestamp; only with date_range custom | |
| source_id | No | Limit to one source (id from list_sources); omit for the whole account | |
| date_range | No | Date window preset (default last_30_days); use custom with from_date/to_date | |
| include_daily_series | No | Include a per-day sent/delivered/bounced series (ranges up to 120 days); default false |
Output Schema
| Name | Required | Description |
|---|---|---|
| hint | No | Present when there were no sends in the applied window |
| scope | Yes | |
| counts | Yes | |
| daily_series | No | |
| rates_percent | Yes | |
| bounce_breakdown | Yes | Counts keyed by bounce subtype (Permanent, Transient, Undetermined, Unknown) |
| applied_date_range | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and non-destructive, so the safety profile is established. The description adds valuable behavioral context beyond annotations: rates are defined as percentages of sends, the optional daily series is noted, and the metric list clarifies exactly what the tool returns. No contradiction exists, and this extra detail helps interpret the output.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, information-dense sentence that fronts the main purpose and then lists supporting details. Every clause adds value—scope, date range, metric types, and the send-percentage clarification. It avoids fluff and is easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 0 required parameters, an output schema, and rich annotations, the description covers all essential usage aspects: aggregation behavior, source scoping, date range, metric types, and the optional time series. Edge cases like custom date range constraints are handled by the schema, so the description is complete for the intended complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage for all 5 parameters is 100%, so the schema carries full semantic weight for parameter details. The description adds minimal parameter-specific meaning (e.g., 'one source or whole account' maps to source_id, 'date range' relates to date_range), but these are restatements of what the schema already documents. Thus the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with the specific verb 'Aggregate' and the resource 'email stats', then clarifies scope ('one source or the whole account') and date range. It enumerates the exact metrics (counts, opens/clicks, rates, breakdowns, optional series), making it immediately distinct from sibling tools like search_events or get_message.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use this tool: when the user needs aggregate metrics (counts/rates) across a date range. It gives context about source scope and date presets, but it does not explicitly mention alternatives or exclusions (e.g., 'for individual events use search_events'). This meets 'clear context, no exclusions' rather than the explicit always/never guidance required for a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_messageGet messageARead-onlyIdempotentInspect
Fetch one email by its ses_message_id (from search_events results): subject, sender, destinations, SES tags, and the per-recipient event timeline including bounce/complaint diagnostics (first 500 events; events_truncated flags the rest — use search_events to page through them).
| Name | Required | Description | Default |
|---|---|---|---|
| ses_message_id | Yes | SES message id from search_events results |
Output Schema
| Name | Required | Description |
|---|---|---|
| events | Yes | |
| message | Yes | |
| events_truncated | No | True when more than 500 events exist for this message |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations by disclosing the exact fields returned (subject, sender, destinations, SES tags, event timeline), the 500-event limit, the events_truncated flag, and the recommended paging mechanism. There is no contradiction with the readOnly/idempotent/non-destructive annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, information-dense sentence that front-loads the core action ('Fetch one email') and packs in field lists, limits, and follow-up guidance. It is efficient but somewhat heavy with parentheticals, which slightly reduces readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Together with the annotations (read-only, idempotent) and the presence of an output schema, the description covers the tool's purpose, input provenance, return contents, limits, truncation behavior, and continuation strategy. Nothing important is left unexplained for an agent to invoke this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the parameter description already states 'SES message id from search_events results'. The tool description repeats this same context without adding new syntactic, format, or behavioral details about the parameter, so it adds no incremental value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Fetch') and resource ('one email by its ses_message_id'), clearly distinguishing it from sibling tools like search_events (which lists events) and email_stats. It immediately states the exact input needed and the scope of the operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly says the id comes 'from search_events results' and instructs using search_events to page through additional events, giving clear practical usage context. However, it does not explicitly contrast with email_stats or list_sources, so a small gap remains in alternative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_source_setupGet source setupARead-onlyIdempotentInspect
Fetch one source's settings and the AWS SES wiring details for it: webhook URL for the SNS subscription, suggested configuration set and topic names, and the remaining setup steps. Use this to finish or verify SES setup for an existing source.
| Name | Required | Description | Default |
|---|---|---|---|
| source_id | Yes | Source id from list_sources |
Output Schema
| Name | Required | Description |
|---|---|---|
| setup | Yes | |
| source | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds only that the read is scoped to 'one source' and geared toward finishing/verifying setup; it discloses no auth requirements, rate limits, or side effects beyond what the annotations state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler: the first front-loads the returned payload and the second states the use case. Every clause carries information an agent needs to select the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need not be explained, yet the description helpfully previews them; annotations cover the safety profile and the sole parameter is documented. The only minor gap is the absence of any note about permissions or whether the source must be in a particular setup state for meaningful results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single parameter source_id is documented as 'Source id from list_sources.' The description refers to 'one source's settings' but adds no naming, format, or sourcing detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Fetch) and resource (one source's settings / AWS SES wiring) and enumerates the concrete payload: webhook URL for the SNS subscription, suggested configuration set and topic names, and remaining setup steps. This payload profile is unique among the siblings (list_sources, create_source, update_source, get_message, email_stats, search_events), so an agent can distinguish it without opening a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly frames the use case: 'Use this to finish or verify SES setup for an existing source,' which also implicitly excludes creating a source (create_source) or listing them (list_sources). There is no explicit when-not statement or named alternative tool, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_sourcesList sourcesARead-onlyIdempotentInspect
List this account's email sources with 30-day health stats (sent count, bounce rate, last event). Start here: the other tools take a source_id from these results.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| sources | Yes | |
| guidance | No | Present when the account has no sources yet |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the safety profile is covered. The description adds valuable context about the 30-day health stats and the tool's role as the entry point, without contradicting the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exactly two sentences, each earning its place: the first defines the output and the second gives actionable workflow guidance. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless list tool with an output schema and annotations covering safety, the description fully captures purpose, output contents, and how it fits into the broader workflow. Nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so there is nothing to explain. Per the rubric, a 0-parameter tool gets a baseline of 4; the description does not need to add parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists this account's email sources with 30-day health stats (sent count, bounce rate, last event). It also positions itself as the starting point for other tools that take a source_id, effectively distinguishing it from siblings like email_stats, get_message, and search_events.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit workflow guidance is provided: 'Start here: the other tools take a source_id from these results.' This tells the agent to run this tool first to acquire source IDs for subsequent tool calls, making the usage context and alternatives clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_eventsSearch eventsARead-onlyIdempotentInspect
Search email events (sends, deliveries, bounces, complaints, opens, clicks), newest first. Returns compact rows; use get_message with a row's ses_message_id for the full timeline. The date window defaults to the last 30 days — pass date_range "all_time" to search everything.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 25) | |
| query | No | Substring match against recipient email addresses and message subjects | |
| cursor | No | next_cursor value from the previous page | |
| to_date | No | ISO 8601 date or timestamp; only with date_range custom | |
| from_date | No | ISO 8601 date or timestamp; only with date_range custom | |
| source_id | No | Limit to one source (id from list_sources); omit to search all sources | |
| date_range | No | Date window preset (default last_30_days); use custom with from_date/to_date | |
| event_types | No | Only these event types | |
| bounce_types | No | Only these bounce subtypes (combine with event_types ["bounce"]) |
Output Schema
| Name | Required | Description |
|---|---|---|
| hint | No | Present when the page is empty and a wider date window may help |
| events | Yes | |
| has_more | Yes | |
| next_cursor | Yes | |
| applied_date_range | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent annotations, the description discloses behavioral details such as 'newest first', 'Returns compact rows', and the default date window. These add meaningful context not available from annotations alone, though no mention of pagination or rate limits is made.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each purposeful and front-loaded. No redundancy; the description is succinct yet packs in scope, ordering, return style, an alternative, and behavioral defaults.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 9-parameter tool with full schema descriptions and an output schema, the description covers purpose, defaults, and relationships to siblings adequately. It could have mentioned pagination explicitly, but the cursor parameter is documented in the schema, so this is not a major gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides 100% parameter descriptions, but the description enhances understanding of date_range by stating the default (last_30_days) and the all_time option, and clarifies that from_date/to_date are for custom ranges. It also implies the output contains ses_message_id, linking to get_message.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches email events, enumerates the event types, and specifies ordering (newest first). It also distinguishes itself from siblings by pointing to get_message for full timelines and implicitly contrasting with email_stats and list_sources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises when to use get_message instead: 'use get_message with a row's ses_message_id for the full timeline.' It also clarifies the default date window (last 30 days) and how to override it with date_range 'all_time', giving concrete usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_sourceUpdate sourceAIdempotentInspect
Rename a source or change its badge color. Omitted fields are left unchanged. Retention and deletion are deliberately not available here — use the web UI.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | New display name | |
| color | No | New badge color | |
| source_id | Yes | Source id from list_sources |
Output Schema
| Name | Required | Description |
|---|---|---|
| setup | Yes | |
| source | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the safety profile (non-destructive, idempotent, not read-only), and the description adds genuinely new behavioral context: patch semantics ('Omitted fields are left unchanged') and an explicit capability boundary around retention/deletion. It stops short of stating auth or permission requirements, which keeps it below 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, each earning its place: purpose, patch behavior, and scope boundary. The purpose is front-loaded and there is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter mutation tool with full schema coverage, an output schema, and annotations covering the safety profile, the description supplies everything else an agent needs: what changes, what happens to omitted fields, and what is out of scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3, but the description adds meaningful semantics beyond the schema by explaining that unspecified parameters are preserved rather than reset — important for interpreting two of the three optional fields. It does not add format or validation details the schema lacks.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence names the exact mutation ('rename a source or change its badge color'), a specific verb plus the two resources it can touch. It is instantly distinguishable from siblings like create_source and list_sources, which deal with creation and enumeration rather than modification.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit exclusion ('Retention and deletion are deliberately not available here') and routes the agent to the web UI as the alternative. It does not, however, distinguish itself from other sibling tools such as get_source_setup or create_source, and gives no prerequisites for when an update is appropriate.
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.
3 tool updates
- Changed
create_source3 fields changed- changed
Output schema / properties / setup / properties / aws_region / descriptionPrevious value: -"SES region chosen on the Setup page; null until picked"New value: +"SES region, chosen on the Setup page or inferred from the confirmed SNS topic; null until then" - changed
Output schema / properties / setup / properties / launch_stack_url / descriptionPrevious value: -"CloudFormation quick-create link that provisions everything in the user's AWS account; null until a region is picked"New value: +"CloudFormation quick-create link that provisions everything in the user's AWS account; opens the console's last-used region until aws_region is set" - changed
Output schema / properties / setup / properties / launch_stack_url / typePrevious value: -[ - "string", - "null" -]New value: +"string"
- Changed
get_source_setup3 fields changed- changed
Output schema / properties / setup / properties / aws_region / descriptionPrevious value: -"SES region chosen on the Setup page; null until picked"New value: +"SES region, chosen on the Setup page or inferred from the confirmed SNS topic; null until then" - changed
Output schema / properties / setup / properties / launch_stack_url / descriptionPrevious value: -"CloudFormation quick-create link that provisions everything in the user's AWS account; null until a region is picked"New value: +"CloudFormation quick-create link that provisions everything in the user's AWS account; opens the console's last-used region until aws_region is set" - changed
Output schema / properties / setup / properties / launch_stack_url / typePrevious value: -[ - "string", - "null" -]New value: +"string"
- Changed
update_source3 fields changed- changed
Output schema / properties / setup / properties / aws_region / descriptionPrevious value: -"SES region chosen on the Setup page; null until picked"New value: +"SES region, chosen on the Setup page or inferred from the confirmed SNS topic; null until then" - changed
Output schema / properties / setup / properties / launch_stack_url / descriptionPrevious value: -"CloudFormation quick-create link that provisions everything in the user's AWS account; null until a region is picked"New value: +"CloudFormation quick-create link that provisions everything in the user's AWS account; opens the console's last-used region until aws_region is set" - changed
Output schema / properties / setup / properties / launch_stack_url / typePrevious value: -[ - "string", - "null" -]New value: +"string"
3 tool updates
- Changed
create_source3 fields changed- added
Output schema / properties / setup / properties / aws_regionAdded value: +{ + "description": "SES region chosen on the Setup page; null until picked", + "type": [ + "string", + "null" + ] +} - added
Output schema / properties / setup / properties / launch_stack_urlAdded value: +{ + "description": "CloudFormation quick-create link that provisions everything in the user's AWS account; null until a region is picked", + "type": [ + "string", + "null" + ] +} - changed
Output schema / properties / setup / requiredPrevious value: -[ - "webhook_url", - "config_set_name", - "sns_topic_name", - "setup_url", - "steps" -]New value: +[ + "webhook_url", + "config_set_name", + "sns_topic_name", + "aws_region", + "launch_stack_url", + "setup_url", + "steps" +]
- Changed
get_source_setup3 fields changed- added
Output schema / properties / setup / properties / aws_regionAdded value: +{ + "description": "SES region chosen on the Setup page; null until picked", + "type": [ + "string", + "null" + ] +} - added
Output schema / properties / setup / properties / launch_stack_urlAdded value: +{ + "description": "CloudFormation quick-create link that provisions everything in the user's AWS account; null until a region is picked", + "type": [ + "string", + "null" + ] +} - changed
Output schema / properties / setup / requiredPrevious value: -[ - "webhook_url", - "config_set_name", - "sns_topic_name", - "setup_url", - "steps" -]New value: +[ + "webhook_url", + "config_set_name", + "sns_topic_name", + "aws_region", + "launch_stack_url", + "setup_url", + "steps" +]
- Changed
update_source3 fields changed- added
Output schema / properties / setup / properties / aws_regionAdded value: +{ + "description": "SES region chosen on the Setup page; null until picked", + "type": [ + "string", + "null" + ] +} - added
Output schema / properties / setup / properties / launch_stack_urlAdded value: +{ + "description": "CloudFormation quick-create link that provisions everything in the user's AWS account; null until a region is picked", + "type": [ + "string", + "null" + ] +} - changed
Output schema / properties / setup / requiredPrevious value: -[ - "webhook_url", - "config_set_name", - "sns_topic_name", - "setup_url", - "steps" -]New value: +[ + "webhook_url", + "config_set_name", + "sns_topic_name", + "aws_region", + "launch_stack_url", + "setup_url", + "steps" +]
3 tool updates
- Added
create_source - Added
get_source_setup - Added
update_source
4 tool updates
- First observed
email_stats - First observed
get_message - First observed
list_sources - First observed
search_events
Related MCP Connectors
Email deliverability monitoring and sending: bounces, complaints, suppression, campaigns.
- LimoneneOAuthapp.limonene
Read-only Amazon seller analytics: sales, Buy Box, FBA inventory, alerts, revenue and fees.
Send, track, and manage transactional and bulk email delivery
Send transactional email, run campaigns, manage contacts and automations, audit deliverability.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceLets you inspect the health of your AWS Lambda functions and S3 buckets using plain English, with read-only access.-
- AlicenseAqualityBmaintenanceProvides read-only search and retrieval of archived emails, archive statistics, health, and ingestion sources, with an optional administrative toolset for user, role, reindexing, and queue management.6MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to query and manage email deliverability data — bounces, complaints, suppressions, delivery stats, and campaigns — across multiple providers like AWS SES, SendGrid, Mailgun, and Postmark.10 npmMIT
- AlicenseNot gradedqualityCmaintenanceProvides read-only tools to search customers, orders, and business documents across PostgreSQL, JSON CRM, and Markdown sources, with tenant isolation, PII masking, and auditable access.Apache 2.0
Glama MCP Gateway
Add one secure layer between your agents and this server.