How to connect Resend MCP with ChatGPT

Connect ChatGPT 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

How to connect Resend MCP with ChatGPT

ChatGPT can take action across your apps and files, stay with a project for hours, and turn a goal into finished materials like sheets, slides, and docs, not just answers.

In this guide, I will explain the easiest and most secure way to connect your Resend account to ChatGPT via Composio Connect, so it can send transactional emails, manage your templates, track deliveries and bounces, inspect webhooks, and schedule sends through natural language commands without ever putting your account credentials at risk.

Also integrate Resend MCP with

Why use Composio over default connectors?

  • Apps with read and write access. Default connectors mostly can read your data. Composio's Resend integration lets ChatGPT take actions like creating drafts, sending updates, labeling records, and more.
  • 1,500+ SaaS toolkits out of the box. Composio gives you instant access to a vast catalog of pre-built connectors, from Gmail and Slack to Notion, Linear, and Salesforce.
  • One MCP server for every app. Connect any of your applications on demand through a single endpoint, rather than juggling a separate server for each app.
  • Smart, context-aware tool loading. Unlike traditional MCP servers that dump every available tool into the LLM context window, Composio searches for and loads only the tools relevant to the task at hand.
  • Cross-app automation. Chain actions across multiple apps in a single run - fetch a thread, summarize it in Notion, and post highlights to Slack without leaving the conversation.

Prerequisites

Note: Composio connects through OAuth. You will be asked to sign in and approve specific permissions. Review the permission screen carefully if you are using a work account.

Step-by-step: Connect Resend to ChatGPT

1. Install the Composio plugin

Click the button. ChatGPT opens the Composio plugin page. Click Install plugin.

Install in ChatGPT

Composio plugin page in ChatGPT with the Install plugin button

You can also find it inside ChatGPT: go to Settings, open Plugins, search the marketplace for Composio, and click Install plugin.

2. Authenticate

After you install, ChatGPT asks you to authenticate with Composio. Log in and click Allow access to authorize ChatGPT to use your Composio account.

Composio login and Allow access screen for ChatGPT

3. Start using Composio

That is it. Composio tools are now available in ChatGPT. Type @Composio followed by your request, for example @Composio find unread Resend messages and summarize them, and it will run the actions you authorize. On first use it asks you to authorize Resend.

Option 2: Add Composio as an MCP server

If you cannot use the plugin marketplace, add Composio as a custom MCP server instead.

1. Open the MCP settings

In ChatGPT, go to Settings and open the Plugins section. Inside the Plugins page, click the MCP tab.

ChatGPT settings showing the Plugins page with the MCP tab selected

2. Add the server

Click Add server. In the Name field enter Composio, for Type select Streamable HTTP, and in the URL field paste the Composio MCP server URL:

bash
https://connect.composio.dev/mcp
ChatGPT Add server dialog with the name Composio, type Streamable HTTP, and the Composio MCP URL

Then click Save. The Composio server now appears in your MCP plugins list.

ChatGPT Plugins page showing the Composio MCP server added to the list

3. Authenticate

Click Authenticate on the Composio entry, log in via Composio, and click Allow access. Composio tools are then available in ChatGPT the same way as with the plugin.

What you can do after connecting Resend

  • Send transactional receipt email to customer
  • Resend failed emails to recipients now
  • Preview email template with test recipients

Security + privacy notes (important)

  • Use least-privilege access: Only grant permissions you actually need.
  • Review OAuth permissions before approving: Make sure requested scopes match what you expect Composio and ChatGPT to do.
  • Keep write actions human-reviewed: For actions like sending messages, creating labels, or editing drafts, keep manual confirmation enabled.
  • Be careful with sensitive data: Avoid using this setup with highly sensitive information unless allowed by your personal, company, or client policies.
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. ChatGPT 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