Skill v1.0.0
currentLLM-judged scan90/100version: "1.0.0" name: agentmail-cli description: Operate AgentMail from a shell with the official CLI. Use when the user wants commands for listing or creating inboxes, reading or searching mail, sending or replying, managing drafts, or scripting JSON/YAML output; do not use for SDK code, MCP setup, or framework adapters.
AgentMail CLI
Install the CLI and provide the API key through the environment.
npm install -g agentmail-cliexport AGENTMAIL_API_KEY="am_..."
A resource nested under another is a nested subcommand, e.g. inboxes messages, inboxes threads, pods inboxes, pods threads (CLI 1.x; the colon form inboxes:messages is rejected). Run agentmail <resource> --help to list what a resource supports.
Inboxes
agentmail inboxes listagentmail inboxes get --inbox-id <inbox_id>agentmail inboxes create --display-name "Support Agent" --username supportagentmail inboxes delete --inbox-id <inbox_id>
Confirm the exact inbox before running the destructive delete command.
Messages and threads
agentmail inboxes messages list --inbox-id <inbox_id>agentmail inboxes messages get --inbox-id <inbox_id> --message-id <message_id>agentmail inboxes messages send --inbox-id <inbox_id> \--to "recipient@example.com" \--subject "Hello" \--text "Message body"# HTML body instead of plain textagentmail inboxes messages send --inbox-id <inbox_id> \--to "recipient@example.com" \--subject "Hello" \--html "<h1>Hello</h1>"agentmail inboxes messages reply --inbox-id <inbox_id> \--message-id <message_id> \--text "Reply body"agentmail inboxes messages forward --inbox-id <inbox_id> \--message-id <message_id> \--to "someone@example.com"agentmail inboxes threads list --inbox-id <inbox_id>agentmail inboxes threads get --inbox-id <inbox_id> --thread-id <thread_id>
Use a message ID for replies. Fetch the full message before relying on body content.
Drafts
agentmail inboxes drafts create --inbox-id <inbox_id> \--to "recipient@example.com" \--subject "Pending approval" \--text "Draft body"agentmail inboxes drafts list --inbox-id <inbox_id>agentmail inboxes drafts get --inbox-id <inbox_id> --draft-id <draft_id>agentmail inboxes drafts send --inbox-id <inbox_id> --draft-id <draft_id>
Pods
Pods group inboxes together.
agentmail pods create --name "My Pod"agentmail pods listagentmail pods inboxes create --pod-id <pod_id> --display-name "Pod Inbox"agentmail pods inboxes list --pod-id <pod_id>agentmail pods threads list --pod-id <pod_id>agentmail pods threads get --pod-id <pod_id> --thread-id <thread_id>
Webhooks
agentmail webhooks create --url "https://example.com/webhook" --event-type message.receivedagentmail webhooks list
Domains
agentmail domains create --domain example.com# Optional: route bounce/complaint notifications to your inboxes.agentmail domains create --domain example.com --feedback-enabledagentmail domains verify --domain-id <domain_id>agentmail domains get-zone-file --domain-id <domain_id>
Global flags
| Flag | Purpose | |
|---|---|---|
--api-key | Override AGENTMAIL_API_KEY for this call | |
--base-url | Point at a non-default API host | |
--environment | Select a named environment | |
--format | Output format (see below) | |
--format-error | Control structured error output | |
--transform | GJSON projection of a successful response | |
--transform-error | GJSON projection of an error response | |
--debug | Verbose request/response logging |
Output formats
--format accepts: auto (default), pretty, json, jsonl, yaml, raw, explore.
Run agentmail --help and the relevant resource's --help before using an administrative command not covered here.