shopify-operations-mcp MCP Server
io.github.jpka/shopify-operations-mcp
What is the shopify-operations-mcp MCP server?
Safe-write Shopify operations: plan-before-execute writes with out-of-band approval and audit.
How to install shopify-operations-mcp
Copy-paste configuration for popular MCP clients.
SHOPIFY_STORE_DOMAINrequiredThe myshopify.com store domain, e.g. my-store.myshopify.com. Overrides shopify.storeDomain from the config file.
SHOPIFY_ADMIN_TOKENrequiredsecretShopify Admin API access token. Required and only ever read from the environment — never from the config file.
SHOPIFY_CONFIGPath to a config.json with shopify/plans/approvalServer/protectedTags settings. Defaults to ./config.json in the working directory.
SHOPIFY_PLAN_TTL_MSHow long a plan token stays valid before it must be executed or expires, in milliseconds. Default 60000.
SHOPIFY_APPROVAL_SERVER_PORTPort the localhost human-approval HTTP server binds to (127.0.0.1 only). Default 4319.
SHOPIFY_PROTECTED_TAGSComma-separated tags that plans may never modify; any plan touching an item carrying one is refused. Default do-not-touch.
SHOPIFY_CALLER_IDIdentity recorded as the caller on every audit log row. Default unknown.
SHOPIFY_AUDIT_PATHFile path for the tamper-evident JSONL audit log. Default shopify-operations-audit.jsonl in the working directory.
{
"mcpServers": {
"shopify-operations-mcp": {
"command": "npx",
"args": [
"-y",
"shopify-operations-mcp"
],
"env": {
"SHOPIFY_STORE_DOMAIN": "<YOUR_SHOPIFY_STORE_DOMAIN>",
"SHOPIFY_ADMIN_TOKEN": "<YOUR_SHOPIFY_ADMIN_TOKEN>",
"SHOPIFY_CONFIG": "<YOUR_SHOPIFY_CONFIG>",
"SHOPIFY_PLAN_TTL_MS": "<YOUR_SHOPIFY_PLAN_TTL_MS>",
"SHOPIFY_APPROVAL_SERVER_PORT": "<YOUR_SHOPIFY_APPROVAL_SERVER_PORT>",
"SHOPIFY_PROTECTED_TAGS": "<YOUR_SHOPIFY_PROTECTED_TAGS>",
"SHOPIFY_CALLER_ID": "<YOUR_SHOPIFY_CALLER_ID>",
"SHOPIFY_AUDIT_PATH": "<YOUR_SHOPIFY_AUDIT_PATH>"
}
}
}
}{
"mcpServers": {
"shopify-operations-mcp": {
"command": "npx",
"args": [
"-y",
"shopify-operations-mcp"
],
"env": {
"SHOPIFY_STORE_DOMAIN": "<YOUR_SHOPIFY_STORE_DOMAIN>",
"SHOPIFY_ADMIN_TOKEN": "<YOUR_SHOPIFY_ADMIN_TOKEN>",
"SHOPIFY_CONFIG": "<YOUR_SHOPIFY_CONFIG>",
"SHOPIFY_PLAN_TTL_MS": "<YOUR_SHOPIFY_PLAN_TTL_MS>",
"SHOPIFY_APPROVAL_SERVER_PORT": "<YOUR_SHOPIFY_APPROVAL_SERVER_PORT>",
"SHOPIFY_PROTECTED_TAGS": "<YOUR_SHOPIFY_PROTECTED_TAGS>",
"SHOPIFY_CALLER_ID": "<YOUR_SHOPIFY_CALLER_ID>",
"SHOPIFY_AUDIT_PATH": "<YOUR_SHOPIFY_AUDIT_PATH>"
}
}
}
}{
"mcpServers": {
"shopify-operations-mcp": {
"command": "npx",
"args": [
"-y",
"shopify-operations-mcp"
],
"env": {
"SHOPIFY_STORE_DOMAIN": "<YOUR_SHOPIFY_STORE_DOMAIN>",
"SHOPIFY_ADMIN_TOKEN": "<YOUR_SHOPIFY_ADMIN_TOKEN>",
"SHOPIFY_CONFIG": "<YOUR_SHOPIFY_CONFIG>",
"SHOPIFY_PLAN_TTL_MS": "<YOUR_SHOPIFY_PLAN_TTL_MS>",
"SHOPIFY_APPROVAL_SERVER_PORT": "<YOUR_SHOPIFY_APPROVAL_SERVER_PORT>",
"SHOPIFY_PROTECTED_TAGS": "<YOUR_SHOPIFY_PROTECTED_TAGS>",
"SHOPIFY_CALLER_ID": "<YOUR_SHOPIFY_CALLER_ID>",
"SHOPIFY_AUDIT_PATH": "<YOUR_SHOPIFY_AUDIT_PATH>"
}
}
}
}{
"servers": {
"shopify-operations-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"shopify-operations-mcp"
],
"env": {
"SHOPIFY_STORE_DOMAIN": "<YOUR_SHOPIFY_STORE_DOMAIN>",
"SHOPIFY_ADMIN_TOKEN": "<YOUR_SHOPIFY_ADMIN_TOKEN>",
"SHOPIFY_CONFIG": "<YOUR_SHOPIFY_CONFIG>",
"SHOPIFY_PLAN_TTL_MS": "<YOUR_SHOPIFY_PLAN_TTL_MS>",
"SHOPIFY_APPROVAL_SERVER_PORT": "<YOUR_SHOPIFY_APPROVAL_SERVER_PORT>",
"SHOPIFY_PROTECTED_TAGS": "<YOUR_SHOPIFY_PROTECTED_TAGS>",
"SHOPIFY_CALLER_ID": "<YOUR_SHOPIFY_CALLER_ID>",
"SHOPIFY_AUDIT_PATH": "<YOUR_SHOPIFY_AUDIT_PATH>"
}
}
}
}claude mcp add shopify-operations-mcp --env SHOPIFY_STORE_DOMAIN=<YOUR_SHOPIFY_STORE_DOMAIN> --env SHOPIFY_ADMIN_TOKEN=<YOUR_SHOPIFY_ADMIN_TOKEN> --env SHOPIFY_CONFIG=<YOUR_SHOPIFY_CONFIG> --env SHOPIFY_PLAN_TTL_MS=<YOUR_SHOPIFY_PLAN_TTL_MS> --env SHOPIFY_APPROVAL_SERVER_PORT=<YOUR_SHOPIFY_APPROVAL_SERVER_PORT> --env SHOPIFY_PROTECTED_TAGS=<YOUR_SHOPIFY_PROTECTED_TAGS> --env SHOPIFY_CALLER_ID=<YOUR_SHOPIFY_CALLER_ID> --env SHOPIFY_AUDIT_PATH=<YOUR_SHOPIFY_AUDIT_PATH> -- npx -y shopify-operations-mcpRelated MCP servers
sw-postgres-mcp
Safe-write Postgres MCP server with preview-before-execute writes and rollback safety.