Resend Email
resmiKirim email langsung dari editor Anda menggunakan API Resend.
Apa yang bisa Anda lakukan dengan Resend Email MCP?
- Kirim dan kelola email — Minta AI Anda untuk mengirim, menjadwalkan, atau mengirim email secara massal dengan HTML, lampiran, CC/BCC, dan header kustom menggunakan
sendEmaildan alat terkait. - Kelola kontak dan audiens — Buat, perbarui, impor, atau hapus kontak, serta kelola keanggotaan segmen dan langganan topik mereka.
- Buat dan kirim kampanye siaran — Tulis, jadwalkan, dan kirim email siaran dengan placeholder personalisasi dan teks pratinjau.
- Verifikasi dan konfigurasi domain — Tambahkan, verifikasi, dan perbarui domain pengirim, termasuk pengaturan pelacakan, TLS, dan penerimaan.
- Periksa log API dan webhook — Ambil dan periksa log permintaan API dengan isi permintaan/respons lengkap, serta kelola titik akhir webhook.
- Berkolaborasi pada template dan siaran — Hubungkan ke editor visual Resend untuk membaca dan mengulangi konten draf untuk template dan siaran.
Dokumentasi
Server MCP Resend
Hubungkan agen AI Anda ke platform Resend. Kirim dan terima email, kelola kontak, siaran, domain, dan lainnya, langsung dari klien MCP mana pun seperti Claude, Cursor, atau Claude Code.
Kami menawarkan server MCP jarak jauh yang dihosting oleh Resend dan server MCP lokal (paket ini).
Server MCP Jarak Jauh
Resend menghosting server MCP di:
https://mcp.resend.com/mcp
Hubungkan klien MCP mana pun yang mendukung server jarak jauh (HTTP Streamable). Tidak ada yang perlu diinstal dan tidak ada proses lokal yang perlu dijalankan, menjadikannya opsi terbaik untuk klien berbasis web seperti Claude dan platform agen terhosting.
Saat Anda terhubung, klien Anda akan membuka jendela browser untuk masuk ke Resend dan menyetujui akses menggunakan OAuth.
Claude Code
claude mcp add --transport http resend https://mcp.resend.com/mcp
Kemudian jalankan /mcp di Claude Code dan pilih resend untuk menyelesaikan login OAuth.
Claude
Di Claude (web atau desktop), buka Settings > Connectors > Add custom connector dan masukkan:
https://mcp.resend.com/mcp
Cursor
Buka palet perintah dan pilih "Cursor Settings" > "MCP" > "Add new global MCP server".
{
"mcpServers": {
"resend": {
"url": "https://mcp.resend.com/mcp"
}
}
}
Codex
codex mcp add resend --url https://mcp.resend.com/mcp
Copilot
Untuk menggunakan GitHub Copilot di VS Code, tambahkan yang berikut ke settings.json Anda:
{
"mcp": {
"servers": {
"resend": {
"type": "http",
"url": "https://mcp.resend.com/mcp"
}
}
}
}
Windsurf
{
"mcpServers": {
"resend": {
"serverUrl": "https://mcp.resend.com/mcp"
}
}
}
Warp
Di Pengaturan Warp, navigasikan ke Agents > MCP servers, dan klik +Add untuk menambahkan server baru.
{
"resend": {
"serverUrl": "https://mcp.resend.com/mcp"
}
}
Autentikasi dengan kunci API
Jika klien Anda berjalan di tempat yang tidak memungkinkan login browser (server, CI, atau agen headless), berikan kunci API Resend sebagai token Bearer alih-alih menggunakan OAuth.
Claude Code:
claude mcp add --transport http resend https://mcp.resend.com/mcp --header "Authorization: Bearer re_xxxxxxxxx"
Konfigurasi JSON (Cursor, Windsurf, dan lainnya), tambahkan header Authorization:
{
"mcpServers": {
"resend": {
"url": "https://mcp.resend.com/mcp",
"headers": {
"Authorization": "Bearer re_xxxxxxxxx"
}
}
}
}
Server MCP Lokal
Server yang dihosting menjalankan kode sumber terbuka yang sama yang tersedia di NPM sebagai resend-mcp. Jika Anda lebih suka menjalankan server sendiri, Anda dapat mengintegrasikannya ke klien MCP yang didukung menggunakan npx. Anda perlu:
Server lokal mendukung dua mode transport: stdio (default) dan HTTP.
Pilih mode dan klien pilihan Anda di bawah untuk memulai. Ingatlah untuk mengganti re_xxxxxxxxx dengan kunci API Anda yang sebenarnya.
Transport Stdio (Default)
Pengaturan Cepat
Instal untuk semua agen dan editor yang terdeteksi/dipilih:
npx add-mcp resend-mcp --name resend --env "RESEND_API_KEY=re_xxxxxxxxx"
Claude Code
claude mcp add resend -e RESEND_API_KEY=re_xxxxxxxxx -- npx -y resend-mcp
Codex
codex mcp add resend \
--env RESEND_API_KEY=re_xxxxxxxxx \
-- npx -y resend-mcp
Cursor
Buka palet perintah dan pilih "Cursor Settings" > "MCP" > "Add new global MCP server".
{
"mcpServers": {
"resend": {
"command": "npx",
"args": ["-y", "resend-mcp"],
"env": {
"RESEND_API_KEY": "re_xxxxxxxxx"
}
}
}
}
Claude Desktop
Buka pengaturan Claude Desktop > tab "Developer" > "Edit Config".
{
"mcpServers": {
"resend": {
"command": "npx",
"args": ["-y", "resend-mcp"],
"env": {
"RESEND_API_KEY": "re_xxxxxxxxx"
}
}
}
}
Copilot
Untuk menggunakan GitHub Copilot di VS Code, tambahkan yang berikut ke settings.json Anda:
{
"mcp": {
"servers": {
"resend": {
"command": "npx",
"args": ["-y", "resend-mcp"],
"env": {
"RESEND_API_KEY": "re_xxxxxxxxx"
}
}
}
}
}
Gemini CLI
{
"mcpServers": {
"resend": {
"command": "npx",
"args": ["-y", "resend-mcp"],
"env": {
"RESEND_API_KEY": "re_xxxxxxxxx"
}
}
}
}
OpenCode
Tambahkan ke konfigurasi opencode.json Anda:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"resend": {
"type": "local",
"command": ["npx", "-y", "resend-mcp"],
"enabled": true,
"environment": {
"RESEND_API_KEY": "re_xxxxxxxxx"
}
}
}
}
Windsurf
{
"mcpServers": {
"resend": {
"command": "npx",
"args": ["-y", "resend-mcp"],
"env": {
"RESEND_API_KEY": "re_xxxxxxxxx"
}
}
}
}
Devin
Di Devin, buka Settings > Connections > MCP Servers dan klik Add a custom MCP. Lihat panduan Devin untuk langkah-langkah lengkapnya.
{
"mcpServers": {
"resend": {
"command": "npx",
"args": ["-y", "resend-mcp"],
"env": {
"RESEND_API_KEY": "re_xxxxxxxxx",
"SENDER_EMAIL_ADDRESS": "onboarding@resend.dev"
}
}
}
}
Transport HTTP
Jalankan server melalui HTTP untuk integrasi jarak jauh atau berbasis web, misalnya di belakang tunnel atau reverse proxy Anda sendiri, alih-alih menggunakan server MCP jarak jauh terhosting milik Resend. Dalam mode HTTP, setiap klien mengautentikasi dengan memberikan kunci API Resend mereka sebagai token Bearer di header Authorization.
Mulai server:
npx -y resend-mcp --http --port 3000
Server akan mendengarkan di http://127.0.0.1:3000 dan mengekspos endpoint MCP di /mcp menggunakan HTTP Streamable.
Claude Code
claude mcp add resend --transport http http://127.0.0.1:3000/mcp --header "Authorization: Bearer re_xxxxxxxxx"
Cursor
Buka palet perintah dan pilih "Cursor Settings" > "MCP" > "Add new global MCP server".
{
"mcpServers": {
"resend": {
"url": "http://127.0.0.1:3000/mcp",
"headers": {
"Authorization": "Bearer re_xxxxxxxxx"
}
}
}
}
Anda juga dapat mengatur port melalui variabel lingkungan MCP_PORT:
MCP_PORT=3000 npx -y resend-mcp --http
Gunakan sebagai pustaka
Transport HTTP juga diekspor sehingga dapat disematkan di layanan lain alih-alih dijalankan melalui CLI. Setiap klien yang terhubung mengautentikasi dengan kunci API Resend mereka sendiri yang diberikan sebagai token Bearer.
import { runHttp } from 'resend-mcp/http';
// Options are optional — pass `senderEmailAddress` / `replierEmailAddresses`
// to set defaults. Binds the port and returns the Node http.Server, exposing
// the MCP endpoint at POST/GET/DELETE /mcp and a GET /health check.
const server = await runHttp({}, 3000);
Secara default, server menerapkan validasi Host khusus localhost (perlindungan DNS-rebinding). Saat menerapkan di belakang reverse proxy atau load balancer, di mana server dilindungi oleh kunci API Bearer per permintaan, atur host ke 0.0.0.0 agar Host yang diteruskan proxy dan pemeriksaan kesehatan load-balancer tidak ditolak dengan 403 Invalid Host:
const server = await runHttp({}, 3000, { host: '0.0.0.0' });
// or pin specific hostnames instead of disabling validation:
const server = await runHttp({}, 3000, { allowedHosts: ['mcp.example.com'] });
Melalui CLI, ini dipetakan ke --host / --allowed-hosts (atau MCP_HOST / MCP_ALLOWED_HOSTS).
Opsi
Anda dapat memberikan argumen tambahan untuk mengonfigurasi server lokal:
--key: Kunci API Resend Anda (hanya mode stdio, karena mode HTTP menggunakan token Bearer dari klien)--sender: Alamat email pengirim default dari domain terverifikasi--reply-to: Alamat email balasan default (dapat ditentukan beberapa kali)--http: Gunakan transport HTTP alih-alih stdio (default: stdio)--port: Port HTTP saat menggunakan--http(default: 3000, atau variabel envMCP_PORT)--host: Host untuk perlindungan DNS-rebinding saat menggunakan--http(default:127.0.0.1, atauMCP_HOST). Atur ke0.0.0.0untuk menonaktifkan validasiHostdi belakang proxy/load balancer.--allowed-hosts: Daftar izinHostyang dipisahkan koma saat menggunakan--http(atauMCP_ALLOWED_HOSTS)
Variabel lingkungan:
RESEND_API_KEY: Kunci API Resend Anda (wajib untuk stdio, opsional untuk HTTP karena klien memberikannya melalui token Bearer)SENDER_EMAIL_ADDRESS: Alamat email pengirim default dari domain terverifikasi (opsional)REPLY_TO_EMAIL_ADDRESSES: Alamat email balasan yang dipisahkan koma (opsional)MCP_PORT: Port HTTP saat menggunakan--http(opsional)MCP_HOST: Host untuk perlindungan DNS-rebinding saat menggunakan--http(opsional)MCP_ALLOWED_HOSTS: Daftar izinHostyang dipisahkan koma saat menggunakan--http(opsional)
[!NOTE] Jika Anda tidak memberikan alamat email pengirim, server MCP akan meminta Anda untuk memberikannya setiap kali Anda memanggil alat tersebut.
Alat Server MCP
Server MCP Resend memberikan agen AI Anda akses asli ke seluruh platform Resend melalui satu integrasi. Anda dapat mengelola semua aspek infrastruktur email Anda menggunakan bahasa alami.
- Email: Kirim, daftar, dapatkan, batalkan, perbarui, dan kirim email secara batch. Mendukung HTML, teks biasa, lampiran (file lokal, URL, atau base64), CC/BCC, balasan, penjadwalan, tag, header khusus, pengiriman berbasis topik, dan kunci idempotensi.
- Email yang Diterima: Daftar dan baca email masuk. Daftar dan unduh lampiran email yang diterima.
- Template: Buat, daftar, dapatkan, perbarui, publikasikan, duplikat, dan hapus template email. Mendukung penyusunan konten template dan placeholder
{{{VARIABLE}}}. - Kontak: Buat, daftar, dapatkan, perbarui, dan hapus kontak. Kelola keanggotaan segmen, langganan topik, dan impor kontak CSV. Mendukung properti kontak khusus.
- Siaran: Buat, kirim, daftar, dapatkan, perbarui, dan hapus kampanye siaran. Mendukung penjadwalan, placeholder personalisasi, dan teks pratinjau.
- Otomatisasi: Buat, daftar, dapatkan, perbarui, dan hapus otomatisasi. Tinjau proses otomatisasi.
- Acara: Kirim acara untuk memicu otomatisasi untuk kontak. Buat, perbarui, dan hapus definisi acara.
- Domain: Buat, daftar, dapatkan, perbarui, hapus, dan verifikasi domain pengirim. Konfigurasikan pelacakan, TLS, dan kemampuan mengirim/menerima. Buat dan verifikasi klaim domain.
- Segmen: Buat, daftar, dapatkan, dan hapus segmen audiens.
- Penekanan: Daftar, dapatkan, tambahkan, dan hapus entri daftar penekanan, secara individual atau batch. Bounce keras dan keluhan spam ditekan secara otomatis; tambahkan alamat secara manual untuk menghormati permintaan jangan-kontak.
- Topik: Buat, daftar, dapatkan, perbarui, dan hapus topik langganan.
- Properti Kontak: Buat, daftar, dapatkan, perbarui, dan hapus atribut kontak khusus.
- Kunci API: Buat, daftar, dan hapus kunci API.
- Webhook: Buat, daftar, dapatkan, perbarui, dan hapus webhook untuk notifikasi acara.
- Log: Daftar dan periksa log permintaan API, termasuk badan permintaan dan respons lengkap.
- Editor: Hubungkan ke (dan putuskan dari) editor visual di dasbor Resend, dan baca konten draf saat berkolaborasi pada siaran dan template.
Pengembangan Lokal
- Kloning proyek ini dan bangun:
git clone https://github.com/resend/resend-mcp.git
pnpm install
pnpm run build
- Untuk menggunakan build lokal, ganti perintah
npxdengan jalur ke build lokal Anda:
Claude Code (stdio):
claude mcp add resend -e RESEND_API_KEY=re_xxxxxxxxx -- node ABSOLUTE_PATH_TO_PROJECT/dist/index.js
Claude Code (HTTP):
claude mcp add resend --transport http http://127.0.0.1:3000/mcp --header "Authorization: Bearer re_xxxxxxxxx"
Cursor / Claude Desktop (stdio):
{
"mcpServers": {
"resend": {
"command": "node",
"args": ["ABSOLUTE_PATH_TO_PROJECT/dist/index.js"],
"env": {
"RESEND_API_KEY": "re_xxxxxxxxx"
}
}
}
}
Cursor (HTTP):
{
"mcpServers": {
"resend": {
"url": "http://127.0.0.1:3000/mcp",
"headers": {
"Authorization": "Bearer re_xxxxxxxxx"
}
}
}
}
Pengujian Langsung dengan Klien MCP
Saat mengembangkan, Anda dapat menguji perubahan dalam sesi klien MCP nyata sambil mengedit kode di sesi lain.
Idenya: jalankan tsc --watch untuk terus membangun ulang dist/, dan arahkan klien MCP terpisah ke dist/index.js yang dibangun dari direktori berbeda. Saat Anda ingin mengambil perubahan kode, mulai ulang sesi klien MCP (server MCP adalah proses stdio yang berjalan lama dan tidak memuat ulang secara otomatis).
Contoh dengan Claude Code:
-
Jalankan pemantau TypeScript untuk membangun ulang otomatis saat disimpan:
pnpm tsc --watch -
Di direktori terpisah, buat
.mcp.jsonyang menunjuk ke output build:mkdir -p /tmp/mcp-test// /tmp/mcp-test/.mcp.json { "mcpServers": { "resend-dev": { "command": "node", "args": ["/absolute/path/to/resend-mcp/dist/index.js"], "env": { "RESEND_API_KEY": "re_xxxxxxxxx" } } } } -
Mulai Claude Code dari direktori itu dan gunakan alat MCP. Setelah membuat perubahan kode, mulai sesi Claude Code baru untuk mengambil build baru.
Prinsip yang sama berlaku untuk klien MCP mana pun — pisahkan lingkungan pengujian Anda dari lingkungan pengembangan, gunakan jalur absolut ke dist/index.js, dan sambungkan kembali server MCP setelah membangun ulang.
Pengujian dengan Inspektur MCP
Catatan: Pastikan Anda telah membangun proyek terlebih dahulu (lihat bagian Pengembangan Lokal di atas).
Menggunakan Transport Stdio
-
Atur kunci API Anda:
export RESEND_API_KEY=re_your_key_here -
Mulai inspektur:
pnpm inspector -
Di browser (UI Inspektur):
- Pilih stdio (luncurkan proses).
- Perintah:
node - Argumen:
dist/index.js(atau jalur lengkap kedist/index.js) - Env:
RESEND_API_KEY=re_your_key_here(atau biarkan kosong jika Anda sudah mengekspornya di terminal yang sama). - Klik Connect, lalu gunakan "List tools" untuk memverifikasi server berfungsi.
Menggunakan Transport HTTP
-
Mulai server HTTP di satu terminal:
node dist/index.js --http --port 3000 -
Mulai inspektur di terminal lain:
pnpm inspector -
Di browser (UI Inspektur):
- Pilih Streamable HTTP (sambungkan ke URL).
- URL:
http://127.0.0.1:3000/mcp - Tambahkan header khusus:
Authorization: Bearer re_your_key_heredan aktifkan toggle. - Klik Connect, lalu gunakan "List tools" untuk memverifikasi server berfungsi.