New: campaigns, automations and product emails in the same account. Meet Postal
Sign in Create account
AssistantTested by usChecked on 10/28/2026

Connect ChatGPT to Postal

Add Postal as a custom MCP server in ChatGPT and chat with your email data.

How you sign in
Account (OAuth)
Transport
HTTP
Recommended access
Read and send
1

Before you start

Check these points before opening the ChatGPT setup. They prevent most connection failures.

  • A team with the "MCP server" plan feature (mcp_access); without it the server responds 403 plan_limit_reached.
  • To send emails, the team needs at least one verified domain.
  • Each connection acts on a single team. To use another team, connect again and pick the other one.
  • Connections are listed under Settings › AI connections in the dashboard, where they can be revoked at any time.

What ChatGPT requires

OpenAI limits custom MCP servers by plan and role: according to the Help Center (read via a search summary; the page refused automated access), full support is for Business and Enterprise/Edu (on Business, only admins and owners can create them), and Pro connects servers with read/search permissions. Check in your workspace, since the interface changed to "Plugins" and no longer requires developer mode. Public HTTPS endpoint with Streamable HTTP at /mcp. Workspace policies apply.

2

Connect

Follow the steps in order. The server address is always https://api.postal.so/mcp. This tool signs in with your account (OAuth).

  1. 1

    Open the ChatGPT Plugins page (https://chatgpt.com/plugins), click the + button and choose "Add custom MCP server".

  2. 2

    Give it a name and a description. Under Connection (public server), enter https://api.postal.so/mcp, with the /mcp path.

  3. 3

    Set authentication to OAuth, read the risk notice and check "I understand and want to continue".

  4. 4

    Click "Create as a plugin" and finish the Postal login (choose the team and click Allow). Review the discovered tools (34 with mcp:full).

  5. 5

    Use it in a conversation. ChatGPT asks for manual confirmation before write actions (sending email, creating templates...); keep approval turned on.

Server URL

Text
https://api.postal.so/mcp
3

Access the tool needs

Postal splits access into three levels, explained in the scopes table. For ChatGPT:

Required
Read your datamcp:read

View emails, domains, contacts, segments, topics, templates, broadcasts, automations, forms, inbox conversations, metrics and usage.

Recommended
Send emails and eventsmcp:send

Send and schedule emails from verified domains and record events for automations.

Only if you want
Manage everythingmcp:full

Everything above, plus creating, changing and deleting contacts and templates, creating and sending broadcasts (send_broadcast requires confirm: true), canceling scheduled emails and working in inboxes (organize, reply, create drafts).

ChatGPT requests the scopes Postal announces (all three) and grants them in full on the consent screen. mcp:read lets you ask about deliveries, mcp:send send emails and mcp:full create and send broadcasts and edit contacts and templates. Since ChatGPT confirms every write action, keep approval turned on.

4

How to confirm it worked

The simplest proof is to ask for something read-only inside ChatGPT itself. The connection also shows up under Settings › AI connections in the Postal dashboard, with the app, the team and the last use.

Illustrative example

List my domains on Postal.
I found 2 domains on the Aurora Cosméticos team: exemplo.com.br (verified) and loja.exemplo.com.br (verifying).

For those who want the technical proof

Terminal: Inspector with web interface
npx @modelcontextprotocol/inspector

The Inspector proves that the Postal server responds. It does not test ChatGPT itself. The full walkthrough is in Validate the connection.

5

If something goes wrong

Go through the list in order. Then read what we know (and what we don't know) about ChatGPT.

Check

  • The address is exactly https://api.postal.so/mcp, with /mcp at the end.
  • The connection type is HTTP (Streamable HTTP). Postal does not offer SSE: if the tool gives you the choice, use HTTP.
  • The team has the "MCP server" feature on its plan. Without it, the server responds 403 plan_limit_reached.
  • To send emails, the team has at least one verified domain.
  • Each connection acts on a single team. To use another one, connect again and pick the other.
  • 429 response (rate_limit_exceeded): the plan's requests-per-second limit was reached. Wait a moment and try again.
  • If the tool complains about the response size, ask for smaller lists (at most 100 items per call; the default is 20).
  • To start over from scratch, revoke the connection under Settings › AI connections and connect again.

What was tested and what was not

Tested by usChecked on 10/28/2026

We ran Postal's automated tests with the real documents and callback addresses the app publishes, and with the official MCP SDK client. It is not a test inside the real application. Below is the full note on what was and was not verified.

Test details

This was a gap and was fixed on 2026-10-28: the document ChatGPT publishes (https://chatgpt.com/oauth/client.json) declares token_endpoint_auth_method private_key_jwt (and lists none and private_key_jwt), and Postal rejected any value other than none, so authorization failed with "invalid client". Now the document is accepted when it also lists none (Postal always treats this client as public with PKCE, which is what OpenAI's documentation says ChatGPT picks from the intersection of methods). Verified by a test with the real document, the redirect https://chatgpt.com/connector_platform_oauth_redirect, resource in the authorization and token requests, refresh and dynamic registration (including https://chatgpt.com/connector/oauth/{id}). Not tested inside the real ChatGPT. ChatGPT presents an OpenAI mTLS certificate; Postal does not require it (it is optional) and does not validate it.

Frequently asked questions

Do I need an API key to connect ChatGPT?

No. ChatGPT signs in with your Postal account (OAuth), picking the team on the permission screen. This page does not document an API key path for it.

Can I limit what ChatGPT does on my account?

ChatGPT requests the scopes Postal announces (all three) and grants them in full on the consent screen. mcp:read lets you ask about deliveries, mcp:send send emails and mcp:full create and send broadcasts and edit contacts and templates. Since ChatGPT confirms every write action, keep approval turned on. You can revoke the connection at any time under Settings › AI connections.

Ready to use Postal in ChatGPT?

Create your account and connect. If you need help, talk to us through the contact form.