How to integrate Shopify MCP with OpenCode

Trusted by teams at
AWS
Glean
Zoom
Airtable

30 min · no commitment · see it on your stack

Shopify logo
OpenCode logo
divider

How to integrate Shopify MCP with OpenCode

This guide explains how to connect Shopify MCP to OpenCode using Composio Connect, which simplifies OAuth, API changes, and reliability concerns.

There are two ways to set this up:

Also integrate Shopify with

Why use Composio?

Composio provides a single MCP server or CLI tool that exposes a set of meta-tools, allowing you to:

  • Connect to 1,000+ apps with on-demand tool loading, so you do not fill your LLM context window with unnecessary tool definitions.
  • Use programmatic tool calling through a remote Bash tool, letting LLMs write their own code to handle complex tool chaining. This reduces back-and-forth for frequent tool calls.
  • Handle large tool responses outside the LLM context to keep conversations lean.

Connect Shopify with OpenCode

Option 1: Using Composio CLI

1. Install Composio CLI

Install the Composio CLI, authenticate, and initialize your project:

bash
# Install the Composio CLI
curl -fsSL https://composio.dev/install | bash

# Authenticate with Composio
composio login

During login, you will be redirected to the sign-in page. Finish the flow and you are all set.

Composio CLI authorization screen

2. Authorize Shopify

Once the CLI is installed, it is essentially done. Give OpenCode access to your apps with these steps:

  1. Launch OpenCode.
  2. Prompt it to "Authenticate with Shopify Composio".
  3. Complete the authentication and authorization flow, and your Shopify integration is all set.
  4. Start asking anything you want.

Option 2: Using Composio MCP

You can also connect Shopify to OpenCode by adding Composio as an MCP server through the OpenCode CLI.

1. Add the Composio MCP server

bash
opencode mcp add

This launches an interactive prompt.

2. Fill in the fields

FieldValue
Namecomposio
Typeremote
URLhttps://connect.composio.dev/mcp
Require OAuthYes
Have client IDNo
OpenCode MCP server interactive prompt for Composio

Alternatively, you can skip the interactive prompt and paste the configuration directly into your OpenCode config file.

Open your global OpenCode config:

bash
open ~/.config/opencode/opencode.json

Add this under the mcp key and save the file.

bash
{
  "mcp": {
    "composio": {
      "type": "remote",
      "url": "https://connect.composio.dev/mcp",
      "enabled": true
    }
  }
}

3. Authenticate

Authenticate the Composio MCP server you just added:

bash
opencode mcp auth composio

This opens a browser session. Authorize Composio and you are done.

Composio browser authorization for OpenCode MCP

4. Verify installation

bash
opencode mcp list

5. Connect Shopify with OpenCode

Now, in the chat, ask the agent to connect to Shopify or give it any Shopify-related task.

For example, ask it to:

  • "Create a new product called 'Summer T-Shirt'"
  • "Add product ID 1234 to 'Holiday Specials' collection"
  • "Delete the image with ID 5678 from product ID 4321"

It will prompt you to authenticate and authorize access to Shopify.

That is it. Composio tools are now available in OpenCode, and your Shopify account is ready to use.

Supported Tools & Triggers

Tools
Add product to custom collectionAdds a product to an existing *custom collection*, optionally specifying its `position` if the collection is manually sorted.
Count product imagesRetrieves the total count of images for a shopify product, useful for inventory management or display logic; the provided `product id` must exist in the store.
Create a custom collectionCreates a new custom collection in a shopify store, requiring a unique title for manually curated product groupings (e.
Create CustomerTool to create a new customer in shopify.
Create an orderCreates a new order in shopify, typically requiring line items; if `customer id` is provided, it must correspond to an existing customer.
Create a productCreates a new product in a shopify store; a product title is generally required.
Create Product ImageTool to create a new product image for a given product.
Delete custom collectionPermanently deletes a custom collection from a shopify store using its `collection id`; this action is irreversible and requires a valid, existing `collection id`.
Delete a productDeletes a specific, existing product from a shopify store using its unique product id; this action is irreversible.
Delete product imageDeletes a specific image from a product in shopify, requiring the `product id` of an existing product and the `image id` of an image currently associated with that product.
Get All CustomersRetrieves customer records from a shopify store, with options for filtering, selecting specific fields, and paginating through the results.
Get collection by IDRetrieves a specific shopify collection by its `collection id`, optionally filtering returned data to specified `fields`.
Get collectsRetrieves a list of collects from a shopify store, where a collect links a product to a custom collection.
Get collects countRetrieves the total count of collects (product-to-collection associations) in a shopify store.
Get custom collectionsRetrieves a list of custom collections from a shopify store, optionally filtered by ids, product id, or handle.
Get custom collections countRetrieves the total number of custom collections in a shopify store.
Get CustomerRetrieves detailed information for a specific customer from a shopify store, provided their valid and existing `customer id`.
Get customer ordersRetrieves all orders for a specific, existing customer in shopify using their unique customer id.
Get order listRetrieves a list of orders from shopify using default api settings and filters.
Get order by idRetrieves a specific shopify order by its unique id, which must correspond to an existing order.
Get productRetrieves details for an existing shopify product using its unique product id.
Get product imageRetrieves detailed information for a specific product image, identified by its id and its associated product id, from a shopify store.
Get Product ImagesRetrieves all images for a shopify product, specified by its `product id` which must correspond to an existing product.
Get productsRetrieves a list of products from a shopify store.
Get products countRetrieves the total, unfiltered count of all products in a shopify store.
Get products in collectionRetrieves all products within a specified shopify collection, requiring a valid `collection id`.
Get Shop DetailsRetrieves comprehensive administrative information about the authenticated shopify store, as defined by the shopify api.
Update OrderUpdates the phone number for an existing shopify order, identified by its id; pass `phone=none` to remove the current phone number.

Way Forward

Now that Shopify is connected, extend your setup by connecting the other apps you already use every day, so your agent can run true cross-app workflows end to end.

  • Connect Calendar to turn threads into scheduled meetings automatically.
  • Connect Slack or Teams to post summaries, approvals, and alerts where your team works.
  • Connect Notion, Linear, Jira, or Asana to convert requests into tickets, tasks, and docs.
  • Connect Drive, Dropbox, or OneDrive to fetch, file, and share attachments without manual steps.

Start with one workflow you do repeatedly, then keep adding apps as you find new handoffs. With everything behind a single MCP endpoint, your agent can coordinate multiple tools safely and reliably in one conversation.

How to build Shopify MCP Agent with another framework

FAQ

What are the differences in Tool Router MCP and Shopify MCP?

With a standalone Shopify MCP server, the agents and LLMs can only access a fixed set of Shopify tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from Shopify and many other apps based on the task at hand, all through a single MCP endpoint.

Can I use Tool Router MCP with OpenCode?

Yes, you can. OpenCode fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right Shopify tools.

Can I manage the permissions and scopes for Shopify while using Tool Router?

Yes, absolutely. You can configure which Shopify scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

How safe is my data with Composio Tool Router?

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your Shopify data and credentials are handled as safely as possible.

Used by agents from

Context
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai
Context
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai
Context
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai

Never worry about agent reliability

We handle tool reliability, observability, and security so you never have to second-guess an agent action.