Resend Email

resmi

Resend API'sini kullanarak doğrudan editörünüzden e-posta gönderin.

Resend Email MCP ile neler yapabilirsiniz?

  • İşlemsel e-postalar gönderin — Asistanınızdan, https://mcp.resend.com/mcp üzerinden ekler, CC/Gizli ve özel başlıklar içeren HTML veya düz metin e-posta oluşturup göndermesini isteyin.
  • E-posta şablonlarını yönetin — Asistanınıza, yeniden kullanılabilir kampanyalar için {{{VARIABLE}}} yer tutucularıyla şablonlar oluşturma, güncelleme, yayınlama veya kopyalama görevi verin.
  • Teslimat ve etkileşimi takip edin — Asistanınızdan gönderilen e-postaları listelemesini ve teslimat metriklerini almasını isteyin veya planlanmış gönderimleri yayınlanmadan iptal ettirin.
  • Gelen e-postaları yönetin — Asistanınızdan, Resend gelen kutunuzdan alınan mesajları okumasını ve eklerini doğrudan indirmesini isteyin.
  • Kişileri ve kitleleri yönetin — Asistanınıza kişi oluşturma, güncelleme veya segmentlere ayırma talimatı verin ve özel özelliklerle CSV listeleri içe aktarın.
  • API kullanımını izleyin — E-posta altyapınızı takip etmek için hesap düzeyinde kotalar ve hız sınırı bilgileri talep edin.

Barındırılan MCP Sunucusu

npx add-mcp 'https://mcp.resend.com/mcp'

Claude Code, Codex, Cursor ve daha fazlasına kurulur

Dokümantasyon

Resend MCP Sunucusu

npm version

AI ajanınızı Resend platformuna bağlayın. Claude, Cursor veya Claude Code gibi herhangi bir MCP istemcisinden doğrudan e-posta gönderin ve alın, kişileri, yayınları, alan adlarını ve daha fazlasını yönetin.

Hem Resend tarafından barındırılan bir uzak MCP sunucusu hem de bir yerel MCP sunucusu (bu paket) sunuyoruz.

Uzak MCP Sunucusu

Resend, MCP sunucusunu şu adreste barındırır:

https://mcp.resend.com/mcp

Uzak sunucuları destekleyen herhangi bir MCP istemcisini bağlayın (Streamable HTTP). Kurulacak bir şey yok ve çalıştırılacak yerel bir işlem yok; bu da onu Claude gibi web tabanlı istemciler ve barındırılan ajan platformları için en iyi seçenek haline getirir.

Bağlandığınızda, istemciniz Resend'e giriş yapmak ve OAuth kullanarak erişimi onaylamak için bir tarayıcı penceresi açar.

Claude Code

claude mcp add --transport http resend https://mcp.resend.com/mcp

Ardından Claude Code'da /mcp komutunu çalıştırın ve OAuth girişini tamamlamak için resend seçeneğini seçin.

Claude

Claude'da (web veya masaüstü), Ayarlar > Bağlayıcılar > Özel bağlayıcı ekle bölümünü açın ve şunu girin:

https://mcp.resend.com/mcp

Cursor

Komut paletini açın ve "Cursor Ayarları" > "MCP" > "Yeni global MCP sunucusu ekle" seçeneğini seçin.

{
  "mcpServers": {
    "resend": {
      "url": "https://mcp.resend.com/mcp"
    }
  }
}

Codex

codex mcp add resend --url https://mcp.resend.com/mcp

Copilot

VS Code'da GitHub Copilot kullanmak için settings.json dosyanıza aşağıdakileri ekleyin:

{
  "mcp": {
    "servers": {
      "resend": {
        "type": "http",
        "url": "https://mcp.resend.com/mcp"
      }
    }
  }
}

Windsurf

{
  "mcpServers": {
    "resend": {
      "serverUrl": "https://mcp.resend.com/mcp"
    }
  }
}

Warp

Warp'ın Ayarlar bölümünde Ajanlar > MCP sunucuları bölümüne gidin ve yeni bir sunucu eklemek için +Ekle düğmesine tıklayın.

{
  "resend": {
    "serverUrl": "https://mcp.resend.com/mcp"
  }
}

API anahtarıyla kimlik doğrulama

İstemciniz tarayıcı girişinin mümkün olmadığı bir yerde çalışıyorsa (bir sunucu, CI veya başsız bir ajan), OAuth kullanmak yerine bir Resend API anahtarı Bearer token olarak iletin.

Claude Code:

claude mcp add --transport http resend https://mcp.resend.com/mcp --header "Authorization: Bearer re_xxxxxxxxx"

JSON yapılandırması (Cursor, Windsurf ve diğerleri) için bir Authorization başlığı ekleyin:

{
  "mcpServers": {
    "resend": {
      "url": "https://mcp.resend.com/mcp",
      "headers": {
        "Authorization": "Bearer re_xxxxxxxxx"
      }
    }
  }
}

Yerel MCP Sunucusu

Barındırılan sunucu, NPM'de resend-mcp olarak bulunan aynı açık kaynak kodunu çalıştırır. Sunucuyu kendiniz çalıştırmayı tercih ederseniz, npx kullanarak desteklenen herhangi bir MCP istemcisine entegre edebilirsiniz. Şunlara ihtiyacınız olacak:

Yerel sunucu iki aktarım modunu destekler: stdio (varsayılan) ve HTTP.

Başlamak için tercih ettiğiniz modu ve istemciyi aşağıdan seçin. re_xxxxxxxxx değerini gerçek API anahtarınızla değiştirmeyi unutmayın.

Stdio Aktarımı (Varsayılan)

Hızlı Kurulum

Algılanan/seçilen tüm ajanlar ve editörler için yükleyin:

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

Komut paletini açın ve "Cursor Ayarları" > "MCP" > "Yeni global MCP sunucusu ekle" seçeneğini seçin.

{
  "mcpServers": {
    "resend": {
      "command": "npx",
      "args": ["-y", "resend-mcp"],
      "env": {
        "RESEND_API_KEY": "re_xxxxxxxxx"
      }
    }
  }
}

Claude Desktop

Claude Desktop ayarlarını açın > "Geliştirici" sekmesi > "Yapılandırmayı Düzenle".

{
  "mcpServers": {
    "resend": {
      "command": "npx",
      "args": ["-y", "resend-mcp"],
      "env": {
        "RESEND_API_KEY": "re_xxxxxxxxx"
      }
    }
  }
}

Copilot

VS Code'da GitHub Copilot kullanmak için settings.json dosyanıza aşağıdakileri ekleyin:

{
  "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

opencode.json yapılandırmanıza ekleyin:

{
  "$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

Devin'de Ayarlar > Bağlantılar > MCP Sunucuları bölümünü açın ve Özel MCP ekle düğmesine tıklayın. Adım adım tam talimatlar için Devin kılavuzuna bakın.

{
  "mcpServers": {
    "resend": {
      "command": "npx",
      "args": ["-y", "resend-mcp"],
      "env": {
        "RESEND_API_KEY": "re_xxxxxxxxx",
        "SENDER_EMAIL_ADDRESS": "onboarding@resend.dev"
      }
    }
  }
}

HTTP Aktarımı

Resend'in barındırılan uzak MCP sunucusunu kullanmak yerine, uzak veya web tabanlı entegrasyonlar için sunucuyu HTTP üzerinden çalıştırın; örneğin kendi tünelinizin veya ters proxy'nizin arkasında. HTTP modunda, her istemci Resend API anahtarını Authorization başlığında Bearer token olarak ileterek kimlik doğrular.

Sunucuyu başlatın:

npx -y resend-mcp --http --port 3000

Sunucu http://127.0.0.1:3000 adresinde dinler ve Streamable HTTP kullanarak MCP uç noktasını /mcp adresinde sunar.

Claude Code

claude mcp add resend --transport http http://127.0.0.1:3000/mcp --header "Authorization: Bearer re_xxxxxxxxx"

Cursor

Komut paletini açın ve "Cursor Ayarları" > "MCP" > "Yeni global MCP sunucusu ekle" seçeneğini seçin.

{
  "mcpServers": {
    "resend": {
      "url": "http://127.0.0.1:3000/mcp",
      "headers": {
        "Authorization": "Bearer re_xxxxxxxxx"
      }
    }
  }
}

Ayrıca MCP_PORT ortam değişkeni aracılığıyla bağlantı noktasını da ayarlayabilirsiniz:

MCP_PORT=3000 npx -y resend-mcp --http

Kitaplık olarak kullanma

HTTP aktarımı ayrıca dışa aktarılır, böylece CLI üzerinden çalıştırılmak yerine başka bir hizmete gömülebilir. Bağlanan her istemci, kendi Resend API anahtarını Bearer token olarak ileterek kimlik doğrular.

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);

Varsayılan olarak sunucu yalnızca localhost Host doğrulaması uygular (DNS-rebinding koruması). Sunucunun istek başına Bearer API anahtarıyla korunduğu bir ters proxy veya yük dengeleyicinin arkasında dağıtım yaparken, proxy'nin ilettiği Host ve yük dengeleyici sağlık kontrollerinin 403 Invalid Host ile reddedilmemesi için host değerini 0.0.0.0 olarak ayarlayın:

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'] });

CLI üzerinden bu, --host / --allowed-hosts (veya MCP_HOST / MCP_ALLOWED_HOSTS) ile eşlenir.

Seçenekler

Yerel sunucuyu yapılandırmak için ek bağımsız değişkenler iletebilirsiniz:

  • --key: Resend API anahtarınız (yalnızca stdio modu, çünkü HTTP modu istemciden Bearer token kullanır)
  • --sender: Doğrulanmış bir alan adından varsayılan gönderen e-posta adresi
  • --reply-to: Varsayılan yanıtla e-posta adresi (birden çok kez belirtilebilir)
  • --http: stdio yerine HTTP aktarımı kullan (varsayılan: stdio)
  • --port: --http kullanırken HTTP bağlantı noktası (varsayılan: 3000 veya MCP_PORT ortam değişkeni)
  • --host: --http kullanırken DNS-rebinding koruması için ana bilgisayar (varsayılan: 127.0.0.1 veya MCP_HOST). Bir proxy/yük dengeleyicinin arkasında Host doğrulamasını devre dışı bırakmak için 0.0.0.0 olarak ayarlayın.
  • --allowed-hosts: --http kullanırken virgülle ayrılmış Host beyaz listesi (veya MCP_ALLOWED_HOSTS)

Ortam değişkenleri:

  • RESEND_API_KEY: Resend API anahtarınız (stdio için zorunlu, HTTP için isteğe bağlı çünkü istemciler Bearer token ile iletir)
  • SENDER_EMAIL_ADDRESS: Doğrulanmış bir alan adından varsayılan gönderen e-posta adresi (isteğe bağlı)
  • REPLY_TO_EMAIL_ADDRESSES: Virgülle ayrılmış yanıtla e-posta adresleri (isteğe bağlı)
  • MCP_PORT: --http kullanırken HTTP bağlantı noktası (isteğe bağlı)
  • MCP_HOST: --http kullanırken DNS-rebinding koruması için ana bilgisayar (isteğe bağlı)
  • MCP_ALLOWED_HOSTS: --http kullanırken virgülle ayrılmış Host beyaz listesi (isteğe bağlı)

[!NOT] Bir gönderen e-posta adresi sağlamazsanız, MCP sunucusu aracı her çağırdığınızda sizden bir tane sağlamanızı ister.

MCP Sunucu Araçları

Resend'in MCP sunucusu, AI ajanınıza tek bir entegrasyon aracılığıyla Resend platformunun tamamına yerel erişim sağlar. E-posta altyapınızın tüm yönlerini doğal dil kullanarak yönetebilirsiniz.

  • E-postalar: E-posta gönderin, listeleyin, alın, iptal edin, güncelleyin, paylaşın ve toplu gönderin. Teslimat ve etkileşim metriklerini alın. HTML, düz metin, ekler (yerel dosya, URL veya base64), CC/BCC, yanıtla, zamanlama, etiketler, özel başlıklar, konu tabanlı gönderim ve idempotency anahtarlarını destekler.
  • Alınan E-postalar: Gelen e-postaları listeleyin ve okuyun. Alınan e-posta eklerini listeleyin ve indirin.
  • Şablonlar: E-posta şablonları oluşturun, listeleyin, alın, güncelleyin, yayınlayın, çoğaltın ve kaldırın. Şablon içeriği oluşturmayı ve {{{VARIABLE}}} yer tutucularını destekler.
  • Kişiler: Kişiler oluşturun, listeleyin, alın, güncelleyin ve kaldırın. Segment üyeliklerini, konu aboneliklerini ve CSV kişi içe aktarımlarını yönetin. Özel kişi özelliklerini destekler.
  • Yayınlar: Yayın kampanyaları oluşturun, gönderin, iptal edin, çoğaltın, listeleyin, alın, güncelleyin ve kaldırın. Bir yayının tıklanan bağlantılarını ve olay türüne göre alıcılarını listeleyin (gönderildi, teslim edildi, açıldı, tıklandı, geri döndü, şikayet edildi, abonelikten çıktı, bastırıldı). Zamanlama, kişiselleştirme yer tutucuları ve önizleme metnini destekler.
  • Otomasyonlar: Otomasyonlar oluşturun, listeleyin, alın, güncelleyin, çoğaltın ve kaldırın. Bir otomasyonun çalıştırmalarını inceleyin.
  • Olaylar: Bir kişi için otomasyonları tetiklemek üzere olaylar gönderin. Olay tanımları oluşturun, güncelleyin ve kaldırın.
  • Alan Adları: Gönderen alan adları oluşturun, listeleyin, alın, güncelleyin, kaldırın ve doğrulayın. İzleme, TLS ve gönderme/alma yeteneklerini yapılandırın. Alan adı talepleri oluşturun ve doğrulayın.
  • Segmentler: Hedef kitle segmentleri oluşturun, listeleyin, alın, güncelleyin ve kaldırın.
  • Bastırmalar: Bastırma listesi girişlerini tek tek veya toplu olarak listeleyin, alın, ekleyin ve kaldırın. Sert geri dönmeler ve spam şikayetleri otomatik olarak bastırılır; iletişim kurmama isteklerini onurlandırmak için adresleri manuel olarak ekleyin.
  • Konular: Abonelik konuları oluşturun, listeleyin, alın, güncelleyin ve kaldırın.
  • Kişi Özellikleri: Özel kişi nitelikleri oluşturun, listeleyin, alın, güncelleyin ve kaldırın.
  • API Anahtarları: API anahtarları oluşturun, listeleyin, güncelleyin ve kaldırın.
  • Webhook'lar: Olay bildirimleri için webhook'lar oluşturun, listeleyin, alın, güncelleyin ve kaldırın ve teslimat geçmişlerini inceleyin — bir webhook'a gönderilen olaylar, bir olayın yükü ve teslim etme girişimleri. Başka bir teslimatı kuyruğa almak için bir olayı yeniden oynatın ve bir webhook'un imzalama sırrını döndürün.
  • Günlükler: API istek günlüklerini listeleyin ve inceleyin; tam istek ve yanıt gövdeleri dahil.
  • Kullanım: Hesap düzeyinde kullanım ve kota bilgilerini alın: e-postalar, kişiler, segmentler, yayınlar, AI kredileri, otomasyon çalıştırmaları, alan adları ve API hız sınırı.
  • Editör: Resend panosundaki görsel editöre bağlanın (ve bağlantıyı kesin) ve yayınlar ve şablonlar üzerinde işbirliği yaparken bir taslağın içeriğini okuyun.

Yerel Geliştirme

  1. Bu projeyi klonlayın ve derleyin:
git clone https://github.com/resend/resend-mcp.git
pnpm install
pnpm run build
  1. Yerel derlemeyi kullanmak için npx komutunu yerel derlemenizin yoluna değiştirin:

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"
      }
    }
  }
}

MCP İstemcisiyle Canlı Test

Geliştirme sırasında, başka bir pencerede kod düzenlerken değişiklikleri gerçek bir MCP istemci oturumunda test edebilirsiniz.

Fikir: tsc --watch komutunu çalıştırarak dist/ sürekli yeniden derleyin ve ayrı bir MCP istemcisini farklı bir dizinden derlenmiş dist/index.js işaret edin. Kod değişikliklerini almak istediğinizde MCP istemci oturumunu yeniden başlatın (MCP sunucuları uzun ömürlü stdio işlemleridir ve sıcak yeniden yükleme yapmazlar).

Claude Code ile örnek:

  1. Kaydedildiğinde otomatik yeniden derleme için TypeScript izleyicisini çalıştırın:

    pnpm tsc --watch
    
  2. Ayrı bir dizinde, derleme çıktısını gösteren bir .mcp.json oluşturun:

    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"
          }
        }
      }
    }
    
  3. Claude Code'u bu dizinden başlatın ve MCP araçlarını kullanın. Kod değişiklikleri yaptıktan sonra, yeni derlemeyi almak için yeni bir Claude Code oturumu başlatın.

Aynı ilke herhangi bir MCP istemcisi için geçerlidir — test ortamınızı geliştirme ortamınızdan ayırın, dist/index.js mutlak bir yol kullanın ve yeniden derlemeden sonra MCP sunucusunu yeniden bağlayın.

MCP Inspector ile Test

Not: Önce projeyi derlediğinizden emin olun (yukarıdaki Yerel Geliştirme bölümüne bakın).

Stdio Aktarımını Kullanma

  1. API anahtarınızı ayarlayın:

    export RESEND_API_KEY=re_your_key_here
    
  2. Inspector'ı başlatın:

    pnpm inspector
    
  3. Tarayıcıda (Inspector UI):

    • stdio seçeneğini seçin (bir işlem başlatın).
    • Komut: node
    • Bağımsız değişkenler: dist/index.js (veya dist/index.js tam yolu)
    • Env: RESEND_API_KEY=re_your_key_here (veya aynı terminalde zaten dışa aktardıysanız boş bırakın).
    • Bağlan düğmesine tıklayın, ardından sunucunun çalıştığını doğrulamak için "Araçları listele" seçeneğini kullanın.

HTTP Aktarımını Kullanma

  1. HTTP sunucusunu bir terminalde başlatın:

    node dist/index.js --http --port 3000
    
  2. Inspector'ı başka bir terminalde başlatın:

    pnpm inspector
    
  3. Tarayıcıda (Inspector UI):

    • Streamable HTTP seçeneğini seçin (URL'ye bağlanın).
    • URL: http://127.0.0.1:3000/mcp
    • Özel bir başlık ekleyin: Authorization: Bearer re_your_key_here ve geçişi etkinleştirin.
    • Bağlan düğmesine tıklayın, ardından sunucunun çalıştığını doğrulamak için "Araçları listeleyin" seçeneğini kullanın.