Sekilas
Empat belas baris, beberapa di antaranya bertuliskan “tidak berlaku” untuk sebuah alat yang berjalan di host Anda sendiri. Setiap sel Mailpit adalah apa yang dikatakan dokumentasi, README, dan halaman opsi runtime-nya pada 2 September 2026; setiap sel GrabMail dibaca dari konstanta yang diberlakukan layanan ini.
| Fitur | GrabMail | Mailpit |
|---|---|---|
| Tingkat Free | Ya: Semuanya: domain publik, domain Anda sendiri, API, dan server MCP. Tanpa akun, tanpa kartu. | Ya: Semuanya: berlisensi MIT, tanpa tingkatan, tanpa akun. Anda membayar dengan host tempat Anda menjalankannya. |
| Tanpa akun, tanpa kunci API | Ya: Tidak ada yang perlu dibuat. Sebuah GET dengan alamat di query string membaca kotak suratnya. | Ya: Tidak ada secara default; autentikasi HTTP Basic opsional tersedia pada antarmuka dan API-nya. |
| REST API | Ya: Tiga endpoint lewat HTTPS, OpenAPI 3.1, satu kali baca per detik per alamat. | Ya: Sebuah REST API dengan dokumen Swagger, disajikan oleh instance Anda sendiri; sebuah websocket untuk notifikasi, di luar API resminya. |
| Pilih alamat Anda sendiri | Ya: Nama apa pun pada 8 domain publik, termasuk grabmail.io dan mixozia.com di antaranya, gratis. | Ya: Penerima mana pun yang dituju aplikasi Anda akan diterima; tidak ada alamat yang perlu dialokasikan. |
| Domain Anda sendiri | Ya: Gratis dan tanpa batas: satu record MX di smtp.grabmail.io, tanpa langkah pendaftaran. | Sebagian: Tidak berlaku: ia menerima email untuk domain apa pun dari aplikasi Anda, dan tidak dibangun untuk menerima email dari internet. |
| Retensi pesan | 5 hari, tetap. Bukan sebuah tingkat, bukan sebuah pengaturan. | Anda yang menentukan: 500 terbaru secara default, atau sebuah batas usia seperti --max-age 14d; database default-nya adalah sebuah file sementara yang dihapus saat keluar. |
| Lampiran | Ya: Hingga 5 MB per pesan, dapat diunduh dari kotak masuk dan API. | Ya: Ya; pesan di atas 50 MB ditolak secara default. |
| Tanpa iklan, tanpa pelacakan | Ya: Tanpa iklan, tanpa analitik, tanpa skrip pihak ketiga. | Ya: Tidak ada; ia adalah perangkat lunak yang Anda jalankan sendiri. |
| Kotak masuk privat | Tidak: Publik: siapa pun yang tahu alamatnya bisa membacanya. Setiap kotak surat memiliki alias yang bisa dibagikan sebagai gantinya. | Ya: Seprivat host Anda sendiri; tidak ada yang keluar darinya kecuali Anda meneruskannya. |
| Server MCP untuk agen AI | Ya: Server MCP gratis di https://grabmail.io/mcp: buat sebuah kotak masuk, tunggu hingga 25 detik untuk sebuah pesan, lalu baca. | Tidak: Tidak ada: tanpa server MCP, tanpa llms.txt. |
| Mengirim surat | Tidak: Tidak ada, memang sengaja. Hanya menerima. | Sebagian: Ia menangkap, bukan mengirim, tapi bisa me-relay atau meneruskan sebuah pesan yang ditangkap lewat server SMTP eksternal, dan memiliki sebuah HTTP send API. |
| Webhook atau push | Tidak: Tidak ada. Lakukan polling sekali per detik, atau biarkan tunggu MCP menahan panggilan tetap terbuka. | Ya: Sebuah webhook opsional pada pesan yang diterima, dan sebuah feed websocket. |
| SDK resmi | Tidak: Tidak ada. Sebagai gantinya, sebuah dokumen OpenAPI dan tiga endpoint. | Tidak: Tidak ada; sebuah dokumen Swagger dan dokumentasi interaktif pada instance Anda. |
| Aplikasi dan ekstensi | Sebagian: Sebuah ekstensi Chrome, dimuat secara manual; belum ada di store. | Sebagian: Sebuah binary statis untuk Windows, Linux, dan Mac, image Docker, Homebrew, dan sebuah server POP3 opsional untuk klien email. |
Diperiksa 2 September 2026. Nilai default Mailpit dikutip dari opsi runtime-nya: 500 pesan terbaru disimpan, sebuah database sementara yang dihapus saat keluar, batas pesan 50 MB. Status MailHog disimpulkan dari tanggal repository-nya, yang dikutip; proyek ini tidak membawa pemberitahuan deprecation apa pun.
Apa yang dilakukan Mailpit dengan baik
Mailpit adalah alat yang dijalankan berdampingan dengan aplikasi Anda saat Anda membangunnya. Empat hal yang dilakukannya dan tidak dilakukan GrabMail:
- Ia menangkap semua yang Anda kirim, secara lokal. Arahkan aplikasi Anda ke port 1025 dan setiap pesan akan mendarat di kotak masuk web pada 8025 — reset kata sandi, faktur, semuanya — tanpa satu pun yang mencapai alamat sungguhan. GrabMail tidak pernah melihat email keluar Anda.
- Ia menguji pesannya, bukan cuma pengirimannya. Pengecekan kompatibilitas HTML, pemeriksa tautan, penilaian SpamAssassin, tangkapan layar, pemberian tag. GrabMail menyerahkan pesannya kepada Anda dan berhenti di situ.
- Chaos. Sejak versi 1.20, ia bisa menyuntikkan kegagalan SMTP pada tahap-tahap tertentu dengan probabilitas tertentu, untuk membuktikan bahwa aplikasi Anda tetap tangguh saat server email tidak. Tidak ada layanan yang di-hosting yang menawarkan itu.
- Ia milik Anda. Berlisensi MIT, satu binary tunggal, dua ratus hingga tiga ratus pesan per detik, tanpa vendor, tanpa akun, tanpa perlu internet. GrabMail adalah server milik orang lain, dan semua yang ada di dalamnya bersifat publik.
Di mana GrabMail berbeda
GrabMail melakukan satu hal yang tidak bisa dilakukan SMTP catcher lokal: hadir di internet, dengan alamat yang bisa dituju server milik orang lain.
- Email masuk yang sungguhan. Sebuah pengujian mendaftar ke layanan pihak ketiga dan layanan itu mengirim sebuah kode — ke GitHub, ke Stripe, ke apa pun yang sedang Anda integrasikan, alamatnya harus sungguhan.
run-42@grabmail.ioitu sungguhan, memiliki record MX, dan emailnya bisa dibaca dengan GET tanpa kunci. - Tidak ada yang perlu dijalankan, tidak ada yang perlu diekspos. Membuat Mailpit bisa menerima dari internet berarti sebuah host publik, sebuah record MX, dan sebuah aturan firewall, dan dokumentasinya tidak memposisikannya untuk itu. GrabMail sudah ada di sana; sebuah runner CI hanya butuh HTTPS keluar.
- Domain Anda sendiri sebagai catch-all, di-hosting. Satu record MX di smtp.grabmail.io dan setiap alamat pada domain itu menerima dari mana saja, disimpan 5 hari, tanpa daemon milik Anda yang terlibat.
- Sebuah server MCP untuk agen. Seorang agen yang harus mendaftarkan dirinya sendiri di suatu tempat sama sekali tidak bisa memakai SMTP catcher lokal. Server GrabMail di https://grabmail.io/mcp memberinya sebuah kotak masuk dan sebuah
wait_for_messageyang memblokir hingga 25 detik, tanpa kunci apa pun.
Harga, berdampingan
Tidak ada yang perlu diberi harga pada Mailpit: ia adalah perangkat lunak gratis, dan biayanya adalah host tempat Anda menjalankannya. Satu-satunya paket berbayar GrabMail membeli akses ke sekumpulan domain yang dijaga tetap di luar daftar blokir email sekali pakai; semua yang ada di tabel di atas tetap gratis.
| Tingkat | GrabMail | Mailpit |
|---|---|---|
| Free | Domain publik, domain Anda sendiri, API, MCP. Tanpa akun, tanpa batas. | Semuanya, berlisensi MIT: penangkapan SMTP, kotak masuk web, API, POP3, chaos, pengecekan. |
| Berbayar termurah | Premium, $24 per bulan: akses API ke pool domain di luar daftar blokir, dibayar dengan kripto. | Tidak ada. |
| Di atas itu | Pro $78 dan Scale $148 per bulan: lebih banyak pesan dan kunci pada pool yang sama. | Tidak ada. |
| Apa yang Anda bayar sebagai gantinya | Keterbukaan: setiap kotak surat bisa dibaca oleh siapa pun yang tahu alamatnya. | Sebuah host, sebuah port, dan fakta bahwa ia tidak bisa menerima dari internet. |
Sebagaimana dipublikasikan pada 2 September 2026. Halaman harga GrabMail memuat tabel lengkapnya.
Untuk developer: membaca sebuah kotak surat
Kedua API ini membaca email yang berbeda, jadi berikut adalah yang membaca email masuk dari dunia luar. Ini membaca sebuah kotak surat GrabMail tanpa header, tanpa kunci, dan tanpa akun:
$ curl -sG https://grabmail.io/api/v1/mailbox --data-urlencode "address=anything@grabmail.io" | jq '{count, alias}'Padanannya di Mailpit adalah GET http://localhost:8025/api/v1/messages pada instance Anda sendiri, menampilkan daftar apa yang dikirim aplikasi Anda kepadanya — panggilan yang tepat untuk memastikan aplikasi Anda menghasilkan pesan yang benar. Membaca apa yang dikirim pihak ketiga kepada pengguna uji adalah tugas GrabMail; referensinya adalah tiga endpoint, dan panduan GitHub Actions menunjukkan kedua jenis pengujian dalam satu workflow.
Di CI, keduanya berdampingan: Mailpit sebagai container layanan pada 1025 untuk email aplikasi itu sendiri, alamat GrabMail untuk pendaftaran yang dilakukan test suite terhadap layanan sungguhan. Tidak satu pun yang butuh secret.
Untuk agen AI
Mailpit tidak menyediakan server MCP maupun llms.txt, dan SMTP catcher lokal bukanlah sesuatu yang bisa dipakai oleh agen yang sedang mendaftar ke sebuah situs web. Server GrabMail di https://grabmail.io/mcp memberi seorang agen sebuah kotak masuk tanpa kunci: create_inbox, sebuah wait_for_message yang memblokir hingga 25 detik, read_message.
Email untuk agen AI membahas loop empat panggilan ini beserta pembatas keamanannya; panduan klien memuat konfigurasi untuk Claude, Cursor, dan lima klien lainnya.
Beralih dari Mailpit atau MailHog
Dari MailHog, beralihlah ke Mailpit — itulah pengganti yang masih dirawat untuk tugas yang sama. Dari salah satu keduanya ke GrabMail, hanya untuk pengujian yang menerima:
- Ganti MailHog dengan Mailpit untuk penangkapan. Ide yang sama, port yang sama, proyek yang masih dirawat:
docker run -p 8025:8025 -p 1025:1025 axllent/mailpit. Tidak ada satu pun dari itu yang melibatkan GrabMail. - Temukan pengujian yang berkomunikasi dengan pihak luar. Sebuah pengujian yang mendaftar ke layanan pihak ketiga sungguhan dan menunggu emailnya tidak bisa dilayani oleh catcher lokal. Berikan padanya
run-{id}@grabmail.io, atau sebuah alamat pada domain yang Anda arahkan kesmtp.grabmail.io. - Baca dengan sebuah GET.
/api/v1/mailbox?address=…setiap detik dengan sebuah batas waktu; panduan Playwright memiliki loop-nya. Tanpa token, tanpa container layanan. - Pertahankan Mailpit untuk semua hal lainnya. Template, tautan, skor spam, penyuntikan kegagalan: itulah tugasnya, dan GrabMail tidak bisa melakukan satu pun dari itu.
Yang mana, untuk apa
Pembagian yang jujur adalah berdasarkan arah:
Pilih GrabMail saat
- sebuah pengujian atau agen harus menerima email dari layanan yang tidak Anda kendalikan;
- Anda butuh alamat sungguhan dengan record MX, dan tidak ada yang perlu di-hosting atau diekspos;
- seorang agen butuh kotak masuk yang bisa dibukanya dan ditunggunya, tanpa akun.
Pilih Mailpit saat
- Anda ingin melihat dan memeriksa semua yang dikirim aplikasi Anda, tanpa itu keluar dari mesin Anda;
- Anda menginginkan chaos testing, penilaian spam, dan pengecekan HTML pada template Anda sendiri;
- tidak ada yang boleh keluar dari jaringan Anda, dan Anda menginginkan perangkat lunak, bukan sebuah layanan.
Kapan sebaiknya tetap dengan Mailpit
Tiga situasi ketika GrabMail adalah alat yang salah:
- Pengujian Anda memeriksa apa yang Anda kirim. GrabMail sama sekali tidak bisa melihat email keluar aplikasi Anda. Itulah keseluruhan tujuan Mailpit.
- Email Anda tidak boleh keluar gedung. Sebuah catcher lokal menyimpan setiap pesan di host Anda; setiap kotak surat GrabMail bersifat publik di internet.
- Anda menguji kegagalan. Mode chaos, relay ke server sungguhan, aturan penerusan: fitur-fitur dari sebuah alat yang Anda jalankan sendiri, tanpa padanan yang di-hosting di sini.
Pertanyaan
Apakah GrabMail adalah alternatif untuk Mailpit atau MailHog?
Hanya untuk pengujian yang menerima email dari dunia luar, yang mana baik Mailpit maupun MailHog memang tidak dibangun untuk itu. Untuk menangkap dan memeriksa email keluar aplikasi Anda sendiri, Mailpit adalah alatnya, dan GrabMail bukan alternatif untuknya.
Apakah MailHog masih dirawat?
Repository-nya tidak diarsipkan dan tidak membawa pemberitahuan deprecation apa pun, tapi per 2 September 2026 rilis terakhirnya adalah v1.0.1 dari Agustus 2020, commit terakhirnya dari Agustus 2022, dan ia memiliki lebih dari dua ratus issue terbuka. Mailpit adalah proyek yang masih dirawat untuk tugas yang sama.
Bisakah Mailpit menerima email dari internet?
Ia adalah sebuah server SMTP yang Anda arahkan dari aplikasi Anda, bukan sebuah layanan dengan record MX; dokumentasinya tidak memposisikannya untuk email internet, dan melakukan itu berarti mengekspos host Anda. GrabMail ada persis untuk kasus itu.
Berapa lama Mailpit menyimpan pesan?
Selama yang Anda tentukan: 500 terbaru secara default, sebuah batas usia seperti --max-age 14d jika Anda mengaturnya, dan sama sekali tidak ada apa-apa setelah keluar kecuali Anda mengonfigurasi sebuah file database. GrabMail menyimpan setiap pesan selama 5 hari.
Bisakah saya memakai keduanya dalam satu pipeline?
Itulah susunan yang biasa dipakai: Mailpit sebagai container layanan untuk email aplikasi itu sendiri, alamat GrabMail untuk pendaftaran yang dilakukan test suite terhadap layanan sungguhan. Panduan GitHub Actions menunjukkan bagian penerimaannya.


