Skip to main content
Glama

Connect or update sender

update_sender
Idempotent

Connect the project's email provider (Resend, Amazon SES, Postmark, SendGrid, Mailgun or SMTP), or change its from address or hourly cap. Credentials are tested first and nothing is saved if they fail; then Sendocado sets up the provider's delivery events. Every field is required: read get_sender first and send null credentials to keep the stored ones. Switching providers replaces the old connection and its sending domains. Credentials come from the user; never invent them.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "project_id": "<project_id>",
      "from_name": "<from_name>",
      "from_email": "<from_email>",
      "reply_to_email": "<reply_to_email>",
      "max_sends_per_hour": "<max_sends_per_hour>",
      "provider": "<provider>"
    },
    "name": "update_sender"
  }
}

Input Schema

NameRequiredDescriptionDefault
providerYesThe provider account and its credentials. A null credential keeps the one stored for the same provider. Gmail is first connected in the app.
from_nameYesThe name people see the email from, e.g. "Maya at Acme".
from_emailYesAn address on a domain the provider has verified.
project_idYes
reply_to_emailYesReply-To for transactional email; marketing replies come to Sendocado.
max_sends_per_hourYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the annotations by disclosing the validation-then-persist ordering (credentials tested first, nothing saved on failure), the post-save side effect of provisioning delivery events, and the replacement semantics of switching providers. It also adds a credential-provenance safety rule ("never invent them"). Minor tension: "replaces the old connection and its sending domains" reads as destructive side effects while destructiveHint=false, though this is an upsert/replace rather than a deletion.

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?

Four sentences, each carrying distinct load: capability, validation behavior, the required-fields/prerequisite rule, and replacement consequence. The most consequential constraint (read get_sender first, null to keep credentials) is placed centrally rather than buried.

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

Completeness4/5

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

For a 6-required-parameter upsert with a seven-variant nested provider union and no output schema, the description covers discovery, validation ordering, credential reuse, and replacement consequences well. It does not describe what the response contains after the provider events are set up, which is the main residual gap.

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?

With ~67% schema description coverage, the schema already documents provider, from_name, from_email, and reply_to_email. The description adds real meaning for max_sends_per_hour ("hourly cap", which the schema leaves undocumented) and reinforces the null-keeps-stored-credential convention. Beyond that it mostly restates structured data, so the baseline of 3 applies.

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?

Opens with a specific verb+resource pair ("Connect the project's email provider") and enumerates the supported providers, then names the secondary capability (changing from address or hourly cap). It is clearly differentiated from siblings get_sender and delete_sender, which are named or implied by contrast.

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 an explicit prerequisite workflow: read get_sender first, and send null credentials to retain stored ones. It also warns that switching providers replaces the old connection. It stops short of stating when *not* to use this versus check_sender or create_sending_domain, but the connect-vs-update context is clear.

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