Everything here was measured by our prober or read from a registry. Nothing is self-reported.
30-day availability1/1 checks ok
30 days agotoday
Endpoints
https://www.primitive.dev/mcpmcp streamable http · checked on a schedule
Registry facts
Not distributed through a package registry we index.
when
check
result
http
latency
detail
4 h ago
mcp initialize
ok
200
836 ms
server primitive 0.1.0 · protocol 2025-06-18 · 30 tools
Tools observed via MCP handshake
listDomains — List all inbound domains for the organization, both verified and unverified. Each domain includes its verification status and DNS records. Use before addDomain
addDomain — Claim a new domain and receive the DNS records to publish. Returns dns_records with the exact records to add. If the domain has an mx_conflict (existing mail pr
verifyDomain — Check DNS records for a domain claim (MX, TXT, SPF, DKIM, DMARC). On success the domain becomes verified and starts receiving mail. On failure, returns which ch
downloadDomainZoneFile — Download a BIND-format DNS zone file for a domain. Useful when users want to import all required DNS records at once rather than copying them individually. Retu
getAccount — Use this when you need the authenticated Primitive account summary, including plan, onboarding state, and managed inbox domain. managed_inbox_address is a domai
getInboxStatus — Use this when the user asks whether inbound email is ready or needs setup. Returns domains, routes, deployed Functions, and recent inbound activity.
getOutboundStatus — What can I send FROM? Lists this account's verified outbound (sendable) domains plus any domains still pending DNS verification, with next actions. Call this BE
listEmails — Use this when you need to browse inbound emails received at verified domains with cursor pagination, status filters, date filters, or sender/recipient search.
searchEmails — Use this when you need to find inbound emails with structured filters or full-text matching. Use sort=received_at_asc plus date_from for new-mail polling.
getEmail — Use this when you need full details for one inbound email ID, including parsed bodies, threading metadata, SMTP envelope, webhook state, and replies.
replyToEmail — Use this when the user has selected a specific inbound email and confirmed a reply. Sends real outbound email with threading handled server-side.
sendEmail — Use this when the user has confirmed a new outbound email. Sends real email through Primitive's relay and can wait for the first SMTP delivery outcome, or sched
Declared by sources
What the publisher says
Attributed to the source that supplied each field. Treated as claims, not facts.
No long description beyond the summary.
kind ← Official MCP Registry
name ← Official MCP Registry
repoUrl ← Official MCP Registry
summary ← Official MCP Registry
version ← Official MCP Registry
description ← Official MCP Registry
homepageUrl ← Official MCP Registry
publisherName ← Official MCP Registry
Derived by Wellknown
Capabilities
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
6 h ago · declared · summary → "Email infrastructure for AI agents — send, receive, search, and reply to email over MCP."
6 h ago · declared · description → "Email infrastructure for AI agents — send, receive, search, and reply to email over MCP."
6 h ago · declared · publisherName → "dev.primitive"
6 h ago · declared · homepageUrl → "https://www.primitive.dev"
6 h ago · declared · repoUrl → "https://github.com/primitivedotdev/primitive-mono-repo"
6 h ago · declared · version → "0.1.0"
6 h ago · declared · protocols → ["mcp"]
sendEmailDemo — SIMULATION ONLY: nothing is delivered. NEVER call this when the user actually wants an email to arrive, and never describe its result as a sent email: no messag
listSentEmails — List outbound emails sent by this org, with cursor pagination and filters. Bodies are omitted from list rows to keep responses small — use getSentEmail to fetch
getSentEmail — Get the full record for a single sent email by id, including body_text and body_html. Use to inspect delivery details for a specific send — e.g. the SMTP respon
cancelScheduledSend — Cancel a still-scheduled send before it dispatches (terminal status "canceled"; the same idempotency key becomes reusable). Pass the sent email id from a sendEm
awaitReply — Wait for the threaded reply to a sent email. Call this immediately after sendEmail or replyToEmail when you expect an answer. With only the sent email's id it l
getConversation — Get the full conversation an inbound email belongs to as ordered, chat-model-ready turns with bodies. Each message is oldest-first with a direction (inbound/out
getThread — Get a conversation thread by id: metadata plus all inbound and outbound messages interleaved oldest-first. Each message has a direction (inbound/outbound) and i
downloadEmailAttachments — Download all attachments for an inbound email as a gzip-compressed tar archive. Returns the archive as a base64-encoded string along with the attachment count a
listEndpoints — List all active webhook endpoints for the organization. Each endpoint shows its URL, enabled state, and optional domain restriction.
createEndpoint — Create a webhook endpoint to receive email.received events. If an endpoint with the same URL already exists but is deactivated, it is reactivated. After creatin
deleteEndpoint — Soft-delete a webhook endpoint. The endpoint will no longer receive deliveries.
testEndpoint — Send a sample email.received event to a webhook endpoint to verify your signature verifier. Rate limited to 4/min and 30/hr. Successful deliveries and verified-
listFilters — List all whitelist and blocklist filter rules for the organization.
createFilter — Create a whitelist or blocklist filter rule. Patterns are stored lowercase. Per-domain filters require a Pro plan.
deleteFilter — Delete a filter rule.
listWebhookDeliveries — List webhook delivery attempts with pagination and filters. Each delivery includes the target endpoint and a nested email object with sender/recipient/subject.
replayWebhookDelivery — Re-send a stored webhook payload from a previous delivery attempt to its original endpoint. Rate limited per org (burst + sustained windows, shared budget with
createEmailAddress — Get this user's Primitive managed inbox domain, creating the account on first use: no signup form, no password, no email verification, no browser. CALL THIS FIR