{
  "schemaVersion": "1.0",
  "item": {
    "slug": "agentmail-mcp-cli",
    "name": "AgentMail MCP CLI",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/FloHiwg/agentmail-mcp-cli",
    "canonicalUrl": "https://clawhub.ai/FloHiwg/agentmail-mcp-cli",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/agentmail-mcp-cli",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=agentmail-mcp-cli",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/agentmail-mcp-cli"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/agentmail-mcp-cli",
    "agentPageUrl": "https://openagent3.xyz/skills/agentmail-mcp-cli/agent",
    "manifestUrl": "https://openagent3.xyz/skills/agentmail-mcp-cli/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/agentmail-mcp-cli/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "AgentMail MCP CLI",
        "body": "Email management for AI agents via the AgentMail API.\n\nDocumentation: https://docs.agentmail.to\nGet API Key: https://agentmail.to"
      },
      {
        "title": "Prerequisites",
        "body": "Required:\n\nNode.js >= 20.0.0\nAgentMail API key from agentmail.to\n\nInstallation:\n\nnpm install -g openclaw-agentmail-cli\n\nThis installs the agentmail command globally."
      },
      {
        "title": "Authentication",
        "body": "Set your API key (get one from agentmail.to):\n\n# Option 1: Environment variable (recommended)\nexport AGENTMAIL_API_KEY=\"your_api_key\"\nagentmail inboxes list\n\n# Option 2: CLI parameter\nagentmail --api-key \"your_api_key\" inboxes list"
      },
      {
        "title": "Inbox Management",
        "body": "# List all inboxes\nagentmail inboxes list\n\n# List with limit\nagentmail inboxes list --limit 5\n\n# Create a new inbox\nagentmail inboxes create --display-name \"My Agent\"\n\n# Create with username and domain\nagentmail inboxes create --username myagent --domain agentmail.to --display-name \"My Agent\"\n\n# Get inbox details\nagentmail inboxes get <inbox-id>\n\n# Delete an inbox (destructive!)\nagentmail inboxes delete <inbox-id>"
      },
      {
        "title": "Thread Management",
        "body": "# List threads in inbox\nagentmail threads list <inbox-id>\n\n# List with options\nagentmail threads list <inbox-id> --limit 10\n\n# Filter by labels\nagentmail threads list <inbox-id> --labels '[\"unread\"]'\n\n# Filter by date\nagentmail threads list <inbox-id> --after \"2024-01-01\" --before \"2024-12-31\"\n\n# Get thread details (includes all messages)\nagentmail threads get <inbox-id> <thread-id>"
      },
      {
        "title": "Send Messages",
        "body": "# Send a simple email\nagentmail messages send <inbox-id> \\\n  --to user@example.com \\\n  --subject \"Hello\" \\\n  --text \"Email body here\"\n\n# Send to multiple recipients\nagentmail messages send <inbox-id> \\\n  --to user1@example.com \\\n  --to user2@example.com \\\n  --subject \"Team Update\" \\\n  --text \"Hello team...\"\n\n# Send with CC and BCC\nagentmail messages send <inbox-id> \\\n  --to primary@example.com \\\n  --cc copy@example.com \\\n  --bcc hidden@example.com \\\n  --subject \"Important\" \\\n  --text \"Please review...\"\n\n# Send HTML email\nagentmail messages send <inbox-id> \\\n  --to user@example.com \\\n  --subject \"Newsletter\" \\\n  --html \"<h1>Hello</h1><p>HTML content</p>\"\n\n# Send with labels\nagentmail messages send <inbox-id> \\\n  --to user@example.com \\\n  --subject \"Outreach\" \\\n  --text \"Hello...\" \\\n  --labels '[\"campaign\",\"outbound\"]'"
      },
      {
        "title": "Reply & Forward",
        "body": "# Reply to a message\nagentmail messages reply <inbox-id> <message-id> \\\n  --text \"Thank you for your email.\"\n\n# Reply with HTML\nagentmail messages reply <inbox-id> <message-id> \\\n  --html \"<p>Thank you!</p>\"\n\n# Reply all\nagentmail messages reply <inbox-id> <message-id> \\\n  --text \"Replying to everyone...\" \\\n  --reply-all\n\n# Forward a message\nagentmail messages forward <inbox-id> <message-id> \\\n  --to forward-to@example.com \\\n  --text \"FYI - see below\"\n\n# Forward to multiple\nagentmail messages forward <inbox-id> <message-id> \\\n  --to team@example.com \\\n  --cc manager@example.com \\\n  --subject \"Fwd: Customer Inquiry\" \\\n  --text \"Please review\""
      },
      {
        "title": "Labels & Organization",
        "body": "# Add labels to a message\nagentmail messages update <inbox-id> <message-id> \\\n  --add-labels '[\"important\",\"needs-review\"]'\n\n# Remove labels\nagentmail messages update <inbox-id> <message-id> \\\n  --remove-labels '[\"unread\"]'\n\n# Add and remove simultaneously\nagentmail messages update <inbox-id> <message-id> \\\n  --add-labels '[\"processed\"]' \\\n  --remove-labels '[\"unread\",\"pending\"]'"
      },
      {
        "title": "Attachments",
        "body": "# Get attachment details and download URL\nagentmail attachments get <thread-id> <attachment-id>"
      },
      {
        "title": "Available Commands",
        "body": "CommandDescriptioninboxes listList all inboxesinboxes get <id>Get inbox detailsinboxes createCreate new inboxinboxes delete <id>Delete inboxthreads list <inbox-id>List threadsthreads get <inbox-id> <thread-id>Get thread with messagesmessages send <inbox-id>Send new emailmessages reply <inbox-id> <msg-id>Reply to emailmessages forward <inbox-id> <msg-id>Forward emailmessages update <inbox-id> <msg-id>Update labelsattachments get <thread-id> <att-id>Get attachment"
      },
      {
        "title": "inboxes list",
        "body": "-l, --limit <n> - Max items (default: 10)\n--page-token <token> - Pagination token"
      },
      {
        "title": "inboxes create",
        "body": "-u, --username <name> - Email username\n-d, --domain <domain> - Email domain\n-n, --display-name <name> - Display name"
      },
      {
        "title": "threads list",
        "body": "-l, --limit <n> - Max items (default: 10)\n--page-token <token> - Pagination token\n--labels <json> - Filter by labels (JSON array)\n--before <datetime> - Before date (ISO 8601)\n--after <datetime> - After date (ISO 8601)"
      },
      {
        "title": "messages send",
        "body": "--to <email> - Recipient (repeatable)\n--cc <email> - CC recipient (repeatable)\n--bcc <email> - BCC recipient (repeatable)\n-s, --subject <text> - Subject line\n-t, --text <body> - Plain text body\n--html <body> - HTML body\n--labels <json> - Labels (JSON array)"
      },
      {
        "title": "messages reply",
        "body": "-t, --text <body> - Plain text body\n--html <body> - HTML body\n--reply-all - Reply to all recipients\n--labels <json> - Labels (JSON array)"
      },
      {
        "title": "messages forward",
        "body": "--to <email> - Recipient (repeatable)\n--cc <email> - CC recipient (repeatable)\n--bcc <email> - BCC recipient (repeatable)\n-s, --subject <text> - Subject line\n-t, --text <body> - Plain text body\n--html <body> - HTML body\n--labels <json> - Labels (JSON array)"
      },
      {
        "title": "messages update",
        "body": "--add-labels <json> - Labels to add (JSON array)\n--remove-labels <json> - Labels to remove (JSON array)"
      },
      {
        "title": "Check for New Emails",
        "body": "# List unread threads\nagentmail threads list <inbox-id> --labels '[\"unread\"]' --limit 20"
      },
      {
        "title": "Process and Archive Email",
        "body": "# 1. Get thread\nagentmail threads get <inbox-id> <thread-id>\n\n# 2. Process content (your logic)\n\n# 3. Mark as processed\nagentmail messages update <inbox-id> <message-id> \\\n  --add-labels '[\"processed\"]' \\\n  --remove-labels '[\"unread\"]'"
      },
      {
        "title": "Auto-Reply Workflow",
        "body": "# 1. Check for emails needing reply\nagentmail threads list <inbox-id> --labels '[\"needs-reply\"]'\n\n# 2. Get thread details\nagentmail threads get <inbox-id> <thread-id>\n\n# 3. Send reply\nagentmail messages reply <inbox-id> <message-id> \\\n  --text \"Thank you for reaching out. We will respond within 24 hours.\"\n\n# 4. Update labels\nagentmail messages update <inbox-id> <message-id> \\\n  --add-labels '[\"auto-replied\"]' \\\n  --remove-labels '[\"needs-reply\",\"unread\"]'"
      },
      {
        "title": "Create Inbox and Send First Email",
        "body": "# 1. Create inbox\nagentmail inboxes create --display-name \"Sales Bot\"\n# Note the inboxId from response\n\n# 2. Send email\nagentmail messages send <new-inbox-id> \\\n  --to prospect@example.com \\\n  --subject \"Introduction\" \\\n  --text \"Hello! I wanted to reach out...\""
      },
      {
        "title": "Error Handling",
        "body": "If commands fail, check:\n\nAPI Key: Ensure AGENTMAIL_API_KEY is set\nIDs: Verify inbox/thread/message IDs exist\nJSON: Use proper JSON for array options: '[\"value\"]'"
      },
      {
        "title": "Alternative: MCPorter Syntax",
        "body": "If the MCP compatibility is restored, you can also use MCPorter:\n\n# List inboxes\nnpx mcporter call agentmail.list_inboxes\n\n# Send message\nnpx mcporter call agentmail.send_message \\\n  inboxId:<inbox-id> \\\n  to:'[\"user@example.com\"]' \\\n  subject:\"Hello\" \\\n  text:\"Body\""
      },
      {
        "title": "Links",
        "body": "API Documentation: https://docs.agentmail.to\nGet API Key: https://agentmail.to\nMCP Server: https://github.com/agentmail-to/agentmail-mcp\nNode SDK: https://github.com/agentmail-to/agentmail-node"
      }
    ],
    "body": "AgentMail MCP CLI\n\nEmail management for AI agents via the AgentMail API.\n\nDocumentation: https://docs.agentmail.to Get API Key: https://agentmail.to\n\nPrerequisites\n\nRequired:\n\nNode.js >= 20.0.0\nAgentMail API key from agentmail.to\n\nInstallation:\n\nnpm install -g openclaw-agentmail-cli\n\n\nThis installs the agentmail command globally.\n\nAuthentication\n\nSet your API key (get one from agentmail.to):\n\n# Option 1: Environment variable (recommended)\nexport AGENTMAIL_API_KEY=\"your_api_key\"\nagentmail inboxes list\n\n# Option 2: CLI parameter\nagentmail --api-key \"your_api_key\" inboxes list\n\nQuick Reference\nInbox Management\n# List all inboxes\nagentmail inboxes list\n\n# List with limit\nagentmail inboxes list --limit 5\n\n# Create a new inbox\nagentmail inboxes create --display-name \"My Agent\"\n\n# Create with username and domain\nagentmail inboxes create --username myagent --domain agentmail.to --display-name \"My Agent\"\n\n# Get inbox details\nagentmail inboxes get <inbox-id>\n\n# Delete an inbox (destructive!)\nagentmail inboxes delete <inbox-id>\n\nThread Management\n# List threads in inbox\nagentmail threads list <inbox-id>\n\n# List with options\nagentmail threads list <inbox-id> --limit 10\n\n# Filter by labels\nagentmail threads list <inbox-id> --labels '[\"unread\"]'\n\n# Filter by date\nagentmail threads list <inbox-id> --after \"2024-01-01\" --before \"2024-12-31\"\n\n# Get thread details (includes all messages)\nagentmail threads get <inbox-id> <thread-id>\n\nSend Messages\n# Send a simple email\nagentmail messages send <inbox-id> \\\n  --to user@example.com \\\n  --subject \"Hello\" \\\n  --text \"Email body here\"\n\n# Send to multiple recipients\nagentmail messages send <inbox-id> \\\n  --to user1@example.com \\\n  --to user2@example.com \\\n  --subject \"Team Update\" \\\n  --text \"Hello team...\"\n\n# Send with CC and BCC\nagentmail messages send <inbox-id> \\\n  --to primary@example.com \\\n  --cc copy@example.com \\\n  --bcc hidden@example.com \\\n  --subject \"Important\" \\\n  --text \"Please review...\"\n\n# Send HTML email\nagentmail messages send <inbox-id> \\\n  --to user@example.com \\\n  --subject \"Newsletter\" \\\n  --html \"<h1>Hello</h1><p>HTML content</p>\"\n\n# Send with labels\nagentmail messages send <inbox-id> \\\n  --to user@example.com \\\n  --subject \"Outreach\" \\\n  --text \"Hello...\" \\\n  --labels '[\"campaign\",\"outbound\"]'\n\nReply & Forward\n# Reply to a message\nagentmail messages reply <inbox-id> <message-id> \\\n  --text \"Thank you for your email.\"\n\n# Reply with HTML\nagentmail messages reply <inbox-id> <message-id> \\\n  --html \"<p>Thank you!</p>\"\n\n# Reply all\nagentmail messages reply <inbox-id> <message-id> \\\n  --text \"Replying to everyone...\" \\\n  --reply-all\n\n# Forward a message\nagentmail messages forward <inbox-id> <message-id> \\\n  --to forward-to@example.com \\\n  --text \"FYI - see below\"\n\n# Forward to multiple\nagentmail messages forward <inbox-id> <message-id> \\\n  --to team@example.com \\\n  --cc manager@example.com \\\n  --subject \"Fwd: Customer Inquiry\" \\\n  --text \"Please review\"\n\nLabels & Organization\n# Add labels to a message\nagentmail messages update <inbox-id> <message-id> \\\n  --add-labels '[\"important\",\"needs-review\"]'\n\n# Remove labels\nagentmail messages update <inbox-id> <message-id> \\\n  --remove-labels '[\"unread\"]'\n\n# Add and remove simultaneously\nagentmail messages update <inbox-id> <message-id> \\\n  --add-labels '[\"processed\"]' \\\n  --remove-labels '[\"unread\",\"pending\"]'\n\nAttachments\n# Get attachment details and download URL\nagentmail attachments get <thread-id> <attachment-id>\n\nAvailable Commands\nCommand\tDescription\ninboxes list\tList all inboxes\ninboxes get <id>\tGet inbox details\ninboxes create\tCreate new inbox\ninboxes delete <id>\tDelete inbox\nthreads list <inbox-id>\tList threads\nthreads get <inbox-id> <thread-id>\tGet thread with messages\nmessages send <inbox-id>\tSend new email\nmessages reply <inbox-id> <msg-id>\tReply to email\nmessages forward <inbox-id> <msg-id>\tForward email\nmessages update <inbox-id> <msg-id>\tUpdate labels\nattachments get <thread-id> <att-id>\tGet attachment\nCommand Options Reference\ninboxes list\n-l, --limit <n> - Max items (default: 10)\n--page-token <token> - Pagination token\ninboxes create\n-u, --username <name> - Email username\n-d, --domain <domain> - Email domain\n-n, --display-name <name> - Display name\nthreads list\n-l, --limit <n> - Max items (default: 10)\n--page-token <token> - Pagination token\n--labels <json> - Filter by labels (JSON array)\n--before <datetime> - Before date (ISO 8601)\n--after <datetime> - After date (ISO 8601)\nmessages send\n--to <email> - Recipient (repeatable)\n--cc <email> - CC recipient (repeatable)\n--bcc <email> - BCC recipient (repeatable)\n-s, --subject <text> - Subject line\n-t, --text <body> - Plain text body\n--html <body> - HTML body\n--labels <json> - Labels (JSON array)\nmessages reply\n-t, --text <body> - Plain text body\n--html <body> - HTML body\n--reply-all - Reply to all recipients\n--labels <json> - Labels (JSON array)\nmessages forward\n--to <email> - Recipient (repeatable)\n--cc <email> - CC recipient (repeatable)\n--bcc <email> - BCC recipient (repeatable)\n-s, --subject <text> - Subject line\n-t, --text <body> - Plain text body\n--html <body> - HTML body\n--labels <json> - Labels (JSON array)\nmessages update\n--add-labels <json> - Labels to add (JSON array)\n--remove-labels <json> - Labels to remove (JSON array)\nCommon Workflows\nCheck for New Emails\n# List unread threads\nagentmail threads list <inbox-id> --labels '[\"unread\"]' --limit 20\n\nProcess and Archive Email\n# 1. Get thread\nagentmail threads get <inbox-id> <thread-id>\n\n# 2. Process content (your logic)\n\n# 3. Mark as processed\nagentmail messages update <inbox-id> <message-id> \\\n  --add-labels '[\"processed\"]' \\\n  --remove-labels '[\"unread\"]'\n\nAuto-Reply Workflow\n# 1. Check for emails needing reply\nagentmail threads list <inbox-id> --labels '[\"needs-reply\"]'\n\n# 2. Get thread details\nagentmail threads get <inbox-id> <thread-id>\n\n# 3. Send reply\nagentmail messages reply <inbox-id> <message-id> \\\n  --text \"Thank you for reaching out. We will respond within 24 hours.\"\n\n# 4. Update labels\nagentmail messages update <inbox-id> <message-id> \\\n  --add-labels '[\"auto-replied\"]' \\\n  --remove-labels '[\"needs-reply\",\"unread\"]'\n\nCreate Inbox and Send First Email\n# 1. Create inbox\nagentmail inboxes create --display-name \"Sales Bot\"\n# Note the inboxId from response\n\n# 2. Send email\nagentmail messages send <new-inbox-id> \\\n  --to prospect@example.com \\\n  --subject \"Introduction\" \\\n  --text \"Hello! I wanted to reach out...\"\n\nError Handling\n\nIf commands fail, check:\n\nAPI Key: Ensure AGENTMAIL_API_KEY is set\nIDs: Verify inbox/thread/message IDs exist\nJSON: Use proper JSON for array options: '[\"value\"]'\nAlternative: MCPorter Syntax\n\nIf the MCP compatibility is restored, you can also use MCPorter:\n\n# List inboxes\nnpx mcporter call agentmail.list_inboxes\n\n# Send message\nnpx mcporter call agentmail.send_message \\\n  inboxId:<inbox-id> \\\n  to:'[\"user@example.com\"]' \\\n  subject:\"Hello\" \\\n  text:\"Body\"\n\nLinks\nAPI Documentation: https://docs.agentmail.to\nGet API Key: https://agentmail.to\nMCP Server: https://github.com/agentmail-to/agentmail-mcp\nNode SDK: https://github.com/agentmail-to/agentmail-node"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/FloHiwg/agentmail-mcp-cli",
    "publisherUrl": "https://clawhub.ai/FloHiwg/agentmail-mcp-cli",
    "owner": "FloHiwg",
    "version": "1.0.3",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/agentmail-mcp-cli",
    "downloadUrl": "https://openagent3.xyz/downloads/agentmail-mcp-cli",
    "agentUrl": "https://openagent3.xyz/skills/agentmail-mcp-cli/agent",
    "manifestUrl": "https://openagent3.xyz/skills/agentmail-mcp-cli/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/agentmail-mcp-cli/agent.md"
  }
}