How to integrate Resend MCP with Hermes

Connect Hermes to Resend MCP. Send transactional receipt email to customer, resend failed emails to recipients now, and more using natural language, with authentication handled for you.

Resend MCP logoResend MCP
Dcr Oauth

Resend MCP is a transactional email service for sending and managing programmatic email. It provides fast, developer-friendly APIs and templates for reliable delivery.

95 Tools

Introduction

Hermes is a 24/7 autonomous agent that lives on your computer or server — it remembers what it learns and evolves as your usage grows.

This guide explains the easiest and most robust way to connect your Resend account to Hermes. You can do this through either Composio Connect CLI or Composio Connect MCP. For personal use we recommend the CLI, but you won't go wrong with MCP either.

Also integrate Resend MCP with

What is Composio Connect?

Composio Connect is a consumer offering that lets anyone plug 1,500+ applications directly into their agent harness — including Hermes. It can:

  • Search and load tools from relevant toolkits on-demand, reducing context usage.
  • Chain multiple tools to accomplish complex workflows via a remote workbench, without excessive back-and-forth with the LLM.
  • Manage app authentication end-to-end with zero manual overhead.

Integrating Resend with Hermes

Using Composio Connect CLI

1. Install the Composio CLI

Run the install script directly, or paste https://composio.dev/hermes into your Hermes chat box to have it installed for you.

bash
curl -fsSL https://composio.dev/install | bash
Hermes authenticating with Composio

2. Authenticate

Once the CLI is installed, ask Hermes to authenticate with Composio.

3. Connect to Resend

Ask your agent to connect to Resend, or simply request any Resend-related task. Hermes will prompt you to authenticate and authorize access.

4. Done. You're all set with a new Resend connection.


Using Composio Connect MCP

1. Get your MCP URL and API Key

Go to dashboard.composio.dev and copy your Connect MCP URL and API key.

Copy MCP URL and API key from Composio dashboard

2. Open the Hermes config file

bash
nano ~/.hermes/config.yaml

3. Add the Composio Connect MCP server

bash
mcp_servers:
  composio:
    url: "https://connect.composio.dev/mcp"
    headers:
      x-consumer-api-key: "YOUR_COMPOSIO_API_KEY"
    connect_timeout: 60
    timeout: 180

Save with Ctrl + O, Enter, then exit with Ctrl + X.

4. Restart your Hermes agent

Once restarted, ask your agent to connect to Resend or request any Resend-related task. It will prompt you to authenticate and authorize access.

5. Done!

What is the Resend MCP server, and what's possible with it?

The Resend MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your Resend account. It provides structured and secure access so your agent can perform Resend operations on your behalf.

Way Forward

With Resend connected, Hermes can now act on your behalf whenever it detects a relevant task or you ask it to.

From here, you can extend Hermes further:

  • Connect more apps: Calendar, Slack, Notion, Linear, and hundreds of others are available through the same Composio Connect setup. Each new integration compounds what Hermes can do for you.
  • Build workflows across tools: Once multiple apps are connected, Hermes can chain actions together — turn an email into a calendar invite, a Slack message into a Linear ticket, or a meeting note into a follow-up draft.
  • Let it learn your patterns: The more you use Hermes, the better it gets at anticipating how you'd handle recurring tasks. Give it feedback on drafts and decisions, and it will adapt.

If you run into trouble or want to share what you've built, join the community or check out the Docs for deeper configuration options.

TOOLS

Supported Tools

Every Resend MCP action and event your agent gets out of the box.

Add-contact-to-segment

Add a contact to a segment in Resend (by contact ID or email).

Add-suppression

Add an email address to the suppression list in Resend.

Batch-add-suppressions

Add multiple email addresses to the suppression list in Resend in a single call.

Batch-remove-suppressions

Remove multiple entries from the suppression list in Resend in a single call, by email addresses or by suppression IDs (provide exactly one of the two).

Cancel-broadcast

**Purpose:** Cancel a queued or scheduled broadcast by ID or Resend dashboard URL, without removing it.

Cancel-email

Cancel a scheduled email that has not yet been sent.

Compose-broadcast

**Purpose:** Set the TipTap JSON content of a broadcast, enabling it to be edited visually in the Resend dashboard editor.

Compose-template

**Purpose:** Set the TipTap JSON content of a template, enabling it to be edited visually in the Resend dashboard editor.

Connect-to-editor

**Purpose:** Show agent presence in the Resend dashboard editor.

Create-api-key

Create a new API key in Resend.

Create-automation

**Purpose:** Create an automation workflow that triggers on events and executes a sequence of steps.

Create-broadcast

**Purpose:** Create a broadcast campaign (one email sent to an entire segment).

Create-contact

Create a new contact in Resend.

Create-contact-import

Bulk-import contacts from a CSV file into Resend.

Create-contact-property

Create a new contact property in Resend.

Create-domain

Create a new domain in Resend.

Create-domain-claim

Start a claim for a domain another Resend account has already verified.

Create-segment

Create a new segment in Resend.

Create-template

Create a new email template in Resend.

Create-topic

Create a new topic in Resend.

Create-webhook

Create a new webhook in Resend.

Disconnect-from-editor

Remove agent presence from the Resend dashboard editor.

Duplicate-automation

Duplicate an existing automation by ID or Resend dashboard URL.

Duplicate-template

Duplicate an existing email template in Resend.

Get-automation

**Purpose:** Get details of a specific automation (with its workflow) or list all automations.

Get-automation-runs

**Purpose:** List runs for an automation, or get details of a specific run.

Get-broadcast

Retrieve full details of a specific broadcast by ID or Resend dashboard URL (e.

Get-contact

Get a contact by ID or email from Resend.

Get-contact-import

Get the status and counts of a contact import by ID.

Get-contact-property

Get a contact property by ID from Resend.

Get-domain

Get a domain by ID from Resend.

Get-domain-claim

Retrieve the latest claim for a domain by its placeholder Domain ID (the domain_id from create-domain-claim).

Get-email

Retrieve full details of a specific sent transactional email by ID, including message_id, HTML and plain text content.

Get-log

**Purpose:** Get detailed information about a specific API request log, including the full request and response bodies.

Get-received-email

Retrieve full details of a specific received email by ID, including HTML and plain text content, headers, and raw email download URL.

Get-received-email-attachment

Retrieve details of a specific attachment from a received email, including a time-limited download URL.

Get-segment

Get a segment by ID from Resend.

Get-sent-email-attachment

Retrieve details of a specific attachment from a sent email, including a time-limited download URL.

Get-suppression

Get a suppression list entry by ID or email address from Resend.

Get-template

Get an email template by ID, alias, or Resend dashboard URL (e.

Get-tiptap-json-content

**Purpose:** Retrieve the existing TipTap JSON content of a broadcast or template, optionally bundled with the TipTap schema reference.

Get-topic

Get a topic by ID from Resend.

Get-webhook

Get a webhook by ID from Resend.

List-api-keys

List all API keys from Resend.

List-broadcasts

**Purpose:** List all broadcast campaigns (newsletters/bulk emails to audiences) with ID, name, audience, status, timestamps.

List-contact-imports

List contact imports from Resend.

List-contact-properties

List all contact properties from Resend.

List-contacts

**Purpose:** List contacts from Resend.

List-contact-segments

List all segments a contact belongs to in Resend (by contact ID or email).

List-contact-topics

List all topic subscriptions for a contact in Resend (by contact ID or email).

List-domains

List all domains from Resend.

List-emails

**Purpose:** List recently sent emails (transactional emails sent via send-email) with metadata: recipient, subject, status, timestamps.

List-logs

**Purpose:** List API request logs for the account.

List-oauth-grants

List OAuth grants for the team — the apps authorized to act on the team's behalf.

List-received-email-attachments

List all attachments from a specific received (inbox) email.

List-received-emails

**Purpose:** List emails received (inbox) by your Resend receiving address.

List-segments

**Purpose:** List all segments in the account.

List-sent-email-attachments

List all attachments from a specific sent email (from send-email or list-emails).

List-suppressions

**Purpose:** List email addresses on the suppression list.

List-templates

List all email templates from Resend.

List-topics

List all topics from Resend.

List-webhooks

List all webhooks from Resend.

Manage-events

**Purpose:** Create, list, get, update, or remove event definitions in Resend.

Publish-template

Publish an email template in Resend.

Remove-api-key

Remove an API key by ID from Resend.

Remove-automation

Remove an automation by ID or Resend dashboard URL.

Remove-broadcast

Remove a broadcast by ID or Resend dashboard URL.

Remove-contact

Remove a contact from Resend (by ID or email).

Remove-contact-from-segment

Remove a contact from a segment in Resend (by contact ID or email).

Remove-contact-property

Remove a contact property by ID from Resend.

Remove-domain

Remove a domain by ID from Resend.

Remove-segment

Remove a segment by ID from Resend.

Remove-suppression

Remove an entry by ID or email address from the suppression list in Resend, allowing the address to receive emails again.

Remove-template

Remove an email template by ID, alias, or Resend dashboard URL from Resend.

Remove-topic

Remove a topic by ID from Resend.

Remove-webhook

Remove a webhook by ID from Resend.

Revoke-oauth-grant

Revoke an OAuth grant by ID.

Send-batch-emails

**Purpose:** Send up to 100 transactional emails in one API call.

Send-broadcast

**Purpose:** Send (or schedule) an existing broadcast by ID.

Send-email

**Purpose:** Send a single transactional email to one or more recipients immediately (or schedule it).

Send-event

**Purpose:** Fire an event to trigger automations for a specific contact.

Share-email

Create a shareable link for a sent or received email, so anyone with the link can view it without Resend dashboard access.

Update-api-key

Rename an existing API key in Resend.

Update-automation

**Purpose:** Update an automation's name, status, or workflow.

Update-broadcast

Update broadcast metadata by ID or Resend dashboard URL (name, subject, from, html, text, segment, preview text, reply-to).

Update-contact

Update a contact in Resend (by ID or email).

Update-contact-property

Update an existing contact property in Resend.

Update-contact-topics

Update topic subscriptions for a contact in Resend (by contact ID or email).

Update-domain

Update an existing domain in Resend.

Update-email

Reschedule a scheduled email by updating its scheduled send time.

Update-template

Update template metadata by ID, alias, or Resend dashboard URL (name, subject, from, html, variables, etc.

Update-topic

Update an existing topic in Resend.

Update-webhook

Update an existing webhook in Resend.

Verify-domain

Trigger domain verification in Resend.

Verify-domain-claim

Trigger asynchronous DNS verification and ownership transfer for a domain claim, using the placeholder Domain ID.

FAQ

Frequently asked questions

With a standalone Resend MCP server, the agents and LLMs can only access a fixed set of Resend tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from Resend and many other apps based on the task at hand, all through a single MCP endpoint.

Yes, you can. Hermes fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right Resend tools.

Yes, absolutely. You can configure which Resend scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your Resend data and credentials are handled as safely as possible.

Start with Resend MCP.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Resend MCP tool your agent needs.Free to start.

Start building