Compare
AgentiSend vs Plunk
Yes, for transactional email an agent sends through an API. A Free plan that does not expire: 1,000 emails a month, 100 a day, 3 domains, no card. Then plans from $9 a month (Starter, 30,000 emails). No plan daily cap; delivery paced per inbox provider. Or 20% off paid yearly. It is not a replacement for a product that is ahead on the rows marked in the other column.
Pick Plunk when you want $0.001 per email, inbound mail, a self-hosted install, or a local MCP server that asks before a multi-recipient send; pick AgentiSend when you want a per-key budget, signed webhooks with replay, and a hosted MCP with the same limits as the API. The figures below are from Plunk pages fetched on 28 September 2026 and from this product's pricing table and published API.
| What matters | AgentiSend | Plunk |
|---|---|---|
| Trying it before paying | A Free plan that does not expire: 1,000 emails a month, 100 a day, 3 domains, no card. Then plans from $9 a month (Starter, 30,000 emails). No plan daily cap; delivery paced per inbox provider. Or 20% off paid yearly. | Free is 1,000 emails a month, no card, with a Plunk footer on marketing mail. Inbound mail counts toward the 1,000. |
| Price per email | $22 a month on Pro, which is $0.22 per 1,000. Sending pauses at the inclusion unless an owner turns overage on, up to a ceiling they set. | After the free tier, $0.001 per email and no monthly fee. Attachments cost 2 credits. You can set a monthly cap per category: transactional, campaigns, workflows and inbound. |
| A spending limit per key | Every key is created with a send budget. The send path refuses with agent_budget_exceeded when it is spent, and a key cannot raise its own. The plan inclusion is a second ceiling (plan_limit_reached). | Caps are per project and per category, not per key. Crossing one returns 402 with error code BILLING_LIMIT_EXCEEDED. A per-key send budget is not on the billing page. |
| A retry never sends twice | Idempotency-Key is accepted on every endpoint that changes something and remembered for 7 days. | An idempotency key is not documented on the billing page or the MCP guide. |
| What a refusal tells you | Every refused request carries code, message, fix (the call that repairs it), docs_url and retryable. | The billing page names 402 and BILLING_LIMIT_EXCEEDED when a cap is hit. A fix field naming the next call is not on that page. |
| How long the log keeps a message | 7 days on Free, 30 on Starter, 90 on Pro, 180 on Scale. It is part of the plan and there is no add-on to buy. | A retention period is not stated on the pricing page, the billing page or the MCP guide. |
| What the model can call | A hosted MCP server with 82 MCP tools (44 listed by default, the rest named by list_more_tools). An agent gets the same budget and kill switch over MCP as over the API. | The official package is @plunk/mcp, run locally with npx and a secret key (sk_). The guide lists 10 read-only tools and 13 writing tools, 23 in total. A send to more than one recipient asks the person to confirm, unless PLUNK_ALLOW_UNCONFIRMED_SENDS is set. |
| Receiving mail | No inbox object and no inbound mail yet; AgentiSend receives only bounces and complaint reports for mail it sent. | Inbound mail is offered and counts as one credit per message. The hosted product and a self-hosted install are both described. |
| Signed webhooks | Signed HTTP webhooks. POST /webhooks/{id}/replay re-sends a range you name, and a delivery that ran out of retries is listed as dead_lettered. | Webhook signing is not documented on the billing page or the MCP guide. |
Sources
- Trying it before paying. Ours: the published API, /pricing and /security. Theirs: https://docs.useplunk.com/concepts/billing (captured 2026-09-28).
- Price per email. Ours: the published API, /pricing and /security. Theirs: https://docs.useplunk.com/concepts/billing (captured 2026-09-28).
- A spending limit per key. Ours: the published API, /pricing and /security. Theirs: https://docs.useplunk.com/concepts/billing (captured 2026-09-28).
- A retry never sends twice. Ours: the published API, /pricing and /security. Theirs: https://docs.useplunk.com/guides/mcp-server (captured 2026-09-28).
- What a refusal tells you. Ours: the published API, /pricing and /security. Theirs: https://docs.useplunk.com/concepts/billing (captured 2026-09-28).
- How long the log keeps a message. Ours: the published API, /pricing and /security. Theirs: https://www.useplunk.com/pricing (captured 2026-09-28).
- What the model can call. Ours: the published API, /pricing and /security. Theirs: https://docs.useplunk.com/guides/mcp-server (captured 2026-09-28).
- Receiving mail. Ours: the published API, /pricing and /security. Theirs: https://docs.useplunk.com/concepts/billing (captured 2026-09-28).
- Signed webhooks. Ours: the published API, /pricing and /security. Theirs: https://docs.useplunk.com/guides/mcp-server (captured 2026-09-28).