Connectors (Claude & ChatGPT)

Primitive ships a hosted Model Context Protocol (MCP) server. Connect it to an MCP-compatible assistant — such as Claude or ChatGPT — and the assistant can inspect your account, read and search inbound email, and send or reply to messages through Primitive's authenticated relay. No SDK, SMTP credentials, or DNS setup required.

The same endpoint works for any MCP client. Authentication is OAuth, so you connect once and the assistant acts as your Primitive organization.

Endpoint

https://www.primitive.dev/mcp
  • Transport: Streamable HTTP
  • Authentication: OAuth 2.0 (authorization code + PKCE, with dynamic client registration). You sign in with your Primitive account and approve access; the assistant never holds your password.
  • Scope: the connector acts on the Primitive organization you authorize. It only reads and writes email within that organization.

What the assistant can do

Once connected, the assistant has tools for the common email workflows:

  • Read — list and search inbound email, open a full message, follow a conversation or thread, and check inbox and outbound readiness.
  • Send — send a new email, or reply on an existing thread, through your verified domains. These are confirmation-gated: the assistant asks before it sends.
  • Manage — claim and verify domains, manage webhook endpoints and filters, and inspect delivery history.

Read-only tools are safe to run without confirmation. Tools that send mail are marked as write actions, so a well-behaved assistant confirms the recipient, subject, and body with you first.

Connect in Claude

  1. In Claude, open Settings → Connectors (Team and Enterprise plans; an organization owner may need to add it).

  2. Choose Add custom connector.

  3. Enter the server URL:

    https://www.primitive.dev/mcp
  4. Complete the OAuth sign-in with your Primitive account and approve access.

  5. Start a new chat and ask, for example, "List my most recent Primitive emails." The Primitive tools appear and the email console renders inline.

Connect in ChatGPT

Custom MCP connector support in ChatGPT depends on your plan and rollout; the setting appears under Settings → Connectors, or via Developer mode where custom servers are enabled. If you don't see either, custom connectors may not yet be available on your ChatGPT plan.

  1. In ChatGPT, open Settings → Connectors (or enable Developer mode to add a custom MCP server).

  2. Add a connector pointing at:

    https://www.primitive.dev/mcp
  3. Complete the OAuth sign-in with your Primitive account and approve access.

  4. Ask ChatGPT to check your inbox or send a message; the Primitive app actions become available.

The email console

Email-centric results (account summary, inbox status, message lists, and send outcomes) render in an inline email console widget where the host supports MCP UI. The widget is fully self-contained — it ships no external scripts and opens no network connections of its own — and it adapts to the host's light or dark theme. Hosts that do not render the widget still receive the same structured result as text.

Authentication and discovery

The connector uses the same public API and OAuth surface documented under REST API:

  • API base: https://api.primitive.dev/v1
  • OAuth authorization server metadata: /.well-known/oauth-authorization-server (RFC 8414)
  • OAuth protected resource metadata: /.well-known/oauth-protected-resource (RFC 9728)

If you prefer to drive the API directly instead of through an assistant, every connector tool maps to a documented endpoint in the REST API reference.

Troubleshooting

The connector won't connect. Confirm the server URL is exactly https://www.primitive.dev/mcp (HTTPS, including the https://). The endpoint speaks the Streamable HTTP transport; if your client offers a transport choice, pick Streamable HTTP.

Sign-in fails or the OAuth window doesn't complete. The connector authenticates with your Primitive account over OAuth. Make sure you finish the sign-in and approve the access request in the popup; if it was blocked or closed, remove the connector and add it again to restart the flow. You authorize a specific Primitive organization — if you belong to more than one, sign in to the one whose mail you want the assistant to act on.

No tools appear after connecting. Start a new conversation after adding the connector so the assistant picks up the tools, then ask something email-related (for example, "List my most recent Primitive emails."). If tools still don't appear, disconnect and reconnect the connector.

A tool returns "unauthorized" or a 401. Your session expired or access was revoked. Reconnect the connector to re-authorize. The server never stores your password; it forwards your token to the Primitive API per request.

Read tools return nothing. A new Primitive organization has an empty inbox until mail arrives. Check inbox readiness with "Is my Primitive inbox ready to receive email?", confirm a verified domain, and send a test message to your address first.

Sending fails. Outbound send requires a verified domain. Confirm the from address is on a domain that is verified for your organization (the managed *.primitive.email address works out of the box), and that the assistant has confirmed the recipient, subject, and body before sending.

Still stuck? Contact support, or ask the Primitive dev_help agent directly at dev_help@agent.primitive.dev.

Privacy

The connector reads only the email and configuration in the organization you authorize, and returns only what is needed to answer your request. See the Privacy Policy for what Primitive collects, how long it is retained, and how to export or delete it. You can revoke a connector's access at any time from your Primitive account or from the assistant's connector settings.