[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6MEBXQNE5DMT7WZJDNPY1V2":3,"skill-same:01M6MEBXQNE5DMT7WZJDNPY1V2":102},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":34,"publishedAt":56,"linkOnly":57,"markdownContent":58,"markdownBody":59,"frontMatter":60,"refName":69,"commitSha":70,"skillDirectory":71,"forksCount":72,"repositoryHtmlUrl":73,"repositoryHomepageUrl":74,"ownerHtmlUrl":75,"ownerBlogUrl":76,"ownerDescription":77,"updatedAt":78,"install":79,"resources":91},"01M6MEBXQNE5DMT7WZJDNPY1V2","seo-ecommerce",null,"E-commerce SEO analysis: Google Shopping visibility, Amazon marketplace intelligence, product schema validation, competitor pricing analysis, and marketplace keyword gaps. Combines on-page product SEO with marketplace data from DataForSEO Merchant API. Use when user says \"ecommerce SEO\", \"product SEO\", \"Google Shopping\", \"marketplace SEO\", \"product schema\", \"Amazon SEO\", \"product listings\", \"shopping ads\", or \"merchant SEO\".","hashgraph-online\u002Fawesome-codex-plugins","hashgraph-online","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F160371962?v=4","01M6CNB6NRJVNNGN14TR01Q6D3","HOL (Hashgraph Online)","01M6JT1HSKKG9V68KQAQGBA7XP",1554,"MIT","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-ecommerce\u002FSKILL.md",[18,23,26,31],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000019","营销推广",{"categoryNo":27,"categoryName":28,"taxonomyType":29,"taxonomyTypeDesc":30},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",{"categoryNo":32,"categoryName":33,"taxonomyType":29,"taxonomyTypeDesc":30},"01JBSEEDCAT000000000000035","市场营销",[35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55],"seo","seo ecommerce","ecommerce","shopping","when","merchant","URL","commerce","seo analysis","e-commerce","google shopping","listings","intelligence","google","challenge","page","ads","api","analysis","data","product","2026-11-10 10:12:30",false,"---\nname: seo-ecommerce\ndescription: >\n  E-commerce SEO analysis: Google Shopping visibility, Amazon marketplace\n  intelligence, product schema validation, competitor pricing analysis, and\n  marketplace keyword gaps. Combines on-page product SEO with marketplace data\n  from DataForSEO Merchant API. Use when user says \"ecommerce SEO\", \"product SEO\",\n  \"Google Shopping\", \"marketplace SEO\", \"product schema\", \"Amazon SEO\",\n  \"product listings\", \"shopping ads\", or \"merchant SEO\".\nuser-invocable: true\nargument-hint: \"\u003Curl or keyword>\"\nlicense: MIT\ncompatibility: \"Enhanced with DataForSEO Merchant API (optional)\"\nmetadata:\n  author: AgriciDaniel\n  original_author: \"Matej Marjanovic (Pro Hub Challenge)\"\n  version: \"2.2.6\"\n  category: seo\n---\n\n# E-commerce SEO Analysis\n\nComprehensive product page optimization, marketplace intelligence, and\ncompetitive pricing analysis. Works standalone (on-page + schema) and with\nDataForSEO Merchant API for live Google Shopping and Amazon data.\n\n## Commands\n\n| Command | Purpose | DataForSEO? |\n|---------|---------|-------------|\n| `\u002Fseo ecommerce \u003Curl>` | Full e-commerce SEO analysis of a product page or store | Optional |\n| `\u002Fseo ecommerce products \u003Ckeyword>` | Google Shopping competitive analysis | Required |\n| `\u002Fseo ecommerce gaps \u003Cdomain>` | Keyword gap: organic vs Shopping visibility | Required |\n| `\u002Fseo ecommerce schema \u003Curl>` | Product schema validation and enhancement | No |\n\n---\n\n## 1. Product Page Analysis (No DataForSEO Needed)\n\nFetch and parse any product page for on-page SEO quality.\n\n### Workflow\n\n```\n1. claude-seo run render_page.py \u003Curl> --mode auto → raw\u002Frendered HTML\n2. claude-seo run parse_html.py --url \u003Curl>   → SEO elements\n3. Analyze product-specific signals (below)\n```\n\n### Product SEO Checklist\n\n#### Title Tag\n- [ ] Contains primary product keyword\n- [ ] Includes brand name\n- [ ] Under 60 characters (no truncation in SERPs)\n- [ ] Format: `[Product Name] - [Key Feature] | [Brand]`\n\n#### Meta Description\n- [ ] Contains product keyword + benefit\n- [ ] Includes price or \"from $XX\" (triggers rich snippet interest)\n- [ ] Call-to-action present (Shop now, Buy, Free shipping)\n- [ ] Under 155 characters\n\n#### Heading Structure\n- [ ] Single H1 matching primary product name\n- [ ] H2s for: Features, Specifications, Reviews, Related Products\n- [ ] No duplicate H1 tags across product variants\n\n#### Product Images\n- [ ] Alt text includes product name + distinguishing feature\n- [ ] File names are descriptive (not `IMG_001.jpg`)\n- [ ] WebP format served (with JPEG fallback)\n- [ ] At least 3 images per product (hero, detail, lifestyle)\n- [ ] Image dimensions >= 800px for Google Shopping eligibility\n- [ ] Lazy loading on below-fold images only\n\n#### Internal Linking\n- [ ] Breadcrumb navigation: Home > Category > Subcategory > Product\n- [ ] Related products section (cross-sell \u002F upsell)\n- [ ] Link back to category page with keyword-rich anchor\n- [ ] Reviews section links to full review page (if separate)\n\n#### Content Quality\n- [ ] Unique product description (not manufacturer copy-paste)\n- [ ] Word count >= 200 for product description body\n- [ ] Specs table present (not just prose)\n- [ ] User reviews on-page (UGC signals)\n\n### Scoring\n\n| Category | Weight | Criteria |\n|----------|--------|----------|\n| Schema completeness | 25% | Required + recommended Product fields |\n| Title & meta | 15% | Keyword placement, length, format |\n| Image optimization | 20% | Alt text, format, sizing, count |\n| Content quality | 20% | Unique description, specs, reviews |\n| Internal linking | 10% | Breadcrumbs, related products, categories |\n| Technical | 10% | Page speed, mobile rendering, canonical |\n\n---\n\n## 2. Google Shopping Intelligence (DataForSEO Merchant API)\n\nLive competitive analysis from Google Shopping results.\n\n### Cost Guardrail (MANDATORY)\n\nBefore EVERY Merchant API call:\n```bash\nclaude-seo run dataforseo_costs.py check merchant_google_products_search\n```\n\n- `\"status\": \"approved\"` -- proceed\n- `\"status\": \"needs_approval\"` -- show cost, ask user\n- `\"status\": \"blocked\"` -- stop, inform user\n\nAfter each call:\n```bash\nclaude-seo run dataforseo_costs.py log merchant_google_products_search \u003Ccost>\n```\n\n### Workflow\n\n```bash\n# Product search: who sells what at what price\nclaude-seo run dataforseo_merchant.py search \"\u003Ckeyword>\" --marketplace google\n\n# Seller analysis: merchant ratings and dominance\nclaude-seo run dataforseo_merchant.py sellers \"\u003Ckeyword>\"\n\n# Normalize results for analysis\nclaude-seo run dataforseo_normalize.py results.json --module merchant\n```\n\n### Analysis Outputs\n\n#### Pricing Intelligence\n- Price distribution: min, max, median, P25, P75\n- Price outliers (> 2 standard deviations from median)\n- Price-to-rating correlation\n- Currency normalization to USD (or user-specified)\n\n#### Seller Landscape\n- Top 10 sellers by listing count\n- Merchant rating distribution\n- Free shipping prevalence\n- New vs established sellers\n\n#### Product Listing Quality\n- Title keyword patterns in top listings\n- Average rating and review count benchmarks\n- Image count per listing\n- Availability status distribution\n\nLoad `references\u002Fmarketplace-endpoints.md` for full API parameter details.\n\n---\n\n## 3. Amazon Marketplace (DataForSEO)\n\nCross-marketplace intelligence comparing Google Shopping and Amazon.\n\n### Cost Guardrail (MANDATORY)\n\n```bash\nclaude-seo run dataforseo_costs.py check merchant_amazon_products_search\n```\n\nAmazon endpoints are in the `warn_endpoints` set -- always requires user approval.\n\n### Workflow\n\n```bash\n# Amazon product search\nclaude-seo run dataforseo_merchant.py search \"\u003Ckeyword>\" --marketplace amazon\n\n# Cross-marketplace comparison\nclaude-seo run dataforseo_merchant.py compare \"\u003Ckeyword>\"\n```\n\n### Cross-Marketplace Report\n\n| Metric | Google Shopping | Amazon |\n|--------|---------------|--------|\n| Avg price | $ | $ |\n| Median rating | X.X | X.X |\n| Avg review count | N | N |\n| Top seller share | % | % |\n| Free shipping % | % | % |\n\n---\n\n## 4. Marketplace Keyword Gaps\n\nIdentify mismatches between organic and Shopping visibility.\n\n### Workflow\n\n1. Fetch organic rankings via seo-dataforseo:\n   `dataforseo_labs_google_ranked_keywords` for domain\n2. Fetch Google Shopping presence via Merchant API:\n   `merchant_google_products_search` for top organic keywords\n3. Cross-reference results\n\n### Gap Types\n\n| Gap Type | Meaning | Action |\n|----------|---------|--------|\n| **Organic Only** | Ranks organically but no Shopping ads | Create Google Merchant Center feed, bid on these keywords |\n| **Shopping Only** | Shopping visibility but weak\u002Fno organic | Create content (buying guides, comparison pages) for these keywords |\n| **Both Present** | Visible in both channels | Optimize: ensure price consistency, enhance schema |\n| **Neither** | No visibility in either | Low priority unless high volume |\n\n### Output Format\n\n```\n## Keyword Gap Analysis: example.com\n\n### Opportunities: Organic → Shopping (12 keywords)\n| Keyword | Organic Pos | Volume | CPC | Recommended Action |\n|---------|------------|--------|-----|-------------------|\n\n### Opportunities: Shopping → Organic (8 keywords)\n| Keyword | Shopping Rank | Volume | CPC | Content Type Needed |\n|---------|-------------|--------|-----|-------------------|\n```\n\n---\n\n## 5. Product Schema Enhancement\n\nValidate and generate Product schema following Google's current requirements.\n\n### Confirmed Required Properties (Google Merchant)\n\nConfirmed required fields are `name`, `image`, and `offers`; use `Offer`, not `AggregateOffer`, for merchant listings.\n\n```json\n{\n  \"@context\": \"https:\u002F\u002Fschema.org\",\n  \"@type\": \"Product\",\n  \"name\": \"\",\n  \"image\": [\"\"],\n  \"offers\": {\n    \"@type\": \"Offer\",\n    \"url\": \"\",\n    \"priceCurrency\": \"USD\",\n    \"price\": \"0.00\",\n    \"availability\": \"https:\u002F\u002Fschema.org\u002FInStock\"\n  }\n}\n```\n\n### Recommended Properties (Enhance Rich Results)\n\n- `sku` -- product identifier\n- `description`, `brand`, `offers.seller` -- recommended context fields\n- `gtin13` \u002F `gtin14` \u002F `mpn` -- global trade identifiers\n- `aggregateRating` -- star rating + review count\n- `review` -- individual reviews (minimum 1)\n- `color`, `material`, `size` -- variant attributes\n- `shippingDetails` -- ShippingDetails with rate and delivery time (merchant-level shipping via `ShippingService` is also supported; shipping\u002Freturns can be set in Search Console without a Merchant Center account)\n- `hasMerchantReturnPolicy` -- MerchantReturnPolicy with type and days\n- `hasAdultConsideration` -- **required for adult-oriented products** (added 2026-05-20 to Product variant \u002F Merchant listing); Google Search supports only the value `https:\u002F\u002Fschema.org\u002FSexualContentConsideration`\n- `category` -- `Text`, `CategoryCode`, or an array mixing both. Use custom\n  text for merchant-defined product types and `CategoryCode` with Google's\n  taxonomy URL plus `codeValue` for Google Product Categories.\n\n### Validation Rules\n\n1. `price` must be a number string, not \"$29.99\" (no currency symbol)\n2. `availability` must use full Schema.org URL enum\n3. `image` should be array with >= 1 high-res image URL\n4. `priceCurrency` must be ISO 4217 (USD, EUR, GBP)\n5. If `brand` is present, `brand.name` must not be empty or \"N\u002FA\"\n6. Sale periods use `validFrom` plus either `validThrough` or\n   `priceValidUntil`, in ISO 8601 format. Include time and timezone when known.\n7. If `aggregateRating` present: `ratingValue` and `reviewCount` required\n8. Do not include fake reviews or undisclosed incentivized reviews in visible\n   content or structured data. Clearly and prominently disclose incentives.\n\n### Schema Scoring\n\n| Completeness | Score |\n|-------------|-------|\n| All required fields | 50\u002F100 |\n| + aggregateRating | 65\u002F100 |\n| + sku\u002Fgtin\u002Fmpn | 75\u002F100 |\n| + shippingDetails | 85\u002F100 |\n| + merchantReturnPolicy | 90\u002F100 |\n| + reviews (3+) | 100\u002F100 |\n\n---\n\n## Cross-Skill Integration\n\n| Skill | Integration Point |\n|-------|------------------|\n| **seo-schema** | Delegates Product schema generation; reuses validation logic |\n| **seo-images** | Product image audit (alt text, format, dimensions), plus `DigitalSourceType: TrainedAlgorithmicMedia` IPTC label for AI-generated product images (Merchant Center requirement) |\n| **seo-content** | Product description E-E-A-T and uniqueness analysis |\n| **seo-dataforseo** | Organic keyword rankings for gap analysis |\n| **seo-technical** | Core Web Vitals for product pages (LCP on hero image) |\n| **seo-google** | GSC indexation + Performance data for product URLs (NOT Merchant Center feed validation, that is done in Merchant Center \u002F the **Merchant API**; the legacy Content API for Shopping sunsets 2026-08-18) |\n\n## UCP: Universal Commerce Protocol (live)\n\nGoogle-initiated open standard (co-developed with Shopify, Etsy, Wayfair,\nTarget, Walmart; payment partners Visa\u002FMastercard\u002FStripe\u002FAdyen\u002FAmex) for\nletting AI agents discover, negotiate, and transact with merchants without\none-off integrations. Google confirms a first reference implementation for\nconversational buying in AI Mode in Search. Broader Universal Cart rollout\ndetails are reported from Google I\u002FO 2026 keynote coverage; not confirmed on a\nGoogle-owned source. ucp.dev lists **2026-04-08** as the latest release in its\n**date-based versioning** scheme, not `1.0`; two integration paths: **Native**\n(default) and **Embedded** (approved merchants). Pairs with **AP2** (reportedly\nmoving toward FIDO governance). Canonical: developers.google.com\u002Fmerchant\u002Fucp\nand ucp.dev.\n\nMerchants already on **Google Merchant Center** with clean Product schema can\ndeclare a UCP profile at `\u002F.well-known\u002Fucp` listing capabilities\n(`dev.ucp.shopping.checkout`, `.fulfillment`, `.discount`). See\n`references\u002Fucp-universal-commerce-protocol.md` for audit criteria,\ncapability examples, and the relationship to AP2 (Agent Payments Protocol).\n\n### Audit command\n\n```bash\n# Discover and validate the UCP profile\nclaude-seo run ucp_check.py https:\u002F\u002Fstore.example.com --json\n\n# With endpoint reachability probes (HEAD each declared capability)\nclaude-seo run ucp_check.py https:\u002F\u002Fstore.example.com --probe-endpoints --json\n```\n\nThe script returns: profile presence, version, declared capabilities,\nstructural issues (missing fields, unknown capability IDs), and (with\n`--probe-endpoints`) per-endpoint reachability. SSRF-blocked endpoints are\nreported explicitly. Missing profile is reported as opportunity, not failure.\nUCP itself is live; what's early is broad merchant adoption. Flag a literal\n`\"version\": \"1.0\"` as invalid (UCP versions are date-based, e.g. `2026-04-08`).\n\n---\n\n## Error Handling\n\n| Error | Cause | Response |\n|-------|-------|----------|\n| No Product schema found | Page lacks JSON-LD | Analyze page content, generate recommended schema |\n| DataForSEO credentials missing | Env vars not set | Run analysis without marketplace data, note limitation |\n| Cost check blocked | Daily budget exceeded | Inform user, offer free-only analysis |\n| Empty Shopping results | No products for keyword | Suggest broader keyword, check location settings |\n| Amazon API timeout | Network\u002Frate limit | Retry with backoff, fall back to Google-only |\n| Invalid URL | Malformed input | Validate via `google_auth.validate_url()`, show error |\n| Non-product page | URL is category\u002Fhomepage | Detect page type, suggest `\u002Fseo ecommerce schema` instead |\n\n---\n\n## Output Template\n\n```\n## E-commerce SEO Report: [URL or Keyword]\n\n### Overall Score: XX\u002F100\n\n### Product Page SEO\n- Schema Completeness: XX\u002F100\n- Title & Meta: XX\u002F100\n- Image Optimization: XX\u002F100\n- Content Quality: XX\u002F100\n- Internal Linking: XX\u002F100\n\n### Marketplace Intelligence (if DataForSEO available)\n- Google Shopping Listings: N products found\n- Price Range: $XX - $XX (median: $XX)\n- Top Seller: [name] (XX% market share)\n- Amazon Comparison: [available\u002Fnot checked]\n\n### Top Recommendations\n1. [Critical] ...\n2. [High] ...\n3. [Medium] ...\n\nGenerate a PDF report? Use `\u002Fseo google report`\n```\n","# E-commerce SEO Analysis\n\nComprehensive product page optimization, marketplace intelligence, and\ncompetitive pricing analysis. Works standalone (on-page + schema) and with\nDataForSEO Merchant API for live Google Shopping and Amazon data.\n\n## Commands\n\n| Command | Purpose | DataForSEO? |\n|---------|---------|-------------|\n| `\u002Fseo ecommerce \u003Curl>` | Full e-commerce SEO analysis of a product page or store | Optional |\n| `\u002Fseo ecommerce products \u003Ckeyword>` | Google Shopping competitive analysis | Required |\n| `\u002Fseo ecommerce gaps \u003Cdomain>` | Keyword gap: organic vs Shopping visibility | Required |\n| `\u002Fseo ecommerce schema \u003Curl>` | Product schema validation and enhancement | No |\n\n---\n\n## 1. Product Page Analysis (No DataForSEO Needed)\n\nFetch and parse any product page for on-page SEO quality.\n\n### Workflow\n\n```\n1. claude-seo run render_page.py \u003Curl> --mode auto → raw\u002Frendered HTML\n2. claude-seo run parse_html.py --url \u003Curl>   → SEO elements\n3. Analyze product-specific signals (below)\n```\n\n### Product SEO Checklist\n\n#### Title Tag\n- [ ] Contains primary product keyword\n- [ ] Includes brand name\n- [ ] Under 60 characters (no truncation in SERPs)\n- [ ] Format: `[Product Name] - [Key Feature] | [Brand]`\n\n#### Meta Description\n- [ ] Contains product keyword + benefit\n- [ ] Includes price or \"from $XX\" (triggers rich snippet interest)\n- [ ] Call-to-action present (Shop now, Buy, Free shipping)\n- [ ] Under 155 characters\n\n#### Heading Structure\n- [ ] Single H1 matching primary product name\n- [ ] H2s for: Features, Specifications, Reviews, Related Products\n- [ ] No duplicate H1 tags across product variants\n\n#### Product Images\n- [ ] Alt text includes product name + distinguishing feature\n- [ ] File names are descriptive (not `IMG_001.jpg`)\n- [ ] WebP format served (with JPEG fallback)\n- [ ] At least 3 images per product (hero, detail, lifestyle)\n- [ ] Image dimensions >= 800px for Google Shopping eligibility\n- [ ] Lazy loading on below-fold images only\n\n#### Internal Linking\n- [ ] Breadcrumb navigation: Home > Category > Subcategory > Product\n- [ ] Related products section (cross-sell \u002F upsell)\n- [ ] Link back to category page with keyword-rich anchor\n- [ ] Reviews section links to full review page (if separate)\n\n#### Content Quality\n- [ ] Unique product description (not manufacturer copy-paste)\n- [ ] Word count >= 200 for product description body\n- [ ] Specs table present (not just prose)\n- [ ] User reviews on-page (UGC signals)\n\n### Scoring\n\n| Category | Weight | Criteria |\n|----------|--------|----------|\n| Schema completeness | 25% | Required + recommended Product fields |\n| Title & meta | 15% | Keyword placement, length, format |\n| Image optimization | 20% | Alt text, format, sizing, count |\n| Content quality | 20% | Unique description, specs, reviews |\n| Internal linking | 10% | Breadcrumbs, related products, categories |\n| Technical | 10% | Page speed, mobile rendering, canonical |\n\n---\n\n## 2. Google Shopping Intelligence (DataForSEO Merchant API)\n\nLive competitive analysis from Google Shopping results.\n\n### Cost Guardrail (MANDATORY)\n\nBefore EVERY Merchant API call:\n```bash\nclaude-seo run dataforseo_costs.py check merchant_google_products_search\n```\n\n- `\"status\": \"approved\"` -- proceed\n- `\"status\": \"needs_approval\"` -- show cost, ask user\n- `\"status\": \"blocked\"` -- stop, inform user\n\nAfter each call:\n```bash\nclaude-seo run dataforseo_costs.py log merchant_google_products_search \u003Ccost>\n```\n\n### Workflow\n\n```bash\n# Product search: who sells what at what price\nclaude-seo run dataforseo_merchant.py search \"\u003Ckeyword>\" --marketplace google\n\n# Seller analysis: merchant ratings and dominance\nclaude-seo run dataforseo_merchant.py sellers \"\u003Ckeyword>\"\n\n# Normalize results for analysis\nclaude-seo run dataforseo_normalize.py results.json --module merchant\n```\n\n### Analysis Outputs\n\n#### Pricing Intelligence\n- Price distribution: min, max, median, P25, P75\n- Price outliers (> 2 standard deviations from median)\n- Price-to-rating correlation\n- Currency normalization to USD (or user-specified)\n\n#### Seller Landscape\n- Top 10 sellers by listing count\n- Merchant rating distribution\n- Free shipping prevalence\n- New vs established sellers\n\n#### Product Listing Quality\n- Title keyword patterns in top listings\n- Average rating and review count benchmarks\n- Image count per listing\n- Availability status distribution\n\nLoad `references\u002Fmarketplace-endpoints.md` for full API parameter details.\n\n---\n\n## 3. Amazon Marketplace (DataForSEO)\n\nCross-marketplace intelligence comparing Google Shopping and Amazon.\n\n### Cost Guardrail (MANDATORY)\n\n```bash\nclaude-seo run dataforseo_costs.py check merchant_amazon_products_search\n```\n\nAmazon endpoints are in the `warn_endpoints` set -- always requires user approval.\n\n### Workflow\n\n```bash\n# Amazon product search\nclaude-seo run dataforseo_merchant.py search \"\u003Ckeyword>\" --marketplace amazon\n\n# Cross-marketplace comparison\nclaude-seo run dataforseo_merchant.py compare \"\u003Ckeyword>\"\n```\n\n### Cross-Marketplace Report\n\n| Metric | Google Shopping | Amazon |\n|--------|---------------|--------|\n| Avg price | $ | $ |\n| Median rating | X.X | X.X |\n| Avg review count | N | N |\n| Top seller share | % | % |\n| Free shipping % | % | % |\n\n---\n\n## 4. Marketplace Keyword Gaps\n\nIdentify mismatches between organic and Shopping visibility.\n\n### Workflow\n\n1. Fetch organic rankings via seo-dataforseo:\n   `dataforseo_labs_google_ranked_keywords` for domain\n2. Fetch Google Shopping presence via Merchant API:\n   `merchant_google_products_search` for top organic keywords\n3. Cross-reference results\n\n### Gap Types\n\n| Gap Type | Meaning | Action |\n|----------|---------|--------|\n| **Organic Only** | Ranks organically but no Shopping ads | Create Google Merchant Center feed, bid on these keywords |\n| **Shopping Only** | Shopping visibility but weak\u002Fno organic | Create content (buying guides, comparison pages) for these keywords |\n| **Both Present** | Visible in both channels | Optimize: ensure price consistency, enhance schema |\n| **Neither** | No visibility in either | Low priority unless high volume |\n\n### Output Format\n\n```\n## Keyword Gap Analysis: example.com\n\n### Opportunities: Organic → Shopping (12 keywords)\n| Keyword | Organic Pos | Volume | CPC | Recommended Action |\n|---------|------------|--------|-----|-------------------|\n\n### Opportunities: Shopping → Organic (8 keywords)\n| Keyword | Shopping Rank | Volume | CPC | Content Type Needed |\n|---------|-------------|--------|-----|-------------------|\n```\n\n---\n\n## 5. Product Schema Enhancement\n\nValidate and generate Product schema following Google's current requirements.\n\n### Confirmed Required Properties (Google Merchant)\n\nConfirmed required fields are `name`, `image`, and `offers`; use `Offer`, not `AggregateOffer`, for merchant listings.\n\n```json\n{\n  \"@context\": \"https:\u002F\u002Fschema.org\",\n  \"@type\": \"Product\",\n  \"name\": \"\",\n  \"image\": [\"\"],\n  \"offers\": {\n    \"@type\": \"Offer\",\n    \"url\": \"\",\n    \"priceCurrency\": \"USD\",\n    \"price\": \"0.00\",\n    \"availability\": \"https:\u002F\u002Fschema.org\u002FInStock\"\n  }\n}\n```\n\n### Recommended Properties (Enhance Rich Results)\n\n- `sku` -- product identifier\n- `description`, `brand`, `offers.seller` -- recommended context fields\n- `gtin13` \u002F `gtin14` \u002F `mpn` -- global trade identifiers\n- `aggregateRating` -- star rating + review count\n- `review` -- individual reviews (minimum 1)\n- `color`, `material`, `size` -- variant attributes\n- `shippingDetails` -- ShippingDetails with rate and delivery time (merchant-level shipping via `ShippingService` is also supported; shipping\u002Freturns can be set in Search Console without a Merchant Center account)\n- `hasMerchantReturnPolicy` -- MerchantReturnPolicy with type and days\n- `hasAdultConsideration` -- **required for adult-oriented products** (added 2026-05-20 to Product variant \u002F Merchant listing); Google Search supports only the value `https:\u002F\u002Fschema.org\u002FSexualContentConsideration`\n- `category` -- `Text`, `CategoryCode`, or an array mixing both. Use custom\n  text for merchant-defined product types and `CategoryCode` with Google's\n  taxonomy URL plus `codeValue` for Google Product Categories.\n\n### Validation Rules\n\n1. `price` must be a number string, not \"$29.99\" (no currency symbol)\n2. `availability` must use full Schema.org URL enum\n3. `image` should be array with >= 1 high-res image URL\n4. `priceCurrency` must be ISO 4217 (USD, EUR, GBP)\n5. If `brand` is present, `brand.name` must not be empty or \"N\u002FA\"\n6. Sale periods use `validFrom` plus either `validThrough` or\n   `priceValidUntil`, in ISO 8601 format. Include time and timezone when known.\n7. If `aggregateRating` present: `ratingValue` and `reviewCount` required\n8. Do not include fake reviews or undisclosed incentivized reviews in visible\n   content or structured data. Clearly and prominently disclose incentives.\n\n### Schema Scoring\n\n| Completeness | Score |\n|-------------|-------|\n| All required fields | 50\u002F100 |\n| + aggregateRating | 65\u002F100 |\n| + sku\u002Fgtin\u002Fmpn | 75\u002F100 |\n| + shippingDetails | 85\u002F100 |\n| + merchantReturnPolicy | 90\u002F100 |\n| + reviews (3+) | 100\u002F100 |\n\n---\n\n## Cross-Skill Integration\n\n| Skill | Integration Point |\n|-------|------------------|\n| **seo-schema** | Delegates Product schema generation; reuses validation logic |\n| **seo-images** | Product image audit (alt text, format, dimensions), plus `DigitalSourceType: TrainedAlgorithmicMedia` IPTC label for AI-generated product images (Merchant Center requirement) |\n| **seo-content** | Product description E-E-A-T and uniqueness analysis |\n| **seo-dataforseo** | Organic keyword rankings for gap analysis |\n| **seo-technical** | Core Web Vitals for product pages (LCP on hero image) |\n| **seo-google** | GSC indexation + Performance data for product URLs (NOT Merchant Center feed validation, that is done in Merchant Center \u002F the **Merchant API**; the legacy Content API for Shopping sunsets 2026-08-18) |\n\n## UCP: Universal Commerce Protocol (live)\n\nGoogle-initiated open standard (co-developed with Shopify, Etsy, Wayfair,\nTarget, Walmart; payment partners Visa\u002FMastercard\u002FStripe\u002FAdyen\u002FAmex) for\nletting AI agents discover, negotiate, and transact with merchants without\none-off integrations. Google confirms a first reference implementation for\nconversational buying in AI Mode in Search. Broader Universal Cart rollout\ndetails are reported from Google I\u002FO 2026 keynote coverage; not confirmed on a\nGoogle-owned source. ucp.dev lists **2026-04-08** as the latest release in its\n**date-based versioning** scheme, not `1.0`; two integration paths: **Native**\n(default) and **Embedded** (approved merchants). Pairs with **AP2** (reportedly\nmoving toward FIDO governance). Canonical: developers.google.com\u002Fmerchant\u002Fucp\nand ucp.dev.\n\nMerchants already on **Google Merchant Center** with clean Product schema can\ndeclare a UCP profile at `\u002F.well-known\u002Fucp` listing capabilities\n(`dev.ucp.shopping.checkout`, `.fulfillment`, `.discount`). See\n`references\u002Fucp-universal-commerce-protocol.md` for audit criteria,\ncapability examples, and the relationship to AP2 (Agent Payments Protocol).\n\n### Audit command\n\n```bash\n# Discover and validate the UCP profile\nclaude-seo run ucp_check.py https:\u002F\u002Fstore.example.com --json\n\n# With endpoint reachability probes (HEAD each declared capability)\nclaude-seo run ucp_check.py https:\u002F\u002Fstore.example.com --probe-endpoints --json\n```\n\nThe script returns: profile presence, version, declared capabilities,\nstructural issues (missing fields, unknown capability IDs), and (with\n`--probe-endpoints`) per-endpoint reachability. SSRF-blocked endpoints are\nreported explicitly. Missing profile is reported as opportunity, not failure.\nUCP itself is live; what's early is broad merchant adoption. Flag a literal\n`\"version\": \"1.0\"` as invalid (UCP versions are date-based, e.g. `2026-04-08`).\n\n---\n\n## Error Handling\n\n| Error | Cause | Response |\n|-------|-------|----------|\n| No Product schema found | Page lacks JSON-LD | Analyze page content, generate recommended schema |\n| DataForSEO credentials missing | Env vars not set | Run analysis without marketplace data, note limitation |\n| Cost check blocked | Daily budget exceeded | Inform user, offer free-only analysis |\n| Empty Shopping results | No products for keyword | Suggest broader keyword, check location settings |\n| Amazon API timeout | Network\u002Frate limit | Retry with backoff, fall back to Google-only |\n| Invalid URL | Malformed input | Validate via `google_auth.validate_url()`, show error |\n| Non-product page | URL is category\u002Fhomepage | Detect page type, suggest `\u002Fseo ecommerce schema` instead |\n\n---\n\n## Output Template\n\n```\n## E-commerce SEO Report: [URL or Keyword]\n\n### Overall Score: XX\u002F100\n\n### Product Page SEO\n- Schema Completeness: XX\u002F100\n- Title & Meta: XX\u002F100\n- Image Optimization: XX\u002F100\n- Content Quality: XX\u002F100\n- Internal Linking: XX\u002F100\n\n### Marketplace Intelligence (if DataForSEO available)\n- Google Shopping Listings: N products found\n- Price Range: $XX - $XX (median: $XX)\n- Top Seller: [name] (XX% market share)\n- Amazon Comparison: [available\u002Fnot checked]\n\n### Top Recommendations\n1. [Critical] ...\n2. [High] ...\n3. [Medium] ...\n\nGenerate a PDF report? Use `\u002Fseo google report`\n```\n",{"name":5,"license":15,"metadata":61,"description":65,"argument-hint":66,"compatibility":67,"user-invocable":68},{"author":62,"version":63,"category":35,"original_author":64},"AgriciDaniel","2.2.6","Matej Marjanovic (Pro Hub Challenge)","E-commerce SEO analysis: Google Shopping visibility, Amazon marketplace intelligence, product schema validation, competitor pricing analysis, and marketplace keyword gaps. Combines on-page product SEO with marketplace data from DataForSEO Merchant API. Use when user says \"ecommerce SEO\", \"product SEO\", \"Google Shopping\", \"marketplace SEO\", \"product schema\", \"Amazon SEO\", \"product listings\", \"shopping ads\", or \"merchant SEO\".\n","\u003Curl or keyword>","Enhanced with DataForSEO Merchant API (optional)",true,"main","2b63f856ce19c2a797929cacabd9e0fc936812fa","plugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-ecommerce",468,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins","https:\u002F\u002Fhol.org\u002Fplugins\u002Fbest-codex-plugins","https:\u002F\u002Fgithub.com\u002Fhashgraph-online","https:\u002F\u002Fhol.org","Open-source standards and developer tools for interoperable AI agents: discovery, identity, communication, payments, privacy and security.","2026-11-11 02:22:54",{"source":8,"skillName":5,"commands":80,"prompt":90,"zipAvailable":68},[81,84,87],{"tool":82,"command":83},"npx","npx skills add hashgraph-online\u002Fawesome-codex-plugins --skill seo-ecommerce",{"tool":85,"command":86},"bunx","bunx skills add hashgraph-online\u002Fawesome-codex-plugins --skill seo-ecommerce",{"tool":88,"command":89},"pnpm","pnpm dlx skills add hashgraph-online\u002Fawesome-codex-plugins --skill seo-ecommerce","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-ecommerce\u002FSKILL.md",[92,98],{"path":93,"resourceType":94,"resourceTypeDesc":95,"sizeBytes":96,"sourceHtmlUrl":97},"references\u002Fmarketplace-endpoints.md","REFERENCE","参考文档",3808,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-ecommerce\u002Freferences\u002Fmarketplace-endpoints.md",{"path":99,"resourceType":94,"resourceTypeDesc":95,"sizeBytes":100,"sourceHtmlUrl":101},"references\u002Fucp-universal-commerce-protocol.md",7336,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-ecommerce\u002Freferences\u002Fucp-universal-commerce-protocol.md",[103,130,155,183,204,218],{"skillNo":104,"name":105,"nameZh":6,"description":106,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":107,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":110,"publishedAt":56},"01M716A6ETNB9B1SQ3GXZC75VR","deja-search","deja-vu memory — search the user's past AI coding sessions with the deja CLI. Holds what they already settled and never wrote into the repo (naming rules, banned or already-tried tools, required checks before merge, preferred values, who owns what). Use before your first edit in a task, before you call a change done or ready to merge, before you recommend a tool, library, design or reviewer, before re-debugging an error that may already be solved, when they say 'didn't we fix this before', 'what did we decide about X' or 'I already have that', and before telling them something on this machine does not exist.","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fvshulcz\u002Fdeja-vu\u002Fskills\u002Fdeja-search\u002FSKILL.md",[],[111,112,113,114,115,116,117,118,119,120,121,39,122,123,124,125,126,127,128,129],"search","deja search","error","ready","never","memory","re","decide","fix","design","debugging","you","done","reviewer","io","change","cli","merge","past",{"skillNo":131,"name":132,"nameZh":6,"description":133,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":107,"licenseFileUrl":6,"sourceHtmlUrl":134,"categories":135,"keywords":136,"publishedAt":56},"01M716A3J2W5SENSE9VGMXB375","deja-reflect","End-of-session reflection and memory curation with deja-vu. Review what was decided, what commands broke and what repaired them, and record durable project rules or decisions with deja remember so the next session starts with them.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fvshulcz\u002Fdeja-vu\u002Fskills\u002Fdeja-reflect\u002FSKILL.md",[],[137,138,139,140,116,141,142,143,144,145,146,147,148,125,149,150,151,152,153,154],"reflect","deja reflect","brew","remember","project rules","project","session","end","reflection","Rules","decisions","review","with","record","github","next","https","node",{"skillNo":156,"name":157,"nameZh":6,"description":158,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":107,"licenseFileUrl":6,"sourceHtmlUrl":159,"categories":160,"keywords":168,"publishedAt":56},"01M715T3RR4BAYSR57HPPTJ0PF","revid","Make, edit, export and post AI videos with Revid (revid.ai) through the Revid MCP server. Use whenever the user wants a short-form or long-form video made (from an idea, a script, a URL, an article, a PDF, a tweet, a product page, their own clips, or a song), wants to find what is going viral on TikTok, YouTube, Instagram or X before making something, wants to edit or re-export an existing Revid project, generate a standalone AI image or clip, make a series episode, or publish and schedule a finished video to connected social accounts. Covers setup (hosted MCP with OAuth, or an API key), the 36 tools, credits, polling and the rules for publishing. Routes to the more specific revid-* skills when one fits.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftmakersas\u002Frevid-skills\u002Fskills\u002Frevid\u002FSKILL.md",[161,162,165],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":163,"categoryName":164,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000016","图像与多媒体",{"categoryNo":166,"categoryName":167,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[157,169,170,171,172,173,142,174,117,175,176,177,178,39,41,179,180,181,52,182],"Video","short-form","standalone","PDF","viral","tiktok","short","social","MCP","song","image","mcp server","schedule","publish",{"skillNo":184,"name":185,"nameZh":6,"description":186,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":107,"licenseFileUrl":6,"sourceHtmlUrl":187,"categories":188,"keywords":189,"publishedAt":56},"01M71569ZM2X3H5RBFK8PVKMK2","review-study","Review a QuestionPunk survey before launch for wording, answer choices, branching, and missing settings. Use for check my survey or review this draft before publishing.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fquestionpunk\u002Fcodex-plugin\u002Fskills\u002Freview-study\u002FSKILL.md",[],[190,191,148,192,193,194,195,196,197,198,199,200,201,202,203],"study","review study","for","answer","missing","survey","publishing","use","check","draft","settings","launch","my","branching",{"skillNo":205,"name":206,"nameZh":6,"description":207,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":107,"licenseFileUrl":6,"sourceHtmlUrl":208,"categories":209,"keywords":210,"publishedAt":56},"01M71567GV0C35YQBY0DPGR86B","manage-study","Find QuestionPunk studies, check status, publish an explicitly requested draft, or retrieve its participant link. Use for find my survey, publish this study, or how many people responded.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fquestionpunk\u002Fcodex-plugin\u002Fskills\u002Fmanage-study\u002FSKILL.md",[],[211,190,212,192,195,197,213,198,199,182,214,215,216,217,202],"manage study","manage","people","how","find","link","status",{"skillNo":219,"name":220,"nameZh":6,"description":221,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":107,"licenseFileUrl":6,"sourceHtmlUrl":222,"categories":223,"keywords":224,"publishedAt":56},"01M71565A8TCA01AZQZRGRYMFZ","create-study","Create a saved QuestionPunk survey draft from a research brief or edit specified questions. Use for requests such as make a customer feedback survey or shorten my onboarding study.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fquestionpunk\u002Fcodex-plugin\u002Fskills\u002Fcreate-study\u002FSKILL.md",[],[225,190,226,227,228,229,192,230,195,231,197,232,233,199,234,235,236,237,238,202],"create study","create","brief","as","feedback","customer feedback","research brief","shorten","saved","research","requests","customer","questions","edit"]