100+ integrations are ready to connect to your AI.Connect your first MCP

Codex MCP server for Shopify, Stripe and 100+ business tools

Add PopMCP to ~/.codex/config.toml and run one login command. Codex can then read real orders, payments, issues and analytics next to the repository it is working in. No API keys, and no server to run.

https://app.popmcp.com/mcp

Steps checked against OpenAI's documentation on

Connect Codex to PopMCP

Two ways to register the server: edit the config file, or let the CLI write it. Both end with the same PopMCP sign-in.

Add PopMCP in config.toml

Two lines in Codex's config file, then one command to sign in. The CLI, the IDE extension and the desktop app all read the same file.

  1. Sign in at app.popmcp.com, connect the tools you want Codex to reach, and check each one shows as Verified.

  2. Add this table to ~/.codex/config.toml. To scope it to one trusted project, put it in .codex/config.toml in that project instead.

    ~/.codex/config.toml
    [mcp_servers.popmcp]
    url = "https://app.popmcp.com/mcp"
  3. Run the login command. Codex opens the PopMCP consent screen in your browser and stores the token itself.

    Terminal
    codex mcp login popmcp
  4. On the PopMCP consent screen, tick only the connectors Codex should reach, then authorize.

  5. List the configured servers, or type /mcp inside Codex to see the active ones. Start with a read-only request.

    Terminal
    codex mcp list
What you save and run, in order. Drawn from the steps beside it, not a screenshot.

The short answer

Codex supports the Model Context Protocol (MCP) over Streamable HTTP with OAuth: you register a remote MCP server in ~/.codex/config.toml, run codex mcp login, and Codex can call that server's tools. PopMCP is a hosted MCP server that puts 100+ business tools behind one URL, https://app.popmcp.com/mcp, so one entry reaches every tool you connect in PopMCP. The Codex CLI, the IDE extension and the ChatGPT desktop app share that configuration.

What to ask Codex

Codex calls PopMCP's tools, PopMCP reads your connected accounts, and the answer comes back in the chat. The tool names are the real ones Codex calls.

CodexPopMCP connected

Before I write the migration, pull three recent Shopify orders so I can see the real field shapes.

PopMCP, 1 tool call

  1. shopify_get_ordersThe three most recent orders, with line itemsread
Ask Codex about your tools

The reply is drawn as bars on purpose: the figures come from your own accounts, so this page does not make any up.

More to paste into Codex

  • Pull three recent Shopify orders so I can type the order model.
  • Show me a HubSpot contact with every property we use.
  • List the Stripe products and prices this checkout should offer.
PopMCP's consent screen. Tick only the connections Codex should reach, then Authorize. Drawn from PopMCP's own consent screen, not a screenshot. Your layout may differ.

You decide what Codex can reach

That is set in PopMCP, not in Codex. The sign-in ends on a consent screen that lists your connections.

OAuth sign-in, no API keys
Codex signs in to PopMCP with OAuth 2.1. There is nothing to paste, and your Shopify or Stripe credentials stay encrypted inside PopMCP.
You pick the connectors
The consent screen lists your connections. Codex reaches only the ones you tick.
Read-only where you want it
A workspace owner or admin sets each teammate to no access, read, or read and write, per connection.
Every call is on the record
Usage shows each request by user, connector and tool. Removing someone's access applies on the next request.

Where PopMCP works in Codex

Each row is one place Codex runs, and what its vendor says about adding a remote MCP server there.

WhereRemote MCPHow it signs in
Codex CLITerminalSupportedOAuth in the browser, with codex mcp login
Codex IDE extensionYour editorSupportedShares the CLI's config.toml and sign-in
ChatGPT desktop appDesktopSupportedShares the same config. Select Authenticate when asked
ChatGPT on the webchatgpt.comNot availableDoes not read Codex config files. Add PopMCP as a ChatGPT app instead

Before you connect Codex

Four details from OpenAI's Codex docs worth knowing before you start.

If the login fails, name the registration type
codex mcp login takes --oauth-client-registration with cimd or dcr, and defaults to auto. PopMCP supports dynamic client registration, so if auto does not complete, run the login again with --oauth-client-registration dcr.
Project configs need a trusted project
A .codex/config.toml inside a repository is only read for projects you have marked as trusted. The file in your home directory applies everywhere.
ChatGPT on the web is separate
OpenAI says ChatGPT web does not read local Codex configuration files. To use PopMCP there, add it as a ChatGPT app in developer mode.
Writes run when Codex calls them
PopMCP does not hold a write for approval. Keep connections read-only until you need a write, and give a coding agent only the connectors the task needs.

Questions about Codex and PopMCP

Answered from OpenAI's documentation, checked on .

Does Codex support remote MCP servers?

Yes. OpenAI's Codex docs list Streamable HTTP servers and OAuth as supported. You register a server under mcp_servers in ~/.codex/config.toml with its url, then run codex mcp login.

How do I add an MCP server to Codex?

Add a [mcp_servers.popmcp] table with url = "https://app.popmcp.com/mcp" to ~/.codex/config.toml, or run codex mcp add popmcp --url https://app.popmcp.com/mcp. Then run codex mcp login popmcp and approve the consent screen.

Do the Codex CLI and the IDE extension share MCP servers?

Yes. OpenAI says the ChatGPT desktop app, the Codex CLI and the IDE extension share the same configuration, so PopMCP added once is available in all three.

Do I need an API key or a bearer token?

No. PopMCP signs Codex in with OAuth 2.1, and Codex stores the token itself. Leave bearer_token_env_var and http_headers out of the entry.

How do I check PopMCP is connected in Codex?

Run codex mcp list in a terminal, or type /mcp inside Codex to see the active servers. Then ask Codex to run list_connections to see which connectors it was granted.

Which of my tools can Codex reach?

Only the connectors you tick on the PopMCP consent screen. A workspace owner or admin can also set each teammate to no access, read, or read and write per connection.

Sources

3 references, checked 12 October 2026

Every step on this page comes from these sources. Community sources are labelled, and we used them only where the vendor has not documented a step.

  1. OpenAI Codex docs: Model Context ProtocolServers go under mcp_servers in ~/.codex/config.toml with a url, codex mcp add takes --url, codex mcp login runs OAuth, codex mcp list and /mcp show servers, and the desktop app, CLI and IDE extension share the configuration.learn.chatgpt.com
  2. Model Context Protocol: AuthorizationThe MCP OAuth 2.1 flow, with PKCE, protected resource metadata and dynamic client registration, that PopMCP implements.modelcontextprotocol.io
  3. PopMCP docs: CodexThe config.toml entry and the login and list commands PopMCP documents for Codex.docs.popmcp.com

Use the same URL everywhere

Every client adds the same PopMCP URL and signs in with OAuth.

All AI clients

Put 100+ business tools inside Codex

Connect your tools in PopMCP, add the PopMCP URL, and approve the sign-in. There is nothing to install.

Connect your first MCP