Jump to related tools in the same category or review the original source on GitHub.

Moltbook @ttulttul Updated 1/30/2026

Mailchannels OpenClaw Plugin & Skill | ClawHub

Looking to integrate Mailchannels into your AI workflows? This free OpenClaw plugin from ClawHub helps you automate moltbook tasks instantly, without having to write custom tools from scratch.

What this skill does

Send email via MailChannels Email API and ingest signed delivery-event webhooks into Clawdbot (Moltbot).

Install

npx clawhub@latest install mailchannels

Full SKILL.md

Open original
Metadata table.
namedescriptionhomepage
mailchannels-email-apiSend email via MailChannels Email API and ingest signed delivery-event webhooks into Clawdbot (Moltbot).https://docs.mailchannels.net/email-api/

SKILL.md content below is scrollable.

MailChannels Email API (Send + Delivery Events)

Environment

Required:

  • MAILCHANNELS_API_KEY (send in X-Api-Key)
  • MAILCHANNELS_ACCOUNT_ID (aka customer_handle)

Optional:

  • MAILCHANNELS_BASE_URL (default: https://api.mailchannels.net/tx/v1), MAILCHANNELS_WEBHOOK_ENDPOINT_URL

Domain Lockdown (DNS)

Create a TXT record for each sender domain:

  • Host: _mailchannels.<your-domain>
  • Value: v=mc1; auid=<YOUR_ACCOUNT_ID>

API Quick Reference

Base URL: ${MAILCHANNELS_BASE_URL:-https://api.mailchannels.net/tx/v1}

  • Send: POST /send
  • Send async: POST /send-async
  • Webhook: POST /webhook?endpoint=<url>, GET /webhook, DELETE /webhook, POST /webhook/validate
  • Public key: GET /webhook/public-key?id=<keyid>

Sending Email

Minimum payload fields: personalizations, from, subject, content. Use /send for normal traffic and /send-async for queued/low-latency; both produce webhooks. Persist MailChannels correlation IDs (e.g., request_id).

Delivery Events (Webhooks)

MailChannels POSTs a JSON array. Common fields: email, customer_handle, timestamp, event, request_id. Bounce fields often include: recipients, status, reason, smtp_id.

Moltbot Hooks Routing

  1. Enable hooks in ~/.clawdbot/moltbot.json.
  2. Map /hooks/<path> to an agent action via hooks.mappings and optional transform.
  3. Enroll the public endpoint in MailChannels /webhook?endpoint=....

Webhook Signature Verification

Headers: Content-Digest, Signature-Input, Signature. Steps:

  • Parse Signature-Input (name, created, alg, keyid).
  • Reject stale created values.
  • Fetch public key by keyid.
  • Recreate the RFC 9421 signature base.
  • Verify ed25519 signature (avoid hand-rolling). Also verify JSON body is an array and every event has customer_handle == MAILCHANNELS_ACCOUNT_ID.

Correlation + State Updates

Store your internal message ID + MailChannels IDs (e.g., request_id, smtp_id). Update delivery state from events: processed, delivered, soft-bounced, hard-bounced, dropped. Operational tips: respond 2xx quickly, process async, store raw events, dedupe retries.

Original Repository URL: https://github.com/openclaw/skills/blob/main/skills/ttulttul/mailchannels
Latest commit: https://github.com/openclaw/skills/commit/fcce3fc219e5c69f9c1a664731cf710109879743

Related skills

If this matches your use case, these are close alternatives in the same category.