Resend Email MCP Server
resmiResend API'sini kullanarak doğrudan editörünüzden e-posta gönderin.
Dokümantasyon
Resend MCP Sunucusu
Resend platformu için bir MCP sunucusu. Claude Desktop, Cursor veya Claude Code gibi herhangi bir MCP istemcisinden doğrudan e-posta gönderip alın, kişileri, yayınları, alan adlarını ve daha fazlasını yönetin.
Özellikler
- E-postalar — E-postaları gönderin, listeleyin, alın, iptal edin, güncelleyin ve toplu olarak gönderin. HTML, düz metin, ekleri (yerel dosya, URL veya base64), CC/BCC, yanıtlama adresi, zamanlama, etiketler ve konu tabanlı gönderimi destekler.
- Alınan E-postalar — Gelen e-postaları listeleyin ve okuyun. Alınan e-posta eklerini listeleyin ve indirin.
- Kişiler — Kişileri oluşturun, listeleyin, alın, güncelleyin ve kaldırın. Segment üyeliklerini ve konu aboneliklerini yönetin. Özel kişi özelliklerini destekler.
- Yayınlar — Yayın kampanyalarını oluşturun, gönderin, listeleyin, alın, güncelleyin ve kaldırın. Zamanlama, kişiselleştirme yer tutucuları ve önizleme metnini destekler.
- Şablonlar — Yeniden kullanılabilir e-posta şablonlarını oluşturun, listeleyin, alın, güncelleyin, yayınlayın, çoğaltın ve kaldırın.
- Görsel Düzenleyici — Resend panosunda canlı olarak görüntülenen yayın ve şablon içeriği oluşturun. Aracılar çalışırken düzenleyicide adlandırılmış bir avatar olarak görünür.
- Alan Adları — Gönderici alan adlarını 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.
- Segmentler — Hedef kitle segmentlerini oluşturun, listeleyin, alın ve kaldırın.
- Konular — Abonelik konularını oluşturun, listeleyin, alın, güncelleyin ve kaldırın.
- Kişi Özellikleri — Özel kişi niteliklerini oluşturun, listeleyin, alın, güncelleyin ve kaldırın.
- API Anahtarları — API anahtarlarını oluşturun, listeleyin ve kaldırın.
- Web Kancaları — Olay bildirimleri için web kancalarını oluşturun, listeleyin, alın, güncelleyin ve kaldırın.
Kurulum
Ücretsiz bir Resend hesabı oluşturun ve bir API anahtarı oluşturun. Kendi adresleriniz dışındaki adreslere göndermek için alan adınızı doğrulamanız gerekir.
Kullanım
Sunucu iki aktarım modunu destekler: stdio (varsayılan) ve HTTP.
Stdio Aktarımı (Varsayılan)
Hızlı Kurulum
Algılanan/seçilen tüm aracılar ve düzenleyiciler için kurulum yapın:
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
Cursor
Komut paletini açın ve "Cursor Settings" > "MCP" > "Add new global MCP server" seçeneğini belirleyin.
{
"mcpServers": {
"resend": {
"command": "npx",
"args": ["-y", "resend-mcp"],
"env": {
"RESEND_API_KEY": "re_xxxxxxxxx"
}
}
}
}
Claude Desktop
Claude Desktop ayarlarını açın > "Developer" sekmesi > "Edit Config".
{
"mcpServers": {
"resend": {
"command": "npx",
"args": ["-y", "resend-mcp"],
"env": {
"RESEND_API_KEY": "re_xxxxxxxxx"
}
}
}
}
HTTP Aktarımı
Uzak veya web tabanlı entegrasyonlar için sunucuyu HTTP üzerinden çalıştırın. HTTP modunda, her istemci kendi Resend API anahtarını Authorization başlığında Bearer belirteci olarak ileterek kimlik doğrulaması yapar.
Sunucuyu başlatın:
npx -y resend-mcp --http --port 3000
Sunucu http://127.0.0.1:3000 üzerinde dinleyecek ve MCP uç noktasını /mcp adresinde Streamable HTTP kullanarak sunacaktır.
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 Settings" > "MCP" > "Add new global MCP server" seçeneğini belirleyin.
{
"mcpServers": {
"resend": {
"url": "http://127.0.0.1:3000/mcp",
"headers": {
"Authorization": "Bearer re_xxxxxxxxx"
}
}
}
}
Bağlantı noktasını MCP_PORT ortam değişkeni aracılığıyla da ayarlayabilirsiniz:
MCP_PORT=3000 npx -y resend-mcp --http
Kütüphane olarak kullanım
HTTP aktarımı, CLI üzerinden çalıştırılmak yerine başka bir hizmete gömülebilmesi için dışa aktarılır. Bağlanan her istemci, Bearer belirteci olarak iletilen kendi Resend API anahtarıyla kimlik doğrulaması yapar.
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 yeniden bağlama
koruması). Bir ters proxy veya yük dengeleyici arkasında dağıtım yaparken — sunucunun
istek başına Bearer API anahtarı ile korunduğu durumlarda — 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şleşir.
Seçenekler
Sunucuyu yapılandırmak için ek argümanlar iletebilirsiniz:
--key: Resend API anahtarınız (yalnızca stdio modu; HTTP modu istemciden gelen Bearer belirtecini kullanır)--sender: Doğrulanmış bir alan adından varsayılan gönderici e-posta adresi--reply-to: Varsayılan yanıtlama adresi (birden çok kez belirtilebilir)--http: stdio yerine HTTP aktarımını kullan (varsayılan: stdio)--port:--httpkullanırken HTTP bağlantı noktası (varsayılan: 3000 veyaMCP_PORTortam değişkeni)--host:--httpkullanırken DNS yeniden bağlama koruması için ana bilgisayar (varsayılan:127.0.0.1veyaMCP_HOST). Bir proxy/yük dengeleyici arkasındaHostdoğrulamasını devre dışı bırakmak için0.0.0.0olarak ayarlayın.--allowed-hosts:--http(veyaMCP_ALLOWED_HOSTS) kullanırken virgülle ayrılmışHostizin listesi
Ortam değişkenleri:
RESEND_API_KEY: Resend API anahtarınız (stdio için zorunlu, HTTP için isteğe bağlıdır çünkü istemciler Bearer belirteci ile iletir)SENDER_EMAIL_ADDRESS: Doğrulanmış bir alan adından varsayılan gönderici e-posta adresi (isteğe bağlı)REPLY_TO_EMAIL_ADDRESSES: Virgülle ayrılmış yanıtlama e-posta adresleri (isteğe bağlı)MCP_PORT:--httpkullanırken HTTP bağlantı noktası (isteğe bağlı)MCP_HOST:--httpkullanırken DNS yeniden bağlama koruması için ana bilgisayar (isteğe bağlı)MCP_ALLOWED_HOSTS:--httpkullanırken virgülle ayrılmışHostizin listesi (isteğe bağlı)
[!NOTE] Bir gönderici e-posta adresi sağlamazsanız, MCP sunucusu aracı her çağırdığınızda bir tane girmenizi isteyecektir.
Yerel Geliştirme
- Bu projeyi klonlayın ve derleyin:
git clone https://github.com/resend/resend-mcp.git
pnpm install
pnpm run build
- Yerel derlemeyi kullanmak için
npxkomutunu yerel derlemenizin yolu ile 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"
}
}
}
}
Bir MCP İstemcisi ile Canlı Test
Geliştirme yaparken, başka bir yerde kod düzenlerken değişiklikleri gerçek bir MCP istemci oturumunda test edebilirsiniz.
Fikir: tsc --watch çalıştırarak dist/ sürekli olarak yeniden derleyin ve farklı bir dizinden derlenmiş dist/index.js dosyasına ayrı bir MCP istemcisi yönlendirin. Kod değişikliklerini almak istediğinizde MCP istemci oturumunu yeniden başlatın (MCP sunucuları, anında yeniden yükleme yapmayan uzun ömürlü stdio süreçleridir).
Claude Code ile Örnek:
-
Kaydedildiğinde otomatik olarak yeniden derlemek için TypeScript izleyicisini çalıştırın:
pnpm tsc --watch -
Ayrı bir dizinde, derleme çıktısını işaret eden bir
.mcp.jsonoluş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" } } } } -
Bu dizinden Claude Code'u 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ı prensip herhangi bir MCP istemcisi için geçerlidir — test ortamınızı geliştirme ortamınızdan ayırın, dist/index.js için mutlak bir yol kullanın ve yeniden derlemeden sonra MCP sunucusuna yeniden bağlanı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
-
API anahtarınızı ayarlayın:
export RESEND_API_KEY=re_your_key_here -
Inspector'ı başlatın:
pnpm inspector -
Tarayıcıda (Inspector UI):
- stdio seçeneğini belirleyin (bir süreç başlatın).
- Command:
node - Args:
dist/index.js(veyadist/index.jstam yolu) - Env:
RESEND_API_KEY=re_your_key_here(veya aynı terminalde zaten dışa aktardıysanız boş bırakın). - Connect düğmesine tıklayın, ardından sunucunun çalıştığını doğrulamak için "List tools" seçeneğini kullanın.
HTTP Aktarımını Kullanma
-
Bir terminalde HTTP sunucusunu başlatın:
node dist/index.js --http --port 3000 -
Başka bir terminalde Inspector'ı başlatın:
pnpm inspector -
Tarayıcıda (Inspector UI):
- Streamable HTTP seçeneğini belirleyin (URL'ye bağlanın).
- URL:
http://127.0.0.1:3000/mcp - Özel bir başlık ekleyin:
Authorization: Bearer re_your_key_hereve düğmeyi etkinleştirin. - Connect düğmesine tıklayın, ardından sunucunun çalıştığını doğrulamak için "List tools" seçeneğini kullanın.