Trusted Gateway
Send email only to approved domains.
SMTP credentials stay encrypted on the server. Every recipient must belong to a domain configured in the connector.
Dashboard fields
- SMTP host and port: the provider's SSL endpoint, commonly port 465.
- Allowed recipient domains: exact domains such as company.com.
- From address, username and password: a dedicated mailbox credential encrypted after save.
Create the secured tool
from uuid import uuid4
def email_send(to: str, subject: str, body: str) -> dict:
"""Send plain-text email through the trusted connector."""
result = security.execute(
agent_id="support-agent",
session_id="support-session",
action="email.send",
arguments={"to": [to], "subject": subject, "body": body},
idempotency_key=f"email-{uuid4()}",
)
return result["output"]
Recommended permission
permissions = {"email.send": "REQUIRE_APPROVAL"}
After approval, retry the exact operation through the SDK approval flow without changing recipients or content.
Limits
One call accepts 1–50 recipients, a subject up to 200 characters and a plain-text body up to 100,000 characters. Header newlines and unapproved domains are rejected.
Delivery test
Validate does not send email. Use a dedicated least-privilege mailbox and staging recipient to confirm SMTP login and delivery.