Shopify CLI for AI Agents

Framework Integration Gradient
Shopify Logo
CLI Logo
divider

Introduction

CLIs are eating MCPs. The industry is converging on the very same idea. MCPs for all their merit can be token hungry, slow, and unreliable for complex tool chaining. However, coding agents have become incredibly good at working with CLIs, and in fact they are far more comfortable working with CLI tools than MCP.

With Composio's Universal CLI, your coding agents can talk to over 850+ SaaS applications. With Shopify, agents can 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, and more — all without worrying about authentication.

This guide walks you through Composio Universal CLI and explains how you can connect it with coding agents like Claude Code, Codex, OpenCode, etc, for end-to-end Shopify automation.

Also integrate Shopify with

What is Universal CLI and why use it?

The idea behind building the universal CLI is to give agents a single command interface to interact with all your external applications. Here's what you'll get with it:

  • Agent-friendly: Coding agents like Claude Code, Codex, and OpenCode can use CLI tools natively — no MCP setup required.
  • Authentication handled: Connect once via OAuth or API Key, and all CLI commands work with your credentials automatically.
  • Tool discovery: Search, inspect, and execute 20,000+ tools across 850+ apps from one interface.
  • Trigger support: Use triggers to listen for events across your apps, powered by real-time webhooks or polling under the hood.
  • Type generation: Generate typed schemas for autocomplete and type safety in your projects.

Prerequisites

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'll be redirected to sign in page, finish the complete flow and you're all set.

Composio CLI authentication flow

Connecting Shopify to Coding Agents via Universal CLI

Once it is installed, it's essentially done. Claude Code, Codex, OpenCode, OpenClaw, or any other agent will be able to access the CLI. A few steps to give agents access to your apps.

  1. Launch your Coding Agent — Claude Code, Codex, OpenCode, anything you prefer.
  2. Prompt it to "Authenticate with Shopify"
  3. Complete the authentication and authorization flow and your Shopify integration is all set.
  4. Start asking anything you want.

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.

Universal CLI Commands for Shopify

You can also manually execute CLI commands to interact with your Shopify.

Connect your Shopify account

Link your Shopify account and verify the connection:

bash
# Connect your Shopify account (opens OAuth flow)
composio connected-accounts link shopify

# Verify the connection
composio connected-accounts list --toolkits shopify

Discover Shopify tools

Search and inspect available Shopify tools:

bash
# List all available Shopify tools
composio tools list --toolkit shopify

# Search for Shopify tools by action
composio tools search "shopify"

# Inspect a tool's input schema
composio tools info SHOPIFY_ADD_PRODUCT_TO_COLLECTION

Common Shopify Actions

Add product to custom collectionAdds a product to an existing *custom collection*, optionally specifying its `position` if the collection is manually sorted

bash
composio tools execute SHOPIFY_ADD_PRODUCT_TO_COLLECTION \
  --product_id "1234567890" \
  --collection_id "1122334455"

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

bash
composio tools execute SHOPIFY_COUNT_PRODUCT_IMAGES \
  --product_id "632910392"

Create a custom collectionCreates a new custom collection in a shopify store, requiring a unique title for manually curated product groupings (e

bash
composio tools execute SHOPIFY_CREATE_CUSTOM_COLLECTION \
  --title "Summer Collection"

Create CustomerTool to create a new customer in shopify

bash
composio tools execute SHOPIFY_CREATE_CUSTOMER \
  --email "test@example.com"

Generate Type Definitions

Generate typed schemas for Shopify tools to get autocomplete and type safety in your project:

bash
# Auto-detect language
composio generate --toolkits shopify

# TypeScript
composio ts generate --toolkits shopify

# Python
composio py generate --toolkits shopify

Tips & Tricks

  • Always inspect a tool's input schema before executing: composio tools info <TOOL_NAME>
  • Pipe output with jq for better readability: composio tools execute TOOL_NAME -d '{}' | jq
  • Set COMPOSIO_API_KEY as an environment variable for CI/CD pipelines
  • Use composio dev logs tools to inspect execution logs and debug issues

Next Steps

  • Try asking your coding agent to perform various Shopify operations
  • Explore cross-app workflows by connecting more toolkits
  • Set up triggers for real-time automation
  • Use composio generate for typed schemas in your projects

How to build Shopify MCP Agent with another framework

FAQ

What is the Composio Universal CLI?

The Composio Universal CLI is a single command-line interface that lets coding agents and developers interact with 850+ SaaS applications. It handles authentication, tool discovery, action execution, and trigger setup — all from the terminal, without needing to configure MCP servers.

Which coding agents work with the Composio CLI?

Any coding agent that can run shell commands works with the Composio CLI — including Claude Code, Codex, OpenCode, OpenClaw, and others. Once the CLI is installed, agents automatically discover and use the composio commands to interact with Shopify and other connected apps.

How is the CLI different from using an MCP server for Shopify?

MCP servers require configuration and can be token-heavy for complex workflows. The CLI gives agents a direct, lightweight interface — no server setup needed. Agents simply call composio commands like any other shell tool. It's faster to set up, more reliable for multi-step tool chaining, and works natively with how coding agents already operate.

How safe is my Shopify data when using the Composio CLI?

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. You can also bring your own OAuth credentials for full control.

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.