实测可用办公和协作
SpacePost
Send email and manage domains, contacts and webhooks on SpacePost, the Resend-compatible email API.
https://api.spacepost.dev/mcpclaude mcp add --transport http mcp https://api.spacepost.dev/mcpCursor 等客户端的配置
{
"mcpServers": {
"mcp": {
"type": "http",
"url": "https://api.spacepost.dev/mcp"
}
}
}连接时它要:Authorization
要注意
有会改数据的工具:10 个
服务方自己把这些工具标成了会删除或改写数据(destructiveHint),让智能体调用前先问你。
- 测试结果
- 实测可用:握手成功
- 工具
- 46 个工具
- 握手用时
- 1.3 秒
- 传输方式
- streamable-http · 2025-06-18
- 测试时间
- 2026 年 11 月 6 日
- 官方目录名称
dev.spacepost/mcpv0.2.2- 登记于
- 2026 年 11 月 4 日
- 更新于
- 2026 年 11 月 4 日
- 也能装到本机
- 1 个安装包
最近 1 次测试
| 时间 | 结果 | 用时 |
|---|---|---|
| 2026-11-06 12:23 UTC | 握手成功 | 1.3 秒 |
它列出的 46 个工具
“只读”和“会改数据”是服务方自己标的。带下划线的参数是必填的。
cancel_email会改数据Cancel a scheduled email
Cancel a scheduled email. Requires a `full_access` API key. API: `POST /emails/{id}/cancel` (operationId `cancelEmail`, Emails).
idcreate_api_keyCreate an API key
Create an API key. The `token` is returned only in this response. Requires a `full_access` API key. API: `POST /api-keys` (operationId `createApiKey`, API Keys).
namepermissiondomain_idcreate_audienceCreate an audience
Create an audience. Requires a `full_access` API key. API: `POST /audiences` (operationId `createAudience`, Audiences).
namecreate_broadcastCreate a broadcast
Create a broadcast. Creates a draft. The `from` address must belong to a verified domain of your team and `audience_id` to one of your audiences. Requires a `full_access` API key. API: `POST /broadcasts` (operationId `createBroadcast`, Broadcasts).
audience_idfromsubjectreply_topreview_texthtmltextnamecreate_contactCreate a contact
Create a contact. Emails are lower-cased. An address can only appear once per audience. Requires a `full_access` API key. API: `POST /audiences/{audienceId}/contacts` (operationId `createContact`, Contacts).
audience_idemailfirst_namelast_nameunsubscribedcreate_domainCreate a domain
Create a domain. Registers a domain and returns the DNS records to add (three DKIM CNAMEs, plus MX and SPF on the MAIL FROM subdomain). Domain names are globally unique. The number of domains is limited by your plan (Free 3, Pro 10, Scale 1,000). The response lists the DNS records (DKIM CNAMEs, MAIL FROM MX and SPF TXT) the user must add at their DNS provider; afterwards call verify_domain and then get_domain to see the new status. DNS changes can take minutes to hours. Requires a `full_access` API key. API: `POST /domains` (operationId `createDomain`, Domains).
nameregioncustom_return_pathtenant_idcreate_suppressionAdd a suppression
Add a suppression. Adds the address with reason `manual`. Adding an address that is already suppressed returns the existing entry. Requires a `full_access` API key. API: `POST /suppressions` (operationId `createSuppression`, Suppressions).
emailcreate_tenantCreate a tenant
Create a tenant. Creates one of your customers, with its own SES tenant (isolated reputation). `external_id` must be unique within your account. Requires a `full_access` API key. API: `POST /tenants` (operationId `createTenant`, Tenants).
nameexternal_iddaily_limitcreate_webhookCreate a webhook
Create a webhook. In production the endpoint must use https and resolve to a public address. Requires a `full_access` API key. API: `POST /webhooks` (operationId `createWebhook`, Webhooks).
endpointeventsdelete_api_key会改数据Delete an API key
Delete an API key. The key stops working immediately. The response body is an empty object. Requires a `full_access` API key. API: `DELETE /api-keys/{id}` (operationId `deleteApiKey`, API Keys).
iddelete_audience会改数据Delete an audience
Delete an audience. Also deletes its contacts. Requires a `full_access` API key. API: `DELETE /audiences/{id}` (operationId `deleteAudience`, Audiences).
iddelete_broadcast会改数据Delete a broadcast
Delete a broadcast. Only drafts and broadcasts that are scheduled for the future can be deleted. Requires a `full_access` API key. API: `DELETE /broadcasts/{id}` (operationId `deleteBroadcast`, Broadcasts).
iddelete_contact会改数据Delete a contact
Delete a contact. Requires a `full_access` API key. API: `DELETE /audiences/{audienceId}/contacts/{idOrEmail}` (operationId `deleteContact`, Contacts).
audience_idid_or_emaildelete_domain会改数据Delete a domain
Delete a domain. Requires a `full_access` API key. API: `DELETE /domains/{id}` (operationId `deleteDomain`, Domains).
iddelete_suppression会改数据Remove a suppression
Remove a suppression. Requires a `full_access` API key. API: `DELETE /suppressions/{idOrEmail}` (operationId `deleteSuppression`, Suppressions).
id_or_emaildelete_tenant会改数据Delete a tenant
Delete a tenant. Fails with `422` while the tenant still has domains; delete those first. Requires a `full_access` API key. API: `DELETE /tenants/{ref}` (operationId `deleteTenant`, Tenants).
refdelete_webhook会改数据Delete a webhook
Delete a webhook. Requires a `full_access` API key. API: `DELETE /webhooks/{id}` (operationId `deleteWebhook`, Webhooks).
idget_audience只读Retrieve an audience
Retrieve an audience. Requires a `full_access` API key. API: `GET /audiences/{id}` (operationId `getAudience`, Audiences).
idget_broadcast只读Retrieve a broadcast
Retrieve a broadcast. Requires a `full_access` API key. API: `GET /broadcasts/{id}` (operationId `getBroadcast`, Broadcasts).
idget_broadcast_readiness只读Check a broadcast before sending
Check a broadcast before sending. SpacePost extension (not part of Resend). Returns a deliverability checklist: sender domain and DMARC, subject, Gmail clipping (HTML over 102 KB), image-heavy bodies, link shorteners, spam phrases, unsubscribe link and audience quality. `ready` is false when any check has level `error`; `POST /broadcasts/{id}/send` is then refused with `validation_error`. Warnings never block a send. Requires a `full_access` API key. API: `GET /broadcasts/{id}/readiness` (operationId `getBroadcastReadiness`, Broadcasts).
idget_contact只读Retrieve a contact
Retrieve a contact. Requires a `full_access` API key. API: `GET /audiences/{audienceId}/contacts/{idOrEmail}` (operationId `getContact`, Contacts).
audience_idid_or_emailget_domain只读Retrieve a domain
Retrieve a domain. Requires a `full_access` API key. API: `GET /domains/{id}` (operationId `getDomain`, Domains).
idget_email只读Retrieve an email
Retrieve an email. Requires a `full_access` API key. API: `GET /emails/{id}` (operationId `getEmail`, Emails).
idget_tenant只读Retrieve a tenant
Retrieve a tenant. Requires a `full_access` API key. API: `GET /tenants/{ref}` (operationId `getTenant`, Tenants).
refget_webhook只读Retrieve a webhook
Retrieve a webhook. Requires a `full_access` API key. API: `GET /webhooks/{id}` (operationId `getWebhook`, Webhooks).
idlist_api_keys只读List API keys
List API keys. Requires a `full_access` API key. API: `GET /api-keys` (operationId `listApiKeys`, API Keys).
limitafterbeforelist_audiences只读List audiences
List audiences. Requires a `full_access` API key. API: `GET /audiences` (operationId `listAudiences`, Audiences).
limitafterbeforelist_broadcasts只读List broadcasts
List broadcasts. Requires a `full_access` API key. API: `GET /broadcasts` (operationId `listBroadcasts`, Broadcasts).
limitafterbeforelist_contacts只读List contacts
List contacts. Requires a `full_access` API key. API: `GET /audiences/{audienceId}/contacts` (operationId `listContacts`, Contacts).
audience_idlimitafterbeforelist_domains只读List domains
List domains. Requires a `full_access` API key. API: `GET /domains` (operationId `listDomains`, Domains).
limitafterbeforelist_emails只读List emails
List emails. Returns sent and scheduled emails, newest first, without bodies. Requires a `full_access` API key. API: `GET /emails` (operationId `listEmails`, Emails).
limitafterbeforelist_suppressions只读List suppressions
List suppressions. Requires a `full_access` API key. API: `GET /suppressions` (operationId `listSuppressions`, Suppressions).
limitafterbeforelist_tenants只读List tenants
List tenants. Requires a `full_access` API key. API: `GET /tenants` (operationId `listTenants`, Tenants).
limitafterbeforelist_webhooks只读List webhooks
List webhooks. Requires a `full_access` API key. API: `GET /webhooks` (operationId `listWebhooks`, Webhooks).
limitafterbeforepause_tenant会改数据Pause a tenant
Pause a tenant. Stops all sending for the tenant. Sends return `403 sending_paused`; emails already queued fail. The body is optional. Requires a `full_access` API key. API: `POST /tenants/{ref}/pause` (operationId `pauseTenant`, Tenants).
refreasonsend_batch_emailsSend batch emails
Send batch emails. Sends up to 100 emails in one call. All-or-nothing, if any email is invalid none are sent. Attachments, `scheduled_at` and a per-email `tenant_id` are supported; the paused-tenant and tenant-cap errors apply to the whole batch. Put the emails in `body` as an array. Prefer send_email for a single message. Works with a `sending_access` or `full_access` API key. API: `POST /emails/batch` (operationId `sendBatchEmails`, Emails).
idempotency_keybodysend_broadcastSend or schedule a broadcast
Send or schedule a broadcast. Queues a draft for delivery to every subscribed contact of its audience. The broadcast needs `html` or `text`. Without `scheduled_at` it starts immediately; the status becomes `queued`, then `sending` and `sent`. Sends to every subscribed contact in the audience. Run get_broadcast_readiness first and confirm with the user. Requires a `full_access` API key. API: `POST /broadcasts/{id}/send` (operationId `sendBroadcast`, Broadcasts).
idscheduled_atsend_emailSend an email
Send an email. Validates and queues one email. Each recipient counts towards your quota. Use `scheduled_at` to send later (up to 30 days ahead). Pass `tenant_id` to send on behalf of a tenant (not needed when the `from` domain belongs to one). Fails with `422` if `tenant_id` conflicts with the domain's tenant, `403 sending_paused` if the tenant is paused and `429 daily_quota_exceeded` if it reached its daily cap. `from` must be on a verified domain (e.g. "Acme <[email protected]>"); call list_domains to find one. Provide `html`, `text` or both. Send to [email protected] (or bounced@ / complained@) to test without sending real mail. Delivered email cannot be recalled: confirm recipients and content with the user when unsure. Pass `idempotency_key` when retrying so the email is not sent twice. Request body: Either `html` or `text` is required. `reply_to` is also accepted as `replyTo` and `scheduled_at` as `scheduledAt`. Works with a `sending_access` or `full_access` API key. API
idempotency_keyfromtosubjectccbccreply_tohtmltextheadersattachmentstagsscheduled_attenant_idunpause_tenantUnpause a tenant
Unpause a tenant. Resumes sending. A tenant that was paused by the reputation guard (bounce or complaint rate) can only be unpaused by a `trusted` or `internal` team; others get `403 invalid_access` and should contact support. Requires a `full_access` API key. API: `POST /tenants/{ref}/unpause` (operationId `unpauseTenant`, Tenants).
refupdate_broadcastUpdate a broadcast
Update a broadcast. Only drafts can be updated. Request body: Any field of the create request; only drafts can be updated. Requires a `full_access` API key. API: `PATCH /broadcasts/{id}` (operationId `updateBroadcast`, Broadcasts).
idaudience_idfromsubjectreply_topreview_texthtmltextnameupdate_contactUpdate a contact
Update a contact. Requires a `full_access` API key. API: `PATCH /audiences/{audienceId}/contacts/{idOrEmail}` (operationId `updateContact`, Contacts).
audience_idid_or_emailfirst_namelast_nameunsubscribedupdate_domainUpdate a domain
Update a domain. Toggles open and click tracking. Requires a `full_access` API key. API: `PATCH /domains/{id}` (operationId `updateDomain`, Domains).
idopen_trackingclick_trackingtlsupdate_emailReschedule an email
Reschedule an email. Changes `scheduled_at` of an email that is still `scheduled`. Requires a `full_access` API key. API: `PATCH /emails/{id}` (operationId `updateEmail`, Emails).
idscheduled_atupdate_tenantUpdate a tenant
Update a tenant. Changes the name, `external_id` or `daily_limit` (`null` removes the cap). Requires a `full_access` API key. API: `PATCH /tenants/{ref}` (operationId `updateTenant`, Tenants).
refnameexternal_iddaily_limitupdate_webhookUpdate a webhook
Update a webhook. Requires a `full_access` API key. API: `PATCH /webhooks/{id}` (operationId `updateWebhook`, Webhooks).
idendpointeventsstatusverify_domainVerify a domain
Verify a domain. Re-checks DNS now. Retrieve the domain afterwards to read the new `status` and per-record statuses. Requires a `full_access` API key. API: `POST /domains/{id}/verify` (operationId `verifyDomain`, Domains).
id
测试只做握手和列出工具,没有调用任何工具。名称和说明是登记的人写的,原样展示,我们没有核实。