Skip to main content
Glama

SpacePost

Create a tenant

create_tenant

Create a tenant.

Creates one of your customers, with its own SES tenant (isolated reputation). external_id must be unique within your account.

Requires a full_access API key. API: POST /tenants (operationId createTenant, Tenants).

Input Schema

NameRequiredDescriptionDefault
nameYes
daily_limitNoMax recipients per day for this tenant. Omit or null for no cap.
external_idNoYour own id for the customer. Unique per account; accepted wherever a tenant id is.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior4/5

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

Beyond the annotations (which only declare non-readonly, non-idempotent, non-destructive), the description adds a concrete auth requirement (full_access API key) and a uniqueness constraint on external_id that an agent cannot get from annotations. It does not say what happens on a duplicate external_id or whether the tenant is immediately active.

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?

Short and front-loaded: purpose first, then domain clarification, then the key constraint, then auth, then the endpoint. The opening line 'Create a tenant.' merely restates the title and could be folded into the next sentence, but the rest is dense with no waste.

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?

With no output schema, the description never indicates what a successful creation returns (an id? an object?). Nor does it describe duplicate-external_id failure behavior. The auth and endpoint details are genuinely useful, but a non-idempotent create tool leaves an agent guessing about the response shape.

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 67% (name undocumented), and the description compensates by documenting the external_id uniqueness rule within the account, which is a server-side constraint rather than a type detail. daily_limit is left to the schema, which already explains it adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource and goes further by explaining the domain object: a tenant is a customer with its own isolated SES reputation. That distinguishes it well from list_tenants/get_tenant. It does not explicitly contrast with the other create_* siblings, but the verb+resource pair is unambiguous.

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 framing ('creates one of your customers, with its own SES tenant (isolated reputation)') implies when you'd reach for it rather than create_domain or create_contact, but there is no explicit when-to-use / when-not statement or named alternative. Usage is inferable rather than stated.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources