How I Use Claude AI to Run My Jewelry Business on Shopify: The Complete Behind-the-Scenes Guide
How I Use Claude AI to Run My Jewelry Business on Shopify
A complete behind-the-scenes look at how Orah Jewels uses AI to publish blog articles, manage products, fix page speed, run SEO audits, and automate a gemstone jewelry store in Lahore. Written by Anosh Bin Suhail, founder.
Contents
I run a gemstone jewelry business in Lahore. We have 50 workers, in-house lapidary machines we partially built ourselves, direct sourcing relationships with miners in Gilgit-Baltistan, Swat, and Balochistan, and a Shopify store that has processed over 7.5 million carats of Pakistani gemstones across 12 years of operation under our parent company, Stones and Beads Manufacturing Company. I am not a software engineer. I am a gemologist and a jeweler who spent six months learning faceting from a Sri Lankan master cutter sent by the Sri Lanka Gemstone Authority.
In early 2026 I started using Claude AI, Anthropic's AI assistant, not just as a writing tool but as a complete operational partner for running the digital side of our business. What I can do now, working with Claude through Claude Desktop and a set of connected tools called MCP (Model Context Protocol), would have required a full-time developer, an SEO agency, and a content team a year ago. This article is an honest account of exactly how I use it, what works, what broke, and what it cannot do. I am writing this because I could not find any account like this from a Pakistani business, and I think other founders here need to see what is actually possible.
Why I Started Using AI for Operations
The honest answer is cost and scale. Orah Jewels has over 300 active products across 33 collections. Our Gemstones of Pakistan blog series, which I wanted to build into the most authoritative educational resource on Pakistani gemstones in English, would require a guide for every stone we source: peridot, aquamarine, tourmaline, ruby, topaz, fluorite, K2 Jasper, lapis, and dozens more. Each guide needed to be genuinely researched, properly structured with geology, history, spiritual meaning, quality grading, and product links, and published to Shopify with correct SEO metadata. A single article of that depth takes a professional writer two days to research and write. We needed 20 of them.
Simultaneously, our Shopify store had accumulated significant technical debt: 2,771 broken 404 pages, 4,309 URLs with canonical tag conflicts, a robots.txt file with a variant URL conflict that was accidentally indexing every product variant as a separate page, and a flagship article that was loading in 34 seconds on mobile. I had one developer available for occasional work, no in-house SEO team, and a business that needed to be running the whole time any of this was being fixed.
I started using Claude through Claude.ai. Within a few months I had moved to Claude Desktop with MCP tools that connect Claude directly to Shopify, Google Search Console, Google Analytics, Microsoft Clarity, and my local file system. What follows is what that system can actually do.
The Setup: Claude Desktop and MCP Tools
MCP stands for Model Context Protocol. It is a standard that lets Claude connect to external tools and services in a live session, not just discuss them theoretically. In practice, this means Claude can read data from Google Search Console, publish articles to Shopify, search my product catalog, read session recordings from Clarity, and interact with files on my local computer, all within the same conversation.
The Tools I Have Connected
Shopify MCP: Read and write access to products, blog articles, collections, and inventory. Claude can search for active products, create or update articles, fetch article bodies for editing, and run GraphQL mutations directly against the Shopify Admin API.
Google Search Console MCP: Query search analytics by page, query, country, or date. Pull impressions, clicks, CTR, and position data in real time during a session.
Microsoft Clarity MCP: Access session recordings, heatmap data, rage click reports, and scroll depth data. This was how we found the 34-second page load problem.
Google Analytics MCP: Pull session data, traffic sources, and user behavior metrics.
Desktop Commander MCP: Read and write files on my local machine. This lets Claude read my second brain knowledge wiki, reference research notes, and write finished HTML files directly to my computer.
The setup required installing Claude Desktop, adding MCP server configurations to a JSON settings file, and authenticating each tool. The authentication for each tool is separate and took roughly one to two hours total across all tools. None of it required writing code.
The moment I realized what this could actually do was when I asked Claude to pull GSC data for all our blog articles, identify the ones with broken meta descriptions, and then fix them one by one on Shopify, all without me leaving the conversation. What normally takes a developer a day of back-and-forth, I watched happen in about 40 minutes while I was having tea.
Publishing Blog Articles to Shopify: The Two-Step Method
The gemstone guide series is the core of our content strategy. We have now published guides for peridot, aquamarine, tourmaline, ruby, topaz, K2 Jasper, fluorite, quartz, and a dozen other Pakistani stones. Every one was researched, written, and published by Claude within a single working session.
The publishing workflow hit the first major technical problem early on. The obvious approach is to ask Claude to create the article directly using the Shopify MCP tool. It works for short articles. For our gemstone guides, which are typically 45 to 75 kilobytes of HTML including CSS, the MCP tool times out after four minutes and returns nothing. The article never gets created.
The solution is a two-step pattern that became our standard:
Step 1: Create a Shell Article via GraphQL Mutation
Claude runs a GraphQL mutation via the Shopify Admin API to create a minimal placeholder article: just the title, author, tags, excerpt, and a placeholder body. This is fast, lightweight, and never times out. It returns the article ID.
Step 2: Update with Full Body via shopify-read update_article
Using the article ID from Step 1, Claude calls the shopify-read MCP tool's update_article endpoint with the full HTML body, SEO title, and SEO description. This tool handles large payloads without the same timeout behavior because it processes the body content directly rather than through the full article creation flow.
The Encoding Problem That Took Hours to Fix
Early in the series, published articles were displaying strange garbled text wherever there should have been special characters. An arrow symbol was appearing as  . Urdu text was completely unreadable.
The cause is a UTF-8 to Latin-1 double-encoding problem in the MCP tool layer. When Claude passes raw Unicode characters through the Shopify MCP tool's body_html parameter, the tool reads the UTF-8 bytes as Latin-1, producing garbled text. The character U+2192 (rightwards arrow) when encoded in UTF-8 is three bytes: E2 86 92. When those bytes are read as Latin-1 characters, they produce three garbled characters instead of the single arrow.
The Fix: HTML Entities Throughout
The solution is to use only HTML named or numeric entities in any content passed through MCP body_html. Never pass raw Unicode characters. Use → for arrows, — and – for dashes, · for middle dots, © for copyright, and numeric hex entities like ٹ for Urdu characters. These render identically in browsers but travel safely through any encoding layer without corruption.
All Urdu text in our published articles now uses HTML hex entities throughout. This problem affected the Complete Guide article, the tourmaline article, and several others before we identified the pattern. Every affected article had to be fully rewritten and re-pushed with entities substituted throughout.
How AI Found and Fixed a 34-Second Page Load
Our flagship article, the Gemstones of Pakistan Complete Guide, had 14,744 impressions in Google Search Console over three months at position 5.9. Microsoft Clarity was showing 114 rage clicks and 257 dead clicks with only 14.7% scroll depth. Users were arriving and immediately clicking everywhere in frustration.
Claude pulled 50 Clarity sessions filtered to the article URL and analyzed them. The finding was not that the content was poor. Users who got past the initial load were reading for 7 to 11 minutes, using the table of contents, and following internal links to individual stone guides. The problem was that many sessions showed LCP times between 6 and 34 seconds before the page became interactive.
Cause 1: The :root CSS Variable Block
The article had a CSS block defining custom properties using the :root selector. Every browser must build a custom property registry and resolve all variable references before painting any part of the page. For a large article with hundreds of CSS properties referencing those variables, this creates a measurable render-blocking delay that is much worse on lower-powered mobile devices. The fix was to replace all seven CSS variables with hardcoded hex values directly on each CSS class. This is now a strict rule on all our articles: no :root CSS variables in Shopify article body HTML.
Cause 2: Stray Meta Tags in the Article Body
Three meta tags had ended up inside the article body HTML rather than in the page head. Meta tags in the body are invalid HTML that some browsers attempt to parse and re-render, causing additional layout recalculations. Claude identified them by reading the article source via GraphQL, removed them, and pushed the corrected body back via articleUpdate mutation. Total time from diagnosis to live fix: approximately 45 minutes.
Running a Full SEO Audit in One Session
Our blog had 34 articles before the first systematic SEO audit. Claude pulled all article metadata from Shopify, queried Google Search Console for impressions, clicks, CTR, and position for every blog URL, then cross-referenced the two datasets to identify problems. The audit found 18 articles with SEO issues: meta titles over 60 characters, descriptions over 160 characters, and several articles with no meta fields at all. Claude wrote keyword-informed replacements for all 18 and applied them directly to Shopify without me leaving the conversation.
The Three robots.txt Problems Found
Problem 1: Shopify recommendation engine tracking parameters (?pr_prod_strat=, ?pr_rec_id=) were being indexed as separate pages for every product.
Problem 2: After fixing Problem 1, Shopify web-pixel URLs (/web-pixels@[hash]/...) became the most-crawled non-blocked URLs and started appearing in the index.
Problem 3: A conflict between Disallow: /*?variant= and Allow: /*?variant= in the same robots.txt file meant the Allow rule was winning, indexing every product variant individually and creating thousands of duplicate pages. All three were fixed in the same session.
The canonical tag conflict affecting 4,309 URLs was resolved with a single line in theme.liquid that strips all query parameters from every canonical URL sitewide:
AI-Assisted Product Uploads
New product uploads follow a consistent workflow Claude handles end to end. The input is a product name, stone and materials description, and target collection. Claude searches our existing active inventory for similar products to ensure consistent naming and description style, pulls GSC keyword data for related queries to inform SEO fields, then creates the product and flags the manual steps it cannot complete without confirmation: setting the featured image, assigning inventory location, and adding to the correct collection.
The irradiated topaz story is a good example of how AI helps with product description accuracy. Our blue topaz pieces use champagne topaz from Skardu that we irradiate in-house using electron beam technology, heat-stabilize, and cut in our Lahore facility. This is the value-addition story the entire country misses: Pakistani stone, processed in Pakistan, sold by a Pakistani brand. Getting this story right consistently across every blue topaz product description, in a way that is honest about the treatment while explaining why it matters, is something Claude handles with the right framing once established in the session.
What AI Will Not Do in Product Uploads
Claude will not enter payment credentials, banking information, or financial account details into any field. It will not set inventory quantities at specific warehouse locations without explicit per-location confirmation. It will not click confirm on purchases or financial transactions. These limitations are correct and intentional. The manual steps flag is a feature, not a gap.
Google Sheets to Shopify: The Inventory Automation
We have 33 collection sheets in a Google Sheets master inventory, each linked to Shopify via SKU as the key field. Column K is SKU; it must match the Shopify SKU exactly, including capitalization and spaces, or the sync breaks silently. Google Apps Script handles the sync: a script pulls current quantities and image URLs from Shopify's API and writes them back to the corresponding rows in Sheets. A sync log records every operation with timestamps.
Claude helps with the Sheets work differently from Shopify. Because it can read my local file system via Desktop Commander, it can read the Apps Script code files directly, identify logic errors, and suggest fixes without me pasting anything manually. When a sync column breaks because a product's SKU was updated in Shopify without being updated in Sheets, Claude can identify the orphaned row and tell me exactly which SKU to correct.
What GSC Showed Us About AI Traffic
Running GSC analysis through Claude revealed a traffic pattern we had not understood before: sessions arriving with the URL parameter srsltid= appended to article URLs. These sessions show zero clicks in GSC, very short duration, and characteristically high LCP times. They are referrals from Google's AI Overview feature, the generated summaries that appear at the top of search results. Google is reading our articles, including them in AI-generated answers, and citing them as sources.
ChatGPT Is Citing Our Article
One Clarity session from May 2026 showed a user arriving at the Gemstones of Pakistan Complete Guide from what appeared to be a ChatGPT session. The user had copied a URL from ChatGPT's response and opened it directly. ChatGPT was citing our article as a source for a question about Pakistani gemstones. This is the outcome of the hub-and-spoke content architecture we have been building: a flagship authority article with deep geological, historical, and gemological content, linked to individual stone guides for every major Pakistani gemstone. AI systems prefer citing sources that cover topics comprehensively and specifically.
The K2 Jasper guide published in early June 2026 had 21 impressions at position 5.6 within days of publishing, before any backlinks existed. The Complete Guide has 14,744 impressions at position 5.9. The Famous Jewellery Brands article has 623 clicks and 21,486 impressions at position 6.4. These numbers are from the GSC pull I ran this week using Claude, directly inside the research session for this article.
Results So Far
The blog series has become the most significant SEO asset the business has. Our top performing blog articles now drive more organic traffic to the store than most of our collection pages. The technical fixes are harder to quantify in clicks because their impact is in what did not happen: crawl budget wasted on tracking parameter URLs, product variants indexed as duplicate pages, 34-second page loads driving away users who never scrolled past the hero section.
The most significant non-SEO result is operational: I can now run a complete audit, research and write a 6,000-word technically accurate article, publish it to Shopify with correct SEO metadata, and verify the publication in one working session. The same session might also identify a product description error, check inventory for a collection, and pull competitor impression data. The concentration of capability in a single tool that understands context across all those operations is the actual change. Not any one individual capability, but all of them in the same place, understanding each other.
Honest Limitations: What AI Cannot Do
Financial Actions Require Human Confirmation
Claude will not execute financial transactions, enter banking credentials, confirm purchases, or set irreversible inventory quantities without explicit per-action human confirmation. This is correct behavior. I have learned to appreciate this rather than work around it.
MCP Tools Have Timeouts and Failure Modes
Large article bodies above approximately 45 kilobytes will time out the shopify-read:create_article MCP tool after four minutes. The GraphQL mutation approach works around this but requires knowing the workaround exists. MCP server connections occasionally drop mid-session. Large get_articles calls time out when trying to fetch all 34 articles at once. These are infrastructure limitations, not AI limitations.
AI Does Not Know Your Business Without Being Told
In every session, Claude starts without memory of previous sessions unless that memory has been explicitly saved somewhere it can read. The second brain wiki on my computer, readable via Desktop Commander, is the solution I use: structured knowledge files covering Orah's brand, products, sourcing, and processes. Without that context, Claude would need to rediscover basic facts about the business every time.
Mindat.org Blocks Automated Access
Every Mindat.org URL attempted during gemstone research returns a 403 error. Web search is the workaround, but it means Mindat locality data comes second-hand through search snippets rather than directly from the source database. For the world's leading mineralogy locality database, this is a meaningful research limitation.
Your Questions About Using AI for Shopify: Answered
MCP stands for Model Context Protocol, an open standard that allows AI assistants like Claude to connect to external services through purpose-built server configurations. The Shopify MCP server provides Claude with tools to read and write Shopify data including products, blog articles, collections, and orders. Once the server is configured in Claude Desktop's settings file and authenticated with a Shopify Admin API key, Claude can query your store, create or update articles, and run GraphQL mutations directly against the Shopify Admin API. No code needs to be written by the user to use these tools once they are configured.
The shopify-read MCP tool for creating articles has an approximate 4-minute timeout. Articles above about 45 kilobytes of body HTML including inline CSS exceed the time the tool needs to process and transmit the full payload before the timeout fires. The workaround is a two-step approach: first create a shell article with a placeholder body using a GraphQL mutation (which is lightweight and fast), capture the returned article ID, then use the shopify-read:update_article tool with the full body content. The update tool handles large payloads without the same timeout behavior.
The garbled text was caused by UTF-8 to Latin-1 double-encoding in the MCP tool layer. When raw Unicode characters like arrows, dashes, and non-ASCII text are passed through the body_html parameter of the Shopify MCP tool, the tool reads the UTF-8 bytes as Latin-1 characters, producing garbled sequences. The fix is to replace all special characters with HTML named or numeric entities throughout any content passed via MCP: → for arrows, — for em dashes, and hex entities like ٹ for Urdu characters. These entities render correctly in every browser but do not contain multi-byte sequences that can be misinterpreted during transmission.
CSS custom properties defined in a :root block require the browser to build a custom property registry and resolve all variable references before it can begin painting any part of the page. In a Shopify article body with a large :root block defining seven or more custom properties, this resolution step adds measurable render delay, particularly on the lower-powered devices common among Pakistani mobile users. The fix is to replace every CSS variable reference with a hardcoded hex value directly on each CSS class, eliminating the :root block entirely. All Orah Jewels article templates now use hardcoded hex values with no CSS custom properties.
The srsltid= URL parameter is appended by Google when it sends traffic from Google's AI Overview feature, the generated summary answers that appear at the top of certain search results. Sessions with srsltid= in the URL are AI Overview referrals: Google's system has read your content, included it in an AI-generated answer, and cited it as a source. These sessions characteristically show zero clicks in GSC, very short durations, and elevated LCP times. They represent a structurally distinct traffic type from organic search clicks and should be analyzed separately rather than treated as a UX problem to solve.
Each Claude session starts without memory of previous sessions. For an ongoing project like running a Shopify store, context must be reestablished at the start of each relevant session. The solution I use is a second brain wiki: structured markdown files on my local machine covering Orah's brand profile, sourcing details, known product conventions, published article handles, and technical lessons learned. Claude reads these files via the Desktop Commander MCP tool at the start of sessions where that context is needed. The wiki is updated as new lessons are learned, creating a persistent knowledge base that survives across sessions even though Claude's own memory does not.
A full gemstone guide of the type in our series, approximately 5,000 to 8,000 words with detailed geology, history, spiritual meaning, quality grading, product links, care guide, price guide, and 10 FAQs, takes approximately one working session of three to four hours from start to published draft. This includes research (web searches, Mindat locality checks, GSC query data, Shopify product search for active items to link), writing, quality checking for spelling conventions and formatting rules, and publishing via the two-step GraphQL method. A human researcher and writer would take two to three days for equivalent work.
Explore the Gemstones of Pakistan Series
The blog series this workflow has built covers every major Pakistani gemstone with research-grade depth. Browse the guides or explore our handcrafted Pakistani gemstone jewelry.
Written by Anosh Bin Suhail, founder of Orah Jewels & Crafts, Lahore, Pakistan. June 2026.
