{"_id":"shopify-mcp","_rev":"9-1253db086875835068de9f0fb933d2c7","name":"shopify-mcp","dist-tags":{"latest":"1.0.8"},"versions":{"1.0.0":{"name":"shopify-mcp","version":"1.0.0","keywords":["shopify","mcp","model-context-protocol","graphql","ai","llm","claude"],"author":{"url":"https://your-website.com","name":"Your Name","email":"your.email@example.com"},"license":"MIT","_id":"shopify-mcp@1.0.0","maintainers":[{"name":"geli2001","email":"geli2001@berkeley.edu"}],"homepage":"https://github.com/yourusername/shopify-mcp-server#readme","bugs":{"url":"https://github.com/yourusername/shopify-mcp-server/issues"},"bin":{"shopify-mcp":"dist/index.js"},"dist":{"shasum":"fe5b8f2712bbc68d7ecf92dff94276877d7c3c74","tarball":"https://registry.npmjs.org/shopify-mcp/-/shopify-mcp-1.0.0.tgz","fileCount":9,"integrity":"sha512-7Z+O6Lz0mVZaEDjnilerT/ewDgrk3jPfXodX3bygiZRCBPrGBf2H2MydkcuQEHJN78s1CgoH9zktfyVp3urAug==","signatures":[{"sig":"MEUCIQDHAr9jSHwdpiZ1WwBoP3yw9j6BmKNvCWlA1Aqx3sn+fAIgQl2sR1fcAIs18NqgPnJpSdgAJllwhxEXG2yW9cMgy3o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28926},"main":"dist/index.js","type":"module","engines":{"node":">=16.0.0"},"scripts":{"dev":"ts-node src/index.ts","lint":"eslint 'src/**/*.ts'","test":"jest","build":"tsc","clean":"rimraf dist","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"geli2001","email":"geli2001@berkeley.edu"},"repository":{"url":"git+https://github.com/yourusername/shopify-mcp-server.git","type":"git"},"_npmVersion":"10.9.2","description":"MCP Server for Shopify API, enabling interaction with store data through GraphQL API","directories":{},"_nodeVersion":"23.7.0","dependencies":{"zod":"^3.21.4","dotenv":"^16.0.3","graphql":"^16.6.0","minimist":"^1.2.8","graphql-request":"^5.1.0","@modelcontextprotocol/sdk":"^1.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","rimraf":"^5.0.5","ts-jest":"^29.1.0","ts-node":"^10.9.1","typescript":"^5.0.4","@types/jest":"^29.5.0","@types/node":"^18.15.11","@types/minimist":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/shopify-mcp_1.0.0_1743475174601_0.1447214440099187","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"shopify-mcp","version":"1.0.1","keywords":["shopify","mcp","model-context-protocol","graphql","ai","llm","claude"],"author":{"url":"https://your-website.com","name":"Your Name","email":"your.email@example.com"},"license":"MIT","_id":"shopify-mcp@1.0.1","maintainers":[{"name":"geli2001","email":"geli2001@berkeley.edu"}],"homepage":"https://github.com/yourusername/shopify-mcp-server#readme","bugs":{"url":"https://github.com/yourusername/shopify-mcp-server/issues"},"bin":{"shopify-mcp":"dist/index.js"},"dist":{"shasum":"b0d781f8dc5969981cd8f4d70fa7ad53ecb1f91f","tarball":"https://registry.npmjs.org/shopify-mcp/-/shopify-mcp-1.0.1.tgz","fileCount":8,"integrity":"sha512-375ZtK3d8fXTWT+45YHEqslesHGZH5+bpNQ2mhiEjbORIH9jLmQsKOeV5XjjFirX0khv5OJWJLMLDLMfK14Wqw==","signatures":[{"sig":"MEUCIQDiokqCNdR8NNZElZnqLFIoNGc3CjK7k4QH9IECE/CTLAIgPJhZT4bLDMpk2nPgUnE9kOpCyx2nShQLAWx3mbpgobs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":27071},"main":"dist/index.js","type":"module","engines":{"node":">=18.0.0"},"scripts":{"dev":"ts-node --esm src/index.ts","lint":"eslint 'src/**/*.ts'","test":"jest","build":"rimraf dist && tsc","clean":"rimraf dist","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"geli2001","email":"geli2001@berkeley.edu"},"repository":{"url":"git+https://github.com/yourusername/shopify-mcp-server.git","type":"git"},"_npmVersion":"10.9.2","description":"MCP Server for Shopify API, enabling interaction with store data through GraphQL API","directories":{},"_nodeVersion":"23.7.0","dependencies":{"zod":"^3.21.4","dotenv":"^16.0.3","graphql":"^16.6.0","minimist":"^1.2.8","graphql-request":"^5.1.0","@modelcontextprotocol/sdk":"^1.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","rimraf":"^5.0.10","ts-jest":"^29.1.0","ts-node":"^10.9.1","typescript":"^5.0.4","@types/jest":"^29.5.0","@types/node":"^18.15.11","@types/minimist":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/shopify-mcp_1.0.1_1743475374742_0.4418203366259499","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"shopify-mcp","version":"1.0.2","keywords":["shopify","mcp","model-context-protocol","graphql","ai","llm","claude"],"author":{"url":"https://your-website.com","name":"Your Name","email":"your.email@example.com"},"license":"MIT","_id":"shopify-mcp@1.0.2","maintainers":[{"name":"geli2001","email":"geli2001@berkeley.edu"}],"homepage":"https://github.com/GeLi2001/shopify-mcp#readme","bugs":{"url":"https://github.com/GeLi2001/shopify-mcp/issues"},"bin":{"shopify-mcp":"dist/index.js"},"dist":{"shasum":"8999d46e31470f5ccceaee4a0919653e447a8305","tarball":"https://registry.npmjs.org/shopify-mcp/-/shopify-mcp-1.0.2.tgz","fileCount":9,"integrity":"sha512-5B0G4s3LwGnM9ZEpQ7FKJJ5JR2iosG6+NPhJsSakzLjt58yoO6rxwGn0EH4QlxidN2yHOO1iZLZ5oaI+B+LkuQ==","signatures":[{"sig":"MEUCIQCMZvLjifrySaOJCjQgqbmITZ5Ide3tvjlwyV5ssPsW4wIgSMj/jG8GhU2de18O5xu8aZttvOg6JOblIUJCQxEeIFA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32945},"main":"dist/index.js","type":"module","engines":{"node":">=18.0.0"},"gitHead":"6eea9fa6d88472f0f4148a612867aacd24fca55f","scripts":{"dev":"ts-node --esm src/index.ts","lint":"eslint 'src/**/*.ts'","test":"jest","build":"rimraf dist && tsc","clean":"rimraf dist","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"geli2001","email":"geli2001@berkeley.edu"},"repository":{"url":"git+https://github.com/GeLi2001/shopify-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"MCP Server for Shopify API, enabling interaction with store data through GraphQL API","directories":{},"_nodeVersion":"23.7.0","dependencies":{"zod":"^3.21.4","dotenv":"^16.0.3","graphql":"^16.6.0","minimist":"^1.2.8","graphql-request":"^5.1.0","@modelcontextprotocol/sdk":"^1.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","rimraf":"^5.0.10","ts-jest":"^29.1.0","ts-node":"^10.9.1","typescript":"^5.0.4","@types/jest":"^29.5.0","@types/node":"^18.15.11","@types/minimist":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/shopify-mcp_1.0.2_1743486137921_0.9766672267705632","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"shopify-mcp","version":"1.0.3","keywords":["shopify","mcp","model-context-protocol","graphql","ai","llm","claude"],"author":{"url":"https://your-website.com","name":"Your Name","email":"your.email@example.com"},"license":"MIT","_id":"shopify-mcp@1.0.3","maintainers":[{"name":"geli2001","email":"geli2001@berkeley.edu"}],"homepage":"https://github.com/GeLi2001/shopify-mcp#readme","bugs":{"url":"https://github.com/GeLi2001/shopify-mcp/issues"},"bin":{"shopify-mcp":"dist/index.js"},"dist":{"shasum":"bcf4c158dca35280890616d135b1140a90092414","tarball":"https://registry.npmjs.org/shopify-mcp/-/shopify-mcp-1.0.3.tgz","fileCount":10,"integrity":"sha512-CqV9ilV4h4qD0gzCbM4PRScspf1udCOVVH0B1ZuCy8KHaAPDfQJ9ySm0/DR+5+LhwoGg0clig0b6loBSNlDu5g==","signatures":[{"sig":"MEQCIEXMOUx+PyHA68IEuKTOWGT0SCwtjcoX7+HOTqR0+xyOAiB/i7OZ1LrWVZnepYkmMeBz+/e98GFvAiOUhiEpj7UM0w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39022},"main":"dist/index.js","type":"module","engines":{"node":">=18.0.0"},"gitHead":"17b8865df0b7d0b65e2977ddd8dd464d1f4e3c3e","scripts":{"dev":"ts-node --esm src/index.ts","lint":"eslint 'src/**/*.ts'","test":"jest","build":"rimraf dist && tsc","clean":"rimraf dist","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"geli2001","email":"geli2001@berkeley.edu"},"repository":{"url":"git+https://github.com/GeLi2001/shopify-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"MCP Server for Shopify API, enabling interaction with store data through GraphQL API","directories":{},"_nodeVersion":"23.7.0","dependencies":{"zod":"^3.21.4","dotenv":"^16.0.3","graphql":"^16.6.0","minimist":"^1.2.8","graphql-request":"^5.1.0","@modelcontextprotocol/sdk":"^1.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","rimraf":"^5.0.10","ts-jest":"^29.1.0","ts-node":"^10.9.1","typescript":"^5.0.4","@types/jest":"^29.5.0","@types/node":"^18.15.11","@types/minimist":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/shopify-mcp_1.0.3_1743654088146_0.4310806143333987","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"shopify-mcp","version":"1.0.4","keywords":["shopify","mcp","model-context-protocol","graphql","ai","llm","claude"],"author":{"url":"https://your-website.com","name":"Your Name","email":"your.email@example.com"},"license":"MIT","_id":"shopify-mcp@1.0.4","maintainers":[{"name":"geli2001","email":"geli2001@berkeley.edu"}],"homepage":"https://github.com/GeLi2001/shopify-mcp#readme","bugs":{"url":"https://github.com/GeLi2001/shopify-mcp/issues"},"bin":{"shopify-mcp":"dist/index.js"},"dist":{"shasum":"ce0d86e4c1e8d98927a3389b15afcacff11440c5","tarball":"https://registry.npmjs.org/shopify-mcp/-/shopify-mcp-1.0.4.tgz","fileCount":11,"integrity":"sha512-fjT4yA5sBdiBcOFA60krP3wjjBpPC9K6vFp0yZ0iGSxbWY5TQ3GYSAJfFmg4UDHmSZPtjSmnYPM7zwT1hxfB1A==","signatures":[{"sig":"MEYCIQDran1F73gNbbAtSro5NLpf1esCxFqQBxb0vSBIFT5OTAIhAPe7ZfRciSgzhiVAjXpdhdhddByHxhTW25fOEqr+AstO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":44529},"main":"dist/index.js","type":"module","engines":{"node":">=18.0.0"},"gitHead":"9a487a74a095294141c57b4144b66c12ad61c153","scripts":{"dev":"ts-node --esm src/index.ts","lint":"eslint 'src/**/*.ts'","test":"jest","build":"rimraf dist && tsc","clean":"rimraf dist","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"geli2001","email":"geli2001@berkeley.edu"},"repository":{"url":"git+https://github.com/GeLi2001/shopify-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"MCP Server for Shopify API, enabling interaction with store data through GraphQL API","directories":{},"_nodeVersion":"23.7.0","dependencies":{"zod":"^3.21.4","dotenv":"^16.0.3","graphql":"^16.6.0","minimist":"^1.2.8","graphql-request":"^5.1.0","@modelcontextprotocol/sdk":"^1.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","rimraf":"^5.0.10","ts-jest":"^29.1.0","ts-node":"^10.9.1","typescript":"^5.0.4","@types/jest":"^29.5.0","@types/node":"^18.15.11","@types/minimist":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/shopify-mcp_1.0.4_1743654793076_0.3426634548678098","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"shopify-mcp","version":"1.0.5","keywords":["shopify","mcp","model-context-protocol","graphql","ai","llm","claude"],"author":{"url":"https://your-website.com","name":"Your Name","email":"your.email@example.com"},"license":"MIT","_id":"shopify-mcp@1.0.5","maintainers":[{"name":"geli2001","email":"geli2001@berkeley.edu"}],"homepage":"https://github.com/GeLi2001/shopify-mcp#readme","bugs":{"url":"https://github.com/GeLi2001/shopify-mcp/issues"},"bin":{"shopify-mcp":"dist/index.js"},"dist":{"shasum":"6cac17b4f0d33d7d16a38949d48921dfdd9693d2","tarball":"https://registry.npmjs.org/shopify-mcp/-/shopify-mcp-1.0.5.tgz","fileCount":11,"integrity":"sha512-xtDgMiDVyd18LNpxkAER/fsxbBdcd5szIdviA6jPLZ79ic7HyG3eONp4a8+/jUwYlSGnXi6JK4m95Kh5IwJM8A==","signatures":[{"sig":"MEUCIHBFRFqUoOp5b1jiENgOVip+46+C4VSr+ypvi8/6nwqIAiEAxEB6xR2iWeQPjWFBRcmq3PdRNSKs/KKR728IVdRFCoY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":44614},"main":"dist/index.js","type":"module","engines":{"node":">=18.0.0"},"gitHead":"efb986217ee2eda122f253bed2814fd265a13e48","scripts":{"dev":"ts-node --esm src/index.ts","lint":"eslint 'src/**/*.ts'","test":"jest","build":"rimraf dist && tsc","clean":"rimraf dist","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"geli2001","email":"geli2001@berkeley.edu"},"repository":{"url":"git+https://github.com/GeLi2001/shopify-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"MCP Server for Shopify API, enabling interaction with store data through GraphQL API","directories":{},"_nodeVersion":"23.7.0","dependencies":{"zod":"^3.21.4","dotenv":"^16.0.3","graphql":"^16.6.0","minimist":"^1.2.8","graphql-request":"^5.1.0","@modelcontextprotocol/sdk":"^1.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","rimraf":"^5.0.10","ts-jest":"^29.1.0","ts-node":"^10.9.1","typescript":"^5.0.4","@types/jest":"^29.5.0","@types/node":"^18.15.11","@types/minimist":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/shopify-mcp_1.0.5_1743654968369_0.42165328903857224","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"shopify-mcp","version":"1.0.6","keywords":["shopify","mcp","model-context-protocol","graphql","ai","llm","claude"],"author":{"url":"https://your-website.com","name":"Your Name","email":"your.email@example.com"},"license":"MIT","_id":"shopify-mcp@1.0.6","maintainers":[{"name":"geli2001","email":"geli2001@berkeley.edu"}],"homepage":"https://github.com/GeLi2001/shopify-mcp#readme","bugs":{"url":"https://github.com/GeLi2001/shopify-mcp/issues"},"bin":{"shopify-mcp":"dist/index.js"},"dist":{"shasum":"f16e1883a4d2dbe8c3b584f94c1c8998ff986970","tarball":"https://registry.npmjs.org/shopify-mcp/-/shopify-mcp-1.0.6.tgz","fileCount":12,"integrity":"sha512-pzGmkuHwo3x8W9YxVOHE96pgr6DNMkh0E/vTc25qPQALfnXiqsfTJPOovF9DfyIcWHCqtTi0TRZQa2vqOBMvvQ==","signatures":[{"sig":"MEUCID/Um49xSPZIiw6DhXI0SvwTk0qJKuY53lqo4rGhbjh+AiEA8C1BNL1Fr6XTCOeI7+199meCBvIQZ7MwZ7eBRh3segY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":50778},"main":"dist/index.js","type":"module","engines":{"node":">=18.0.0"},"gitHead":"74c7b4cf4153b79f9f25f51fd7042f02fb81aada","scripts":{"dev":"ts-node --esm src/index.ts","lint":"eslint 'src/**/*.ts'","test":"jest","build":"rimraf dist && tsc","clean":"rimraf dist","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"geli2001","email":"geli2001@berkeley.edu"},"repository":{"url":"git+https://github.com/GeLi2001/shopify-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"MCP Server for Shopify API, enabling interaction with store data through GraphQL API","directories":{},"_nodeVersion":"23.7.0","dependencies":{"zod":"^3.21.4","dotenv":"^16.0.3","graphql":"^16.6.0","minimist":"^1.2.8","graphql-request":"^5.1.0","@modelcontextprotocol/sdk":"^1.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","rimraf":"^5.0.10","ts-jest":"^29.1.0","ts-node":"^10.9.1","typescript":"^5.0.4","@types/jest":"^29.5.0","@types/node":"^18.15.11","@types/minimist":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/shopify-mcp_1.0.6_1744227299234_0.9252474534548218","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"shopify-mcp","version":"1.0.7","keywords":["shopify","mcp","model-context-protocol","graphql","ai","llm","claude"],"author":{"url":"https://your-website.com","name":"Your Name","email":"your.email@example.com"},"license":"MIT","_id":"shopify-mcp@1.0.7","maintainers":[{"name":"geli2001","email":"geli2001@berkeley.edu"}],"homepage":"https://github.com/GeLi2001/shopify-mcp#readme","bugs":{"url":"https://github.com/GeLi2001/shopify-mcp/issues"},"bin":{"shopify-mcp":"dist/index.js"},"dist":{"shasum":"98d9238b927fbd926550a66b55d799b3552b2455","tarball":"https://registry.npmjs.org/shopify-mcp/-/shopify-mcp-1.0.7.tgz","fileCount":12,"integrity":"sha512-eb9NDK9lKy2garnxRzwAw4PSrRQ9o9TXjwA92W6dscK7SRBfHE4pzKyk0IemfpPJeu0Sbd2zsdz7P3JjcFjcYA==","signatures":[{"sig":"MEYCIQCDUnoV3In2zZ7refQt6KBW59imtGe5kaRmlHyEwb9IdgIhAJEFqR4rX2Uckn2VxbBD9FUPwfpTJJ5Mp5Da+9K3siqw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51104},"main":"dist/index.js","type":"module","engines":{"node":">=18.0.0"},"gitHead":"9b0a135f087d7a7728913ae0a6ac0748ea42f4cd","scripts":{"dev":"ts-node --esm src/index.ts","lint":"eslint 'src/**/*.ts'","test":"jest","build":"rimraf dist && tsc","clean":"rimraf dist","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"geli2001","email":"geli2001@berkeley.edu"},"repository":{"url":"git+https://github.com/GeLi2001/shopify-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP Server for Shopify API, enabling interaction with store data through GraphQL API","directories":{},"_nodeVersion":"18.20.8","dependencies":{"zod":"^3.21.4","dotenv":"^16.0.3","graphql":"^16.6.0","minimist":"^1.2.8","graphql-request":"^5.1.0","@modelcontextprotocol/sdk":"^1.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","rimraf":"^5.0.10","ts-jest":"^29.1.0","ts-node":"^10.9.1","typescript":"^5.0.4","@types/jest":"^29.5.0","@types/node":"^18.15.11","@types/minimist":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/shopify-mcp_1.0.7_1748543429854_0.8711772476766821","host":"s3://npm-registry-packages-npm-production"}},"1.0.8":{"name":"shopify-mcp","version":"1.0.8","description":"MCP Server for Shopify API, enabling interaction with store data through GraphQL API","main":"dist/index.js","bin":{"shopify-mcp":"dist/index.js"},"type":"module","scripts":{"build":"rimraf dist && tsc","start":"node dist/index.js","dev":"node --loader ts-node/esm src/index.ts","test":"jest","prepublishOnly":"npm run build","lint":"eslint 'src/**/*.ts'","clean":"rimraf dist"},"keywords":["shopify","mcp","model-context-protocol","graphql","ai","llm","claude"],"author":{"name":"Your Name","email":"your.email@example.com","url":"https://your-website.com"},"license":"MIT","dependencies":{"@modelcontextprotocol/sdk":"^1.17.1","dotenv":"^16.0.3","graphql":"^16.6.0","graphql-request":"^5.1.0","minimist":"^1.2.8","zod":"^3.21.4"},"devDependencies":{"@types/jest":"^29.5.0","@types/minimist":"^1.2.2","@types/node":"^18.15.11","jest":"^29.5.0","rimraf":"^5.0.10","ts-jest":"^29.1.0","ts-node":"^10.9.1","typescript":"^5.0.4"},"repository":{"type":"git","url":"git+https://github.com/GeLi2001/shopify-mcp.git"},"bugs":{"url":"https://github.com/GeLi2001/shopify-mcp/issues"},"homepage":"https://github.com/GeLi2001/shopify-mcp#readme","engines":{"node":">=18.0.0"},"gitHead":"79b6a4680e9125a310084445de580631ee931aeb","_id":"shopify-mcp@1.0.8","_nodeVersion":"20.19.5","_npmVersion":"11.7.0","dist":{"integrity":"sha512-GVOFl9DnTH9XXOtkVjp9HdrZjbW0KADyiaRuHNh8AjtPsYDitLYy1268FcbMcav5GxFOh19kyJokarWTq4X8nQ==","shasum":"b7aa653b8e540a57de8041cbf8d6711232a3338a","tarball":"https://registry.npmjs.org/shopify-mcp/-/shopify-mcp-1.0.8.tgz","fileCount":19,"unpackedSize":98599,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIH0Pdk9Pdk9HJMG2xh8LT4N03d6k9MSclnibjxrC+6glAiBnwZaOd82JQ30TzoRS/3ezCv2DlFFZVc8wfIxxmFsnBQ=="}]},"_npmUser":{"name":"geli2001","email":"geli2001@berkeley.edu"},"directories":{},"maintainers":[{"name":"geli2001","email":"geli2001@berkeley.edu"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/shopify-mcp_1.0.8_1771814625271_0.32157034004886054"},"_hasShrinkwrap":false}},"time":{"created":"2025-04-01T02:39:34.599Z","modified":"2026-02-23T02:43:45.595Z","1.0.0":"2025-04-01T02:39:34.782Z","1.0.1":"2025-04-01T02:42:54.941Z","1.0.2":"2025-04-01T05:42:18.080Z","1.0.3":"2025-04-03T04:21:28.318Z","1.0.4":"2025-04-03T04:33:13.381Z","1.0.5":"2025-04-03T04:36:08.539Z","1.0.6":"2025-04-09T19:34:59.453Z","1.0.7":"2025-05-29T18:30:30.047Z","1.0.8":"2026-02-23T02:43:45.469Z"},"bugs":{"url":"https://github.com/GeLi2001/shopify-mcp/issues"},"author":{"name":"Your Name","email":"your.email@example.com","url":"https://your-website.com"},"license":"MIT","homepage":"https://github.com/GeLi2001/shopify-mcp#readme","keywords":["shopify","mcp","model-context-protocol","graphql","ai","llm","claude"],"repository":{"type":"git","url":"git+https://github.com/GeLi2001/shopify-mcp.git"},"description":"MCP Server for Shopify API, enabling interaction with store data through GraphQL API","maintainers":[{"name":"geli2001","email":"geli2001@berkeley.edu"}],"readme":"# Shopify MCP Server\n\n(please leave a star if you like!)\n\nMCP Server for Shopify API, enabling interaction with store data through GraphQL API. This server provides tools for managing products, customers, orders, and more.\n\n**📦 Package Name: `shopify-mcp`**\n**🚀 Command: `shopify-mcp` (NOT `shopify-mcp-server`)**\n\n<a href=\"https://glama.ai/mcp/servers/@GeLi2001/shopify-mcp\">\n  <img width=\"380\" height=\"200\" src=\"https://glama.ai/mcp/servers/@GeLi2001/shopify-mcp/badge\" alt=\"Shopify MCP server\" />\n</a>\n\n## Features\n\n- **Product Management**: Full CRUD for products, variants, and options\n- **Customer Management**: Load customer data and manage customer tags\n- **Order Management**: Advanced order querying and filtering\n- **GraphQL Integration**: Direct integration with Shopify's GraphQL Admin API\n- **Comprehensive Error Handling**: Clear error messages for API and authentication issues\n\n## Prerequisites\n\n1. Node.js (version 18 or higher)\n2. A Shopify store with a custom app (see setup instructions below)\n\n## Setup\n\n### Authentication\n\nThis server supports two authentication methods:\n\n#### Option 1: Client Credentials (Dev Dashboard apps, January 2026+)\n\nAs of January 1, 2026, new Shopify apps are created in the **Dev Dashboard** and use OAuth client credentials instead of static access tokens.\n\n1. From your Shopify admin, go to **Settings** > **Apps and sales channels**\n2. Click **Develop apps** > **Build app in dev dashboard**\n3. Create a new app and configure **Admin API scopes**:\n   - `read_products`, `write_products`\n   - `read_customers`, `write_customers`\n   - `read_orders`, `write_orders`\n4. Install the app on your store\n5. Copy your **Client ID** and **Client Secret** from the app's API credentials\n\nThe server will automatically exchange these for an access token and refresh it before it expires (tokens are valid for ~24 hours).\n\n#### Option 2: Static Access Token (legacy apps)\n\nIf you have an existing custom app with a static `shpat_` access token, you can still use it directly.\n\n### Usage with Claude Desktop\n\n**Client Credentials (recommended):**\n\n```json\n{\n  \"mcpServers\": {\n    \"shopify\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"shopify-mcp\",\n        \"--clientId\",\n        \"<YOUR_CLIENT_ID>\",\n        \"--clientSecret\",\n        \"<YOUR_CLIENT_SECRET>\",\n        \"--domain\",\n        \"<YOUR_SHOP>.myshopify.com\"\n      ]\n    }\n  }\n}\n```\n\n**Static Access Token (legacy):**\n\n```json\n{\n  \"mcpServers\": {\n    \"shopify\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"shopify-mcp\",\n        \"--accessToken\",\n        \"<YOUR_ACCESS_TOKEN>\",\n        \"--domain\",\n        \"<YOUR_SHOP>.myshopify.com\"\n      ]\n    }\n  }\n}\n```\n\nLocations for the Claude Desktop config file:\n\n- MacOS: `~/Library/Application Support/Claude/claude_desktop_config.json`\n- Windows: `%APPDATA%/Claude/claude_desktop_config.json`\n\n### Usage with Claude Code\n\n**Client Credentials:**\n\n```bash\nclaude mcp add shopify -- npx shopify-mcp \\\n  --clientId YOUR_CLIENT_ID \\\n  --clientSecret YOUR_CLIENT_SECRET \\\n  --domain your-store.myshopify.com\n```\n\n**Static Access Token (legacy):**\n\n```bash\nclaude mcp add shopify -- npx shopify-mcp \\\n  --accessToken YOUR_ACCESS_TOKEN \\\n  --domain your-store.myshopify.com\n```\n\n### Alternative: Run Locally with Environment Variables\n\nIf you prefer to use environment variables instead of command-line arguments:\n\n1. Create a `.env` file with your Shopify credentials:\n\n   **Client Credentials:**\n   ```\n   SHOPIFY_CLIENT_ID=your_client_id\n   SHOPIFY_CLIENT_SECRET=your_client_secret\n   MYSHOPIFY_DOMAIN=your-store.myshopify.com\n   ```\n\n   **Static Access Token (legacy):**\n   ```\n   SHOPIFY_ACCESS_TOKEN=your_access_token\n   MYSHOPIFY_DOMAIN=your-store.myshopify.com\n   ```\n\n2. Run the server with npx:\n   ```\n   npx shopify-mcp\n   ```\n\n### Direct Installation (Optional)\n\nIf you want to install the package globally:\n\n```\nnpm install -g shopify-mcp\n```\n\nThen run it:\n\n```\nshopify-mcp --clientId=<ID> --clientSecret=<SECRET> --domain=<YOUR_SHOP>.myshopify.com\n```\n\n### Additional Options\n\n- `--apiVersion`: Specify the Shopify API version (default: `2026-01`). Can also be set via `SHOPIFY_API_VERSION` environment variable.\n\n**⚠️ Important:** If you see errors about \"SHOPIFY_ACCESS_TOKEN environment variable is required\" when using command-line arguments, you might have a different package installed. Make sure you're using `shopify-mcp`, not `shopify-mcp-server`.\n\n## Available Tools\n\n### Product Management\n\n1. `get-products`\n\n   - Get all products or search by title\n   - Inputs:\n     - `searchTitle` (optional string): Filter products by title\n     - `limit` (number): Maximum number of products to return\n\n2. `get-product-by-id`\n   - Get a specific product by ID\n   - Inputs:\n     - `productId` (string): ID of the product to retrieve\n\n3. `create-product`\n\n   - Create a new product. When using `productOptions`, Shopify registers all option values but only creates one default variant (first value of each option, price $0). Use `manage-product-variants` with `strategy: REMOVE_STANDALONE_VARIANT` afterward to create all real variants with prices.\n   - Inputs:\n     - `title` (string, required): Title of the product\n     - `descriptionHtml` (string, optional): Description with HTML\n     - `handle` (string, optional): URL slug. Auto-generated from title if omitted\n     - `vendor` (string, optional): Vendor of the product\n     - `productType` (string, optional): Type of the product\n     - `tags` (array of strings, optional): Product tags\n     - `status` (string, optional): `\"ACTIVE\"`, `\"DRAFT\"`, or `\"ARCHIVED\"`. Default `\"DRAFT\"`\n     - `seo` (object, optional): `{ title, description }` for search engines\n     - `metafields` (array of objects, optional): Custom metafields (`namespace`, `key`, `value`, `type`)\n     - `productOptions` (array of objects, optional): Options to create inline, e.g. `[{ name: \"Size\", values: [{ name: \"S\" }, { name: \"M\" }] }]`. Max 3 options.\n     - `collectionsToJoin` (array of strings, optional): Collection GIDs to add the product to\n\n4. `update-product`\n\n   - Update an existing product's fields\n   - Inputs:\n     - `id` (string, required): Shopify product GID\n     - `title` (string, optional): New title\n     - `descriptionHtml` (string, optional): New description\n     - `handle` (string, optional): New URL slug\n     - `vendor` (string, optional): New vendor\n     - `productType` (string, optional): New product type\n     - `tags` (array of strings, optional): New tags (overwrites existing)\n     - `status` (string, optional): `\"ACTIVE\"`, `\"DRAFT\"`, or `\"ARCHIVED\"`\n     - `seo` (object, optional): `{ title, description }` for search engines\n     - `metafields` (array of objects, optional): Metafields to set or update\n     - `collectionsToJoin` (array of strings, optional): Collection GIDs to add the product to\n     - `collectionsToLeave` (array of strings, optional): Collection GIDs to remove the product from\n     - `redirectNewHandle` (boolean, optional): If true, old handle redirects to new handle\n\n5. `delete-product`\n\n   - Delete a product\n   - Inputs:\n     - `id` (string, required): Shopify product GID\n\n6. `manage-product-options`\n\n   - Create, update, or delete product options (e.g. Size, Color)\n   - Inputs:\n     - `productId` (string, required): Shopify product GID\n     - `action` (string, required): `\"create\"`, `\"update\"`, or `\"delete\"`\n     - For `action: \"create\"`:\n       - `options` (array, required): Options to create, e.g. `[{ name: \"Size\", values: [\"S\", \"M\", \"L\"] }]`\n     - For `action: \"update\"`:\n       - `optionId` (string, required): Option GID to update\n       - `name` (string, optional): New name for the option\n       - `position` (number, optional): New position\n       - `valuesToAdd` (array of strings, optional): Values to add\n       - `valuesToDelete` (array of strings, optional): Value GIDs to remove\n     - For `action: \"delete\"`:\n       - `optionIds` (array of strings, required): Option GIDs to delete\n\n7. `manage-product-variants`\n\n   - Create or update product variants in bulk\n   - Inputs:\n     - `productId` (string, required): Shopify product GID\n     - `strategy` (string, optional): How to handle the default variant when creating. `\"DEFAULT\"` (removes \"Default Title\" automatically), `\"REMOVE_STANDALONE_VARIANT\"` (recommended for full control), or `\"PRESERVE_STANDALONE_VARIANT\"`\n     - `variants` (array, required): Variants to create or update. Each variant:\n       - `id` (string, optional): Variant GID for updates. Omit to create new\n       - `price` (string, optional): Price, e.g. `\"49.00\"`\n       - `compareAtPrice` (string, optional): Compare-at price for showing discounts\n       - `sku` (string, optional): SKU (mapped to `inventoryItem.sku`)\n       - `tracked` (boolean, optional): Whether inventory is tracked. Set `false` for print-on-demand\n       - `taxable` (boolean, optional): Whether the variant is taxable\n       - `barcode` (string, optional): Barcode\n       - `optionValues` (array, optional): Option values, e.g. `[{ optionName: \"Size\", name: \"A4\" }]`\n\n8. `delete-product-variants`\n\n   - Delete one or more variants from a product\n   - Inputs:\n     - `productId` (string, required): Shopify product GID\n     - `variantIds` (array of strings, required): Variant GIDs to delete\n\n### Customer Management\n1. `get-customers`\n\n   - Get customers or search by name/email\n   - Inputs:\n     - `searchQuery` (optional string): Filter customers by name or email\n     - `limit` (optional number, default: 10): Maximum number of customers to return\n\n2. `update-customer`\n\n   - Update a customer's information\n   - Inputs:\n     - `id` (string, required): Shopify customer ID (numeric ID only, like \"6276879810626\")\n     - `firstName` (string, optional): Customer's first name\n     - `lastName` (string, optional): Customer's last name\n     - `email` (string, optional): Customer's email address\n     - `phone` (string, optional): Customer's phone number\n     - `tags` (array of strings, optional): Tags to apply to the customer\n     - `note` (string, optional): Note about the customer\n     - `taxExempt` (boolean, optional): Whether the customer is exempt from taxes\n     - `metafields` (array of objects, optional): Customer metafields for storing additional data\n\n3. `get-customer-orders`\n   - Get orders for a specific customer\n   - Inputs:\n     - `customerId` (string, required): Shopify customer ID (numeric ID only, like \"6276879810626\")\n     - `limit` (optional number, default: 10): Maximum number of orders to return\n\n### Order Management\n\n1. `get-orders`\n\n   - Get orders with optional filtering\n   - Inputs:\n     - `status` (optional string): Filter by order status\n     - `limit` (optional number, default: 10): Maximum number of orders to return\n\n2. `get-order-by-id`\n\n   - Get a specific order by ID\n   - Inputs:\n     - `orderId` (string, required): Full Shopify order ID (e.g., \"gid://shopify/Order/6090960994370\")\n\n3. `update-order`\n\n   - Update an existing order with new information\n   - Inputs:\n     - `id` (string, required): Shopify order ID\n     - `tags` (array of strings, optional): New tags for the order\n     - `email` (string, optional): Update customer email\n     - `note` (string, optional): Order notes\n     - `customAttributes` (array of objects, optional): Custom attributes for the order\n     - `metafields` (array of objects, optional): Order metafields\n     - `shippingAddress` (object, optional): Shipping address information\n\n## Debugging\n\nIf you encounter issues, check Claude Desktop's MCP logs:\n\n```\ntail -n 20 -f ~/Library/Logs/Claude/mcp*.log\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}