Horizontal

实测可用办公和协作

SpacePost

Send email and manage domains, contacts and webhooks on SpacePost, the Resend-compatible email API.

地址https://api.spacepost.dev/mcp
Claude Codeclaude mcp add --transport http mcp https://api.spacepost.dev/mcp
Cursor 等客户端的配置
{
  "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/mcp v0.2.2
登记于
2026 年 11 月 4 日
更新于
2026 年 11 月 4 日
网站
docs.spacepost.dev/tools/mcp/
代码
github.com/404-studio/spacepost-mcp
也能装到本机
1 个安装包
最近 1 次测试
时间结果用时
2026-11-06 12:23 UTC握手成功1.3 秒

它列出的 46 个工具

“只读”和“会改数据”是服务方自己标的。带下划线的参数是必填的。

  1. cancel_email会改数据

    Cancel a scheduled email

    Cancel a scheduled email. Requires a `full_access` API key. API: `POST /emails/{id}/cancel` (operationId `cancelEmail`, Emails).

    id

  2. create_api_key

    Create 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).

    name permission domain_id

  3. create_audience

    Create an audience

    Create an audience. Requires a `full_access` API key. API: `POST /audiences` (operationId `createAudience`, Audiences).

    name

  4. create_broadcast

    Create 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_id from subject reply_to preview_text html text name

  5. create_contact

    Create 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_id email first_name last_name unsubscribed

  6. create_domain

    Create 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).

    name region custom_return_path tenant_id

  7. create_suppression

    Add 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).

    email

  8. create_tenant

    Create 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).

    name external_id daily_limit

  9. create_webhook

    Create 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).

    endpoint events

  10. delete_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).

    id

  11. delete_audience会改数据

    Delete an audience

    Delete an audience. Also deletes its contacts. Requires a `full_access` API key. API: `DELETE /audiences/{id}` (operationId `deleteAudience`, Audiences).

    id

  12. delete_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).

    id

  13. delete_contact会改数据

    Delete a contact

    Delete a contact. Requires a `full_access` API key. API: `DELETE /audiences/{audienceId}/contacts/{idOrEmail}` (operationId `deleteContact`, Contacts).

    audience_id id_or_email

  14. delete_domain会改数据

    Delete a domain

    Delete a domain. Requires a `full_access` API key. API: `DELETE /domains/{id}` (operationId `deleteDomain`, Domains).

    id

  15. delete_suppression会改数据

    Remove a suppression

    Remove a suppression. Requires a `full_access` API key. API: `DELETE /suppressions/{idOrEmail}` (operationId `deleteSuppression`, Suppressions).

    id_or_email

  16. delete_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).

    ref

  17. delete_webhook会改数据

    Delete a webhook

    Delete a webhook. Requires a `full_access` API key. API: `DELETE /webhooks/{id}` (operationId `deleteWebhook`, Webhooks).

    id

  18. get_audience只读

    Retrieve an audience

    Retrieve an audience. Requires a `full_access` API key. API: `GET /audiences/{id}` (operationId `getAudience`, Audiences).

    id

  19. get_broadcast只读

    Retrieve a broadcast

    Retrieve a broadcast. Requires a `full_access` API key. API: `GET /broadcasts/{id}` (operationId `getBroadcast`, Broadcasts).

    id

  20. get_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).

    id

  21. get_contact只读

    Retrieve a contact

    Retrieve a contact. Requires a `full_access` API key. API: `GET /audiences/{audienceId}/contacts/{idOrEmail}` (operationId `getContact`, Contacts).

    audience_id id_or_email

  22. get_domain只读

    Retrieve a domain

    Retrieve a domain. Requires a `full_access` API key. API: `GET /domains/{id}` (operationId `getDomain`, Domains).

    id

  23. get_email只读

    Retrieve an email

    Retrieve an email. Requires a `full_access` API key. API: `GET /emails/{id}` (operationId `getEmail`, Emails).

    id

  24. get_tenant只读

    Retrieve a tenant

    Retrieve a tenant. Requires a `full_access` API key. API: `GET /tenants/{ref}` (operationId `getTenant`, Tenants).

    ref

  25. get_webhook只读

    Retrieve a webhook

    Retrieve a webhook. Requires a `full_access` API key. API: `GET /webhooks/{id}` (operationId `getWebhook`, Webhooks).

    id

  26. list_api_keys只读

    List API keys

    List API keys. Requires a `full_access` API key. API: `GET /api-keys` (operationId `listApiKeys`, API Keys).

    limit after before

  27. list_audiences只读

    List audiences

    List audiences. Requires a `full_access` API key. API: `GET /audiences` (operationId `listAudiences`, Audiences).

    limit after before

  28. list_broadcasts只读

    List broadcasts

    List broadcasts. Requires a `full_access` API key. API: `GET /broadcasts` (operationId `listBroadcasts`, Broadcasts).

    limit after before

  29. list_contacts只读

    List contacts

    List contacts. Requires a `full_access` API key. API: `GET /audiences/{audienceId}/contacts` (operationId `listContacts`, Contacts).

    audience_id limit after before

  30. list_domains只读

    List domains

    List domains. Requires a `full_access` API key. API: `GET /domains` (operationId `listDomains`, Domains).

    limit after before

  31. list_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).

    limit after before

  32. list_suppressions只读

    List suppressions

    List suppressions. Requires a `full_access` API key. API: `GET /suppressions` (operationId `listSuppressions`, Suppressions).

    limit after before

  33. list_tenants只读

    List tenants

    List tenants. Requires a `full_access` API key. API: `GET /tenants` (operationId `listTenants`, Tenants).

    limit after before

  34. list_webhooks只读

    List webhooks

    List webhooks. Requires a `full_access` API key. API: `GET /webhooks` (operationId `listWebhooks`, Webhooks).

    limit after before

  35. pause_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).

    ref reason

  36. send_batch_emails

    Send 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_key body

  37. send_broadcast

    Send 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).

    id scheduled_at

  38. send_email

    Send 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_key from to subject cc bcc reply_to html text headers attachments tags scheduled_at tenant_id

  39. unpause_tenant

    Unpause 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).

    ref

  40. update_broadcast

    Update 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).

    id audience_id from subject reply_to preview_text html text name

  41. update_contact

    Update a contact

    Update a contact. Requires a `full_access` API key. API: `PATCH /audiences/{audienceId}/contacts/{idOrEmail}` (operationId `updateContact`, Contacts).

    audience_id id_or_email first_name last_name unsubscribed

  42. update_domain

    Update a domain

    Update a domain. Toggles open and click tracking. Requires a `full_access` API key. API: `PATCH /domains/{id}` (operationId `updateDomain`, Domains).

    id open_tracking click_tracking tls

  43. update_email

    Reschedule 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).

    id scheduled_at

  44. update_tenant

    Update 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).

    ref name external_id daily_limit

  45. update_webhook

    Update a webhook

    Update a webhook. Requires a `full_access` API key. API: `PATCH /webhooks/{id}` (operationId `updateWebhook`, Webhooks).

    id endpoint events status

  46. verify_domain

    Verify 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

这是你的服务?

认领后,服务坏了第一时间知道,还能改正这一页、提交你自己的用法。

测试只做握手和列出工具,没有调用任何工具。名称和说明是登记的人写的,原样展示,我们没有核实。

回到 MCP 服务实测