By Ira Bodnar, Ryze AI · Updated
Quick answer
To connect Codex to Shopify, connect your store in Ryze AI with your .myshopify.com domain, then run codex mcp add ryze --url https://connector.get-ryze.ai/mcp, run codex mcp login ryze and approve the sign-in. The same configuration serves the Codex CLI, the ChatGPT desktop app and the IDE extension.
- In Ryze AI open Integrations, click Connect on the Shopify card and enter your .myshopify.com domain
- Approve the access prompt in your Shopify admin
- Run codex mcp add ryze --url https://connector.get-ryze.ai/mcp
- Run codex mcp login ryze, click Allow connection, then run codex mcp list
Before you start
- A Codex plan. OpenAI lists Codex in ChatGPT Free, Go, Plus, Pro, Business, Edu and Enterprise. Free and Go get Codex in the desktop app only, subject to rollout, so use the desktop steps there. Plus and higher add the CLI and the IDE extension. Codex also runs with an OpenAI API key in the CLI, SDK or IDE extension, billed at API pricing.
- Access to the store in Shopify. You approve the Ryze AI app in your Shopify admin, so use a login that is allowed to install apps on that store. You need the .myshopify.com domain, not your custom domain.
- A Ryze AI workspace on a plan or free trial. Paid Ads is $89 per month with a 7-day free trial. SEO Starter is $129 per month with a 3-day free trial and covers publishing Content Plan articles to the Shopify blog. Agency is $279 per month and Shopify CRO is $1,499 per month. Adding the connector is free; the Shopify tools need an active plan or trial.
How to connect Codex to Shopify with the CLI
Two steps happen in Ryze AI and Shopify, four in Codex. The connector URL is the same for every user.
Connect your store in Ryze AI
Create a Ryze AI account or sign in, open Integrations and click Connect on the Shopify card. On the Shopify app tab type your .myshopify.com domain and click Continue.
Approve the access prompt in Shopify
Shopify shows an access prompt in your admin. Approve it and you return to Ryze AI with the store connected. No API keys are involved.
Add the Ryze AI server to Codex
Run codex mcp add ryze --url https://connector.get-ryze.ai/mcp in a terminal. This writes a [mcp_servers.ryze] entry to your Codex configuration.
Sign in from Codex
Run codex mcp login ryze, sign in on the Ryze AI page and click Allow connection. On a machine without a local browser, add --no-browser, open the printed URL somewhere else and paste the full redirect URL back into the terminal.
Check the server is listed
Run codex mcp list, or type /mcp inside the Codex TUI, and look for ryze. Start a new Codex session so the tool list loads.
Ask your first question
Ask: Read the five most recently updated products in my Shopify store and show title, status and SEO title for each.
codex mcp add ryze --url https://connector.get-ryze.ai/mcp
codex mcp login ryze
codex mcp listThe Ryze AI Shopify guide covers the store side of the connection and the Ryze AI help center covers API keys.
ChatGPT desktop app and IDE extension
The ChatGPT desktop app, the Codex CLI and the IDE extension share one MCP configuration, so a server added in one place shows up in the others. If you prefer a settings screen to the command line, use the steps below.
ChatGPT desktop app (Codex)
- Open Settings, then select MCP servers.
- Select Add server, enter the name ryze, choose Streamable HTTP and enter https://connector.get-ryze.ai/mcp.
- Save, then select Restart.
- Select Authenticate next to ryze and complete the Ryze AI sign-in. Type /mcp in the composer to view connected servers.
Codex IDE extension
- Open the gear menu, then select MCP servers.
- Select Add server, enter the name ryze, choose Streamable HTTP and enter https://connector.get-ryze.ai/mcp.
- Save, then select Restart extension.
- Select Authenticate and complete the Ryze AI sign-in.
Plugins are not available in the IDE extension, but MCP servers configured in config.toml are, so the Ryze AI server works there.
config.toml and approvals
The command above edits a TOML file. You can write the entry yourself in ~/.codex/config.toml, or in a project-level .codex/config.toml inside a trusted project:
[mcp_servers.ryze]
url = "https://connector.get-ryze.ai/mcp"
startup_timeout_sec = 20
tool_timeout_sec = 120
default_tools_approval_mode = "writes"OAuth is the default for HTTP servers, so run codex mcp login ryze once after saving. The timeouts above are optional: Codex defaults to 10 seconds for startup and 60 seconds per tool call, and both can be raised per server. The writes approval mode prompts for tools that are not marked read-only.
To use a Ryze AI API key instead of the browser sign-in, add bearer_token_env_var = "RYZE_API_KEY" to the same table and set that environment variable to your rk_live_ key before starting Codex.
Settings that matter for a store
| Setting | What it does |
|---|---|
| default_tools_approval_mode | auto, prompt, writes or approve. writes prompts for tools that are not marked read-only. |
| tools.<tool>.approval_mode | Overrides the default for one tool, for example the Shopify write and delete tools. |
| enabled_tools, disabled_tools | Allow list and deny list of tool names for the server. |
| tools.<tool>.output_token_limit | Sets an output budget for one tool, useful when a read returns a long product description or page body. |
| startup_timeout_sec, tool_timeout_sec | Defaults are 10 and 60 seconds. Raise them if the first connection or a long Shopify query times out. |
Source: OpenAI's Codex MCP documentation and Codex pricing. Checked November 13, 2026.
ChatGPT, Cursor and Windsurf
The same URL works in other MCP clients. The store is connected once in Ryze AI, so nothing changes on the Shopify side.
Claude and ChatGPT
The same URL works as a custom connector in Claude, and as an app under Settings, Apps in ChatGPT. Connect the store in Ryze AI first, add the connector, pick the workspaces and start a new chat. If you added the connector before connecting Shopify, remove it and add it again so the tool list refreshes.
Cursor
Cursor has its own walkthrough for the same store, linked in the related guides below.
Shopify permissions and scopes
The Shopify side of the connection is an app you approve in your store admin. Three things decide what Codex can reach.
- Default Ryze AI app
- Enter the .myshopify.com domain and approve the access prompt. Tokens refresh automatically and no keys are copied by hand.
- Custom app
- On the Custom app tab you give Ryze AI the store domain, Client ID and Client secret of an app you create in the Shopify Dev Dashboard. Leave Embed app unchecked, enter the App URL and redirect URL shown in the Ryze AI help center, choose the Admin API scopes you need, then Release and Install app.
- Which store
- A store can be live in only one Ryze AI workspace at a time. You can connect several stores to one workspace; the agent uses the primary store unless you name another.
What is covered
The table lists what the default Ryze AI app and a custom app can and cannot do, as documented by Ryze AI. The access prompt in Shopify is the source of truth for the exact scope list.
| Area | What you get |
|---|---|
| Products, collections, pages and blog content | Read and edit, including SEO fields. Works on the default app. |
| Metaobjects and metafields | Read through the read tool, edit through the write tool, within the scopes the connection holds. |
| Orders | Readable on the default app, limited to the last 60 days. Older orders need a custom app with the read_all_orders scope. |
| Theme files and URL redirects | Not available on the default app. Connect your own custom app. |
| Customer records | Not requested by the default app. Needs a custom app with that scope. |
| Bulk exports | bulkOperationRunQuery results cannot be downloaded through the tools; the agent pages through the Admin API instead. |
Sources: Ryze AI Shopify guide and Ryze AI custom app guide.
Removing access
To remove access, disconnect the store from the Shopify card in Ryze AI, or uninstall the app in your Shopify admin. In Codex, delete the [mcp_servers.ryze] table from config.toml.
What Codex can do in Shopify
The Ryze AI connector exposes five Shopify tools. Each runs as the store you connected. Codex lists them with the shopify__ prefix.
| Tool | Type | What it does |
|---|---|---|
| shopify__read | Read | Runs a read-only Shopify Admin GraphQL query against the connected store. The manifest covers products, variants, collections, orders, metafields, metaobjects, themes, pages, blogs and SEO fields; what comes back depends on the scopes of the connection. |
| shopify__search_content | Read | Searches one text field that the read tool can return, such as an article body, and returns matching lines with line numbers and surrounding context. |
| shopify__write | Write | Runs an Admin GraphQL mutation that creates or updates resources, such as productUpdate or metafieldsSet. Delete, remove, cancel and deactivate mutations are rejected here. |
| shopify__edit_content | Write | Makes find-and-replace edits inside one text field on the server in one call, with optional JSON or Liquid validation before anything is written. |
| shopify__delete | Delete | Runs a destructive mutation that deletes, removes, cancels, deactivates, revokes or discards a resource, such as productDelete or tagsRemove. |
Codex asks you before it runs a tool only if its approval mode says so. Set default_tools_approval_mode = "writes" under [mcp_servers.ryze], or override single tools with tools.shopify__delete.approval_mode = "approve", so you confirm each write or delete. In the Ryze AI chat itself the Tool approvals picker starts on Skip all approvals; that setting does not apply inside Codex.
First 3 prompts to run
1. Audit SEO fields on products
Read the 20 most recently updated products in my Shopify store. List each product's title, handle, SEO title and SEO description, and mark the ones where the SEO title or description is empty.
Tools used: shopify__read
What comes back: A table of the products with their SEO fields and a separate list of products that have an empty SEO title or description.
2. Edit one passage in a long description
Search the description of the product with handle my-product for the phrase free shipping. Show me the matching lines, then replace that phrase with the shipping wording I paste below, and validate before writing.
Tools used: shopify__read, shopify__search_content, shopify__edit_content
What comes back: The matching lines with line numbers and context, then a confirmation of the single replacement. The rest of the description is left as it was.
3. Update a collection's SEO fields
Read the collection with handle summer and show its SEO title and description. Propose new ones under 60 and 155 characters, and apply them once I say yes.
Tools used: shopify__read, shopify__write
What comes back: The current values, two proposed values and, after your confirmation, the result of the collection update mutation.
Each answer comes from your own store, so this page describes what comes back instead of showing sample data. A prompt that edits content is a write: set an approval mode in Codex first if you want a confirmation before each change.
Ryze AI vs Shopify's own MCP options
Shopify publishes developer tooling for AI coding agents, and Ryze AI offers a hosted connector to your store data. They answer different questions.
| Option | Setup | What it covers | Auth | Works in Codex |
|---|---|---|---|---|
| Ryze AI connector | Connect the store in Ryze AI, then codex mcp add ryze --url https://connector.get-ryze.ai/mcp | Live store data: 5 tools to read and edit products, collections, pages, blogs and SEO fields, search and edit inside long text, and delete when you ask | OAuth with Ryze AI; Shopify approval in your admin | Yes, over a remote Streamable HTTP server |
| Shopify Dev MCP server | Add [mcp_servers.shopify-dev-mcp] with command npx and args -y @shopify/dev-mcp@latest to config.toml, then restart Codex | Shopify developer docs, API schemas and code validation for GraphQL, Liquid and extensions. It does not read your store data | None; runs locally | Yes, documented by Shopify for the Codex CLI |
| Storefront MCP (https://{shop}/api/mcp) | Not applicable | Shopify lists its catalog and cart tools as removed and points to the Universal Commerce Protocol, with an endpoint at https://{shop}/api/ucp/mcp | Not stated in the page opened | Not covered here; it is a shopper-facing endpoint, not store administration |
If you are writing a Shopify app or theme in Codex, the Dev MCP server gives the agent current API documentation and validates GraphQL and Liquid. It cannot see your products. If you want Codex to read or change the content of a live store, use the Ryze AI connector. The two can sit in the same config.toml as separate servers.
Sources: Shopify Dev MCP server, Storefront MCP, Ryze AI Shopify integration. Checked November 13, 2026.
Shopify API limits
Shopify rate-limits the GraphQL Admin API by calculated query cost: each field has a point cost, and responses report the maximum, the currently available and the restore rate of your bucket. The bucket size depends on the store plan (Standard, Advanced, Plus, Enterprise), and Shopify's docs list the numbers per plan. Across Shopify APIs, input arrays are capped at 250 items and pagination at 25,000 objects per query. When a request is over the limit Shopify returns a THROTTLED error.
Source: Shopify API limits and the GraphQL Admin API reference. Checked November 13, 2026.
Shopify and Codex errors and fixes
- codex mcp login opens no browser
- Run codex mcp login ryze --no-browser, open the printed URL on any machine, sign in and click Allow connection, then paste the full redirect URL back into the terminal.
- The server is listed but needs login
- Run codex mcp login ryze and finish the sign-in on the Ryze AI page.
- Startup or a Shopify call times out
- Codex waits 10 seconds for startup and 60 seconds per tool call by default. Raise startup_timeout_sec or tool_timeout_sec under [mcp_servers.ryze].
- Shopify tools do not appear
- Make sure the store is connected in Ryze AI, then start a new Codex session. If the server was added before the store was connected, remove it and add it again so the tool list refreshes.
- An answer is missing theme files, redirects or customers
- The default Ryze AI app does not cover them. Connect your own custom app on the Custom app tab with the scopes you need.
- Older orders are missing
- Without the read_all_orders scope on a custom app, only the last 60 days of orders are visible.
- The agent reports a missing scope
- Missing Admin API scopes are not worked around. Add the scope to your custom app, release and reinstall it.
- Shopify returns THROTTLED
- The query cost exceeded your bucket. Ask for fewer fields or a smaller page and retry after a short pause.
- The store is already connected elsewhere
- A store can be live in only one Ryze AI workspace at a time. Disconnect it from the other workspace first.
- A tool replies that a subscription is required
- The Shopify tools need an active Ryze AI plan or free trial. Start the trial, then retry.
Frequently asked questions
How do I connect Codex to Shopify?
Connect your store in Ryze AI by entering the .myshopify.com domain and approving the prompt in Shopify admin. Then run codex mcp add ryze --url https://connector.get-ryze.ai/mcp, run codex mcp login ryze and click Allow connection. Check codex mcp list and start a new session.
Is there a Shopify MCP server for Codex?
Shopify publishes the Dev MCP server (@shopify/dev-mcp), which Shopify documents for the Codex CLI. It serves developer docs, API schemas and code validation and runs locally without authentication. It does not read your store. For store data, add the Ryze AI connector.
Which Shopify MCP option should I pick in Codex?
Ryze AI is the best way to let Codex read and edit live Shopify store content, with the caveat that it covers content and SEO fields rather than theme files on the default app. If you are building a Shopify app or theme, add Shopify's Dev MCP server for docs and validation.
Which Codex plan do I need?
Codex is included in ChatGPT Free, Go, Plus, Pro, Business, Edu and Enterprise. Free and Go get it in the desktop app only, subject to rollout. Plus and higher add the CLI and IDE extension. An OpenAI API key also works in the CLI, SDK or IDE extension at API pricing.
Does this work in the ChatGPT desktop app and the IDE extension?
Yes. The desktop app, CLI and IDE extension share one MCP configuration. In the desktop app and the IDE extension use Settings or the gear menu, MCP servers, Add server, Streamable HTTP, then Authenticate. This guide does not cover Codex cloud tasks.
What can Codex do in my Shopify store through Ryze AI?
It has five tools. It can read store data with an Admin GraphQL query, search inside one text field, create and update resources, make find-and-replace edits in a text field, and run delete mutations when you ask.
Can Codex delete products or pages?
Yes, through shopify__delete, which runs mutations such as productDelete. The write tool rejects delete mutations, so deletes are separate. Set an approval mode for that tool in config.toml if you want to confirm each one.
Will Codex ask before changing my store?
Only if you configure it. Use default_tools_approval_mode = "writes" under [mcp_servers.ryze], or a per-tool approval_mode. Without one of these settings, the approval behavior is whatever your Codex configuration defaults to.
Can Codex edit theme files or customers?
Not on the default Ryze AI app. Theme file edits, URL redirects and customer records need your own custom app with the matching scopes, added on the Custom app tab in Ryze AI.
Can I connect more than one Shopify store?
Yes. Click View on the Shopify card in Ryze AI and choose Add one more account. The starred store is the primary one and the agent uses it unless you name another. A store can be live in only one workspace at a time.
How do I use an API key instead of the browser sign-in?
Add bearer_token_env_var = "RYZE_API_KEY" under [mcp_servers.ryze] in config.toml and set that environment variable to your Ryze AI rk_live_ key before starting Codex.
How much does it cost?
Adding the connector is free, but the Shopify tools need an active Ryze AI plan or trial. Paid Ads is $89 per month with a 7-day free trial, SEO Starter is $129 per month with a 3-day free trial, and Agency is $279 per month. Annual billing takes 30% off the first year.