mcpField
S
seo-ecommerce

seo-ecommerce

github.com/infrasity-labsMarketing & growth15088 installsUpdated 18w ago
Repository

About seo-ecommerce

seo-ecommerce is an SEO analysis skill for product pages, structured product data, and marketplace performance, aimed at store operators and SEO practitioners. It can audit pages on its own or use DataForSEO for Google Shopping, Amazon, and pricing analysis.

Key features

  1. 01Audit product-page titles, content, images, and links
  2. 02Validate and generate Product structured data
  3. 03Analyze Google Shopping products and sellers
  4. 04Compare Google Shopping and Amazon
  5. 05Find organic and Shopping keyword gaps
  6. 06Check UCP profiles

Use cases

  1. 01Audit product-page SEO and structured data
  2. 02Compare product prices and seller distribution
  3. 03Find gaps in organic and Shopping visibility
  4. 04Check a store's declared UCP profile

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/infrasity-labs/dev-gtm-claude-skills --skill seo-ecommerce

After installing, type/seo-ecommercein Claude Code to confirm it loaded.

Bundled filesreferences/marketplace-endpoints.mdreferences/ucp-universal-commerce-protocol.md

Details

From the project README

E-commerce SEO Analysis

Comprehensive product page optimization, marketplace intelligence, and competitive pricing analysis. Works standalone (on-page + schema) and with DataForSEO Merchant API for live Google Shopping and Amazon data.

Commands

CommandPurposeDataForSEO?
/seo ecommerce <url>Full e-commerce SEO analysis of a product page or storeOptional
/seo ecommerce products <keyword>Google Shopping competitive analysisRequired
/seo ecommerce gaps <domain>Keyword gap: organic vs Shopping visibilityRequired
/seo ecommerce schema <url>Product schema validation and enhancementNo

1. Product Page Analysis (No DataForSEO Needed)

Fetch and parse any product page for on-page SEO quality.

Workflow
1. python scripts/fetch_page.py <url>         → raw HTML
2. python scripts/parse_html.py --url <url>   → SEO elements
3. Analyze product-specific signals (below)
Product SEO Checklist
Title Tag
  • Contains primary product keyword
  • Includes brand name
  • Under 60 characters (no truncation in SERPs)
  • Format: [Product Name] - [Key Feature] | [Brand]
Meta Description
  • Contains product keyword + benefit
  • Includes price or "from $XX" (triggers rich snippet interest)
  • Call-to-action present (Shop now, Buy, Free shipping)
  • Under 155 characters
Heading Structure
  • Single H1 matching primary product name
  • H2s for: Features, Specifications, Reviews, Related Products
  • No duplicate H1 tags across product variants
Product Images
  • Alt text includes product name + distinguishing feature
  • File names are descriptive (not IMG_001.jpg)
  • WebP format served (with JPEG fallback)
  • At least 3 images per product (hero, detail, lifestyle)
  • Image dimensions >= 800px for Google Shopping eligibility
  • Lazy loading on below-fold images only
Internal Linking
  • Breadcrumb navigation: Home > Category > Subcategory > Product
  • Related products section (cross-sell / upsell)
  • Link back to category page with keyword-rich anchor
  • Reviews section links to full review page (if separate)
Content Quality
  • Unique product description (not manufacturer copy-paste)
  • Word count >= 200 for product description body
  • Specs table present (not just prose)
  • User reviews on-page (UGC signals)
Scoring
CategoryWeightCriteria
Schema completeness25%Required + recommended Product fields
Title & meta15%Keyword placement, length, format
Image optimization20%Alt text, format, sizing, count
Content quality20%Unique description, specs, reviews
Internal linking10%Breadcrumbs, related products, categories
Technical10%Page speed, mobile rendering, canonical

2. Google Shopping Intelligence (DataForSEO Merchant API)

Live competitive analysis from Google Shopping results.

Cost Guardrail (MANDATORY)

Before EVERY Merchant API call:

python scripts/dataforseo_costs.py check merchant_google_products_search
  • "status": "approved" -- proceed
  • "status": "needs_approval" -- show cost, ask user
  • "status": "blocked" -- stop, inform user

After each call:

python scripts/dataforseo_costs.py log merchant_google_products_search <cost>
Workflow
# Product search: who sells what at what price
python scripts/dataforseo_merchant.py search "<keyword>" --marketplace google

# Seller analysis: merchant ratings and dominance
python scripts/dataforseo_merchant.py sellers "<keyword>"

# Normalize results for analysis
python scripts/dataforseo_normalize.py results.json --module merchant
Analysis Outputs
Pricing Intelligence
  • Price distribution: min, max, median, P25, P75
  • Price outliers (> 2 standard deviations from median)
  • Price-to-rating correlation
  • Currency normalization to USD (or user-specified)
Seller Landscape
  • Top 10 sellers by listing count
  • Merchant rating distribution
  • Free shipping prevalence
  • New vs established sellers
Product Listing Quality
  • Title keyword patterns in top listings
  • Average rating and review count benchmarks
  • Image count per listing
  • Availability status distribution

Load references/marketplace-endpoints.md for full API parameter details.


3. Amazon Marketplace (DataForSEO)

Cross-marketplace intelligence comparing Google Shopping and Amazon.

Cost Guardrail (MANDATORY)
python scripts/dataforseo_costs.py check merchant_amazon_products_search

Amazon endpoints are in the warn_endpoints set -- always requires user approval.

Workflow
# Amazon product search
python scripts/dataforseo_merchant.py search "<keyword>" --marketplace amazon

# Cross-marketplace comparison
python scripts/dataforseo_merchant.py compare "<keyword>"
Cross-Marketplace Report
MetricGoogle ShoppingAmazon
Avg price$$
Median ratingX.XX.X
Avg review countNN
Top seller share%%
Free shipping %%%

4. Marketplace Keyword Gaps

Identify mismatches between organic and Shopping visibility.

Workflow
  1. Fetch organic rankings via seo-dataforseo: dataforseo_labs_google_ranked_keywords for domain
  2. Fetch Google Shopping presence via Merchant API: merchant_google_products_search for top organic keywords
  3. Cross-reference results
Gap Types
Gap TypeMeaningAction
Organic OnlyRanks organically but no Shopping adsCreate Google Merchant Center feed, bid on these keywords
Shopping OnlyShopping visibility but weak/no organicCreate content (buying guides, comparison pages) for these keywords
Both PresentVisible in both channelsOptimize: ensure price consistency, enhance schema
NeitherNo visibility in eitherLow priority unless high volume
Output Format
## Keyword Gap Analysis: example.com

### Opportunities: Organic → Shopping (12 keywords)
| Keyword | Organic Pos | Volume | CPC | Recommended Action |
|---------|------------|--------|-----|-------------------|

### Opportunities: Shopping → Organic (8 keywords)
| Keyword | Shopping Rank | Volume | CPC | Content Type Needed |
|---------|-------------|--------|-----|-------------------|

5. Product Schema Enhancement

Validate and generate Product schema following Google's current requirements.

Required Properties (Google Merchant)
{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "",
  "image": [""],
  "description": "",
  "brand": { "@type": "Brand", "name": "" },
  "offers": {
    "@type": "Offer",
    "url": "",
    "priceCurrency": "USD",
    "price": "0.00",
    "availability": "https://schema.org/InStock",
    "seller": { "@type": "Organization", "name": "" }
  }
}
Recommended Properties (Enhance Rich Results)
  • sku -- product identifier
  • gtin13 / gtin14 / mpn -- global trade identifiers
  • aggregateRating -- star rating + review count
  • review -- individual reviews (minimum 1)
  • color, material, size -- variant attributes
  • shippingDetails -- ShippingDetails with rate and delivery time
  • hasMerchantReturnPolicy -- MerchantReturnPolicy with type and days
Validation Rules
  1. price must be a number string, not "$29.99" (no currency symbol)
  2. availability must use full Schema.org URL enum
  3. image should be array with >= 1 high-res image URL
  4. priceCurrency must be ISO 4217 (USD, EUR, GBP)
  5. brand.name must not be empty or "N/A"
  6. Dates in priceValidUntil must be ISO 8601
  7. If aggregateRating present: ratingValue and reviewCount required
Schema Scoring
CompletenessScore
All required fields50/100
+ aggregateRating65/100
+ sku/gtin/mpn75/100
+ shippingDetails85/100
+ merchantReturnPolicy90/100
+ reviews (3+)100/100

Cross-Skill Integration

SkillIntegration Point
seo-schemaDelegates Product schema generation; reuses validation logic
seo-imagesProduct image audit (alt text, format, dimensions) — plus DigitalSourceType: TrainedAlgorithmicMedia IPTC label for AI-generated product images (Merchant Center requirement)
seo-contentProduct description E-E-A-T and uniqueness analysis
seo-dataforseoOrganic keyword rankings for gap analysis
seo-technicalCore Web Vitals for product pages (LCP on hero image)
seo-googleGoogle Merchant Center feed validation via GSC

UCP — Universal Commerce Protocol (forward-looking)

Google-led standard (co-developed with Shopify, Etsy, Walmart, Wayfair, Visa, Mastercard, etc.) for letting AI agents discover, negotiate, and transact with merchants without one-off integrations. Already powers direct buying from AI Mode and Gemini.

Merchants already on Google Merchant Center with clean Product schema can declare a UCP profile at /.well-known/ucp listing capabilities (dev.ucp.shopping.checkout, .fulfillment, .discount). See references/ucp-universal-commerce-protocol.md for audit criteria, capability examples, and the relationship to AP2 (Agent Payments Protocol).

Audit command
# Discover and validate the UCP profile
python scripts/ucp_check.py https://store.example.com --json

# With endpoint reachability probes (HEAD each declared capability)
python scripts/ucp_check.py https://store.example.com --probe-endpoints --json

The script returns: profile presence, version, declared capabilities, structural issues (missing fields, unknown capability IDs), and (with --probe-endpoints) per-endpoint reachability. SSRF-blocked endpoints are reported explicitly. Missing profile is reported as opportunity, not failure — UCP adoption is early.


Error Handling

ErrorCauseResponse
No Product schema foundPage lacks JSON-LDAnalyze page content, generate recommended schema
DataForSEO credentials missingEnv vars not setRun analysis without marketplace data, note limitation
Cost check blockedDaily budget exceededInform user, offer free-only analysis
Empty Shopping resultsNo products for keywordSuggest broader keyword, check location settings
Amazon API timeoutNetwork/rate limitRetry with backoff, fall back to Google-only
Invalid URLMalformed inputValidate via google_auth.validate_url(), show error
Non-product pageURL is category/homepageDetect page type, suggest /seo ecommerce schema instead

Output Template

## E-commerce SEO Report: [URL or Keyword]

### Overall Score: XX/100

### Product Page SEO
- Schema Completeness: XX/100
- Title & Meta: XX/100
- Image Optimization: XX/100
- Content Quality: XX/100
- Internal Linking: XX/100

### Marketplace Intelligence (if DataForSEO available)
- Google Shopping Listings: N products found
- Price Range: $XX - $XX (median: $XX)
- Top Seller: [name] (XX% market share)
- Amazon Comparison: [available/not checked]

### Top Recommendations
1. [Critical] ...
2. [High] ...
3. [Medium] ...

Generate a PDF report? Use `/seo google report`

Comments

Markdown supported