shopify-setup
Original:🇺🇸 English
Translated
Set up Shopify CLI auth and Admin API access for a store. Workflow: install CLI, authenticate, create custom app, store access token, verify. Use when connecting to a Shopify store, setting up API access, or troubleshooting auth issues with Shopify CLI or Admin API tokens.
5installs
Sourcejezweb/claude-skills
Added on
NPX Install
npx skill4agent add jezweb/claude-skills shopify-setupTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →Shopify Setup
Set up working Shopify CLI authentication and Admin API access for a store. Produces a verified API connection ready for product and content management.
Workflow
Step 1: Check Prerequisites
Verify the Shopify CLI is installed:
bash
shopify versionIf not installed:
bash
npm install -g @shopify/cliStep 2: Authenticate with the Store
bash
shopify auth login --store mystore.myshopify.comThis opens a browser for OAuth. The user must be a store owner or staff member with appropriate permissions.
After login, verify:
bash
shopify store infoStep 3: Create a Custom App for API Access
Custom apps provide stable Admin API access tokens (unlike CLI session tokens which expire).
Check if an app already exists: Ask the user if they have a custom app set up. If yes, skip to Step 4.
If no custom app exists, guide the user through creation via browser:
- Navigate to
https://{store}.myshopify.com/admin/settings/apps/development - Click Create an app
- Name it (e.g. "Claude Code Integration")
- Click Configure Admin API scopes
- Enable these scopes (see for details):
references/api-scopes.md- ,
read_productswrite_products - ,
read_contentwrite_content read_product_listings- ,
read_inventorywrite_inventory - ,
read_fileswrite_files
- Click Save then Install app
- Copy the Admin API access token (shown only once)
Use browser automation (Chrome MCP or playwright-cli) if the user prefers assistance navigating the admin.
Step 4: Store the Access Token
Store the token securely. Never commit it to git.
For project use — create :
.dev.varsSHOPIFY_STORE=mystore.myshopify.com
SHOPIFY_ACCESS_TOKEN=shpat_xxxxxxxxxxxxxxxxxxxxxEnsure is in .
.dev.vars.gitignoreFor cross-project use — store in Vault:
Use mcp__vault__secret_set with:
name: "shopify-{store-name}-token"
value: the access token
tags: ["shopify", "api"]Step 5: Verify API Access
Test the connection with a simple GraphQL query:
bash
curl -s https://{store}.myshopify.com/admin/api/2025-01/graphql.json \
-H "Content-Type: application/json" \
-H "X-Shopify-Access-Token: {token}" \
-d '{"query": "{ shop { name primaryDomain { url } } }"}' | jq .Expected response includes the shop name and domain. If you get a 401, the token is invalid or expired — recreate the app.
Step 6: Save Store Config
Create a in the project root for other skills to reference:
shopify.config.jsonjson
{
"store": "mystore.myshopify.com",
"apiVersion": "2025-01",
"tokenSource": ".dev.vars"
}Critical Patterns
API Version
Always specify an explicit API version (e.g. ). Using in production will break without warning. Shopify retires API versions quarterly.
2025-01unstableToken Types
| Token | Format | Use |
|---|---|---|
| Admin API access token | | Custom apps — stable, long-lived |
| CLI session token | Short-lived | Shopify CLI commands only |
| Storefront API token | | Public storefront queries |
This skill sets up Admin API access tokens — the right choice for product and content management.
Rate Limits
Shopify uses a leaky bucket rate limiter:
- REST: 40 requests/second burst, 2/second sustained
- GraphQL: 1,000 cost points per second, max 2,000 points per query
For bulk operations, use the mutation instead of looping.
bulkOperationRunQueryReference Files
- — Admin API scopes needed for product and content management
references/api-scopes.md