AGENT SKILLBY AGRICIDANIEL
SEO ecommerce
AT A GLANCE
SEO ecommerce is an SEO agent skill from agricidaniel. Comprehensive product page optimization, marketplace intelligence, and competitive pricing analysis. It is published in the agricidaniel/claude-seo GitHub repository (10.3K stars) under the MIT license. Install it with: npx skills add agricidaniel/claude-seo --skill seo-ecommerce
- SOURCE REPOSITORY
- agricidaniel/claude-seo (opens GitHub in a new tab)
- REPO STARS
- SOURCE REPOSITORY
- LICENSE
- MIT
- CATEGORIES
- SKILL.MD SIZE
- 19.9 KB600 LINES
QUICK ANSWER
- WHAT IT IS01
- Comprehensive product page optimization, marketplace intelligence, and competitive pricing analysis. What sets it apart is how it narrows search and SEO workflows into one specific workflow rather than a broad, generic prompt.
- INPUTS02
- Context for search and SEO workflows: your goals, audience, constraints, and any source material the skill asks for.
- OUTPUT03
- A ready-to-use result for search and SEO workflows: the analysis, copy, or recommendations the agent produces.
INSTALL
One command adds this skill from its source repository.
npx skills add agricidaniel/claude-seo --skill seo-ecommerceREAD THE SKILL.MD BELOW BEFORE YOU RUN IT. SKILLS INSTRUCT YOUR AGENT.
SKILL.MD
The full file, as published in the source repository. Copy it, download it or open it on GitHub.
ON THIS PAGE · 27
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#
| Command | Purpose | DataForSEO? |
|---|---|---|
/seo ecommerce <url> | Full e-commerce SEO analysis of a product page or store | Optional |
/seo ecommerce products <keyword> | Google Shopping competitive analysis | Required |
/seo ecommerce gaps <domain> | Keyword gap: organic vs Shopping visibility | Required |
/seo ecommerce schema <url> | Product schema validation and enhancement | No |
1. Product Page Analysis (No DataForSEO Needed)#
Fetch and parse any product page for on-page SEO quality.
Workflow#
1. python3 scripts/render_page.py <url> --mode auto → raw/rendered HTML
2. python3 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#
| Category | Weight | Criteria |
|---|---|---|
| Schema completeness | 25% | Required + recommended Product fields |
| Title & meta | 15% | Keyword placement, length, format |
| Image optimization | 20% | Alt text, format, sizing, count |
| Content quality | 20% | Unique description, specs, reviews |
| Internal linking | 10% | Breadcrumbs, related products, categories |
| Technical | 10% | 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:
python3 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:
python3 scripts/dataforseo_costs.py log merchant_google_products_search <cost>Workflow#
# Product search: who sells what at what price
python3 scripts/dataforseo_merchant.py search "<keyword>" --marketplace google
# Seller analysis: merchant ratings and dominance
python3 scripts/dataforseo_merchant.py sellers "<keyword>"
# Normalize results for analysis
python3 scripts/dataforseo_normalize.py results.json --module merchantAnalysis 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)#
python3 scripts/dataforseo_costs.py check merchant_amazon_products_searchAmazon endpoints are in the warn_endpoints set -- always requires user approval.
Workflow#
# Amazon product search
python3 scripts/dataforseo_merchant.py search "<keyword>" --marketplace amazon
# Cross-marketplace comparison
python3 scripts/dataforseo_merchant.py compare "<keyword>"Cross-Marketplace Report#
| Metric | Google Shopping | Amazon |
|---|---|---|
| Avg price | $ | $ |
| Median rating | X.X | X.X |
| Avg review count | N | N |
| Top seller share | % | % |
| Free shipping % | % | % |
4. Marketplace Keyword Gaps#
Identify mismatches between organic and Shopping visibility.
Workflow#
- Fetch organic rankings via seo-dataforseo:
dataforseo_labs_google_ranked_keywordsfor domain - Fetch Google Shopping presence via Merchant API:
merchant_google_products_searchfor top organic keywords - Cross-reference results
Gap Types#
| Gap Type | Meaning | Action |
|---|---|---|
| Organic Only | Ranks organically but no Shopping ads | Create Google Merchant Center feed, bid on these keywords |
| Shopping Only | Shopping visibility but weak/no organic | Create content (buying guides, comparison pages) for these keywords |
| Both Present | Visible in both channels | Optimize: ensure price consistency, enhance schema |
| Neither | No visibility in either | Low 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 identifiergtin13/gtin14/mpn-- global trade identifiersaggregateRating-- star rating + review countreview-- individual reviews (minimum 1)color,material,size-- variant attributesshippingDetails-- ShippingDetails with rate and delivery timehasMerchantReturnPolicy-- MerchantReturnPolicy with type and days
Validation Rules#
pricemust be a number string, not "$29.99" (no currency symbol)availabilitymust use full Schema.org URL enumimageshould be array with >= 1 high-res image URLpriceCurrencymust be ISO 4217 (USD, EUR, GBP)brand.namemust not be empty or "N/A"- Dates in
priceValidUntilmust be ISO 8601 - If
aggregateRatingpresent:ratingValueandreviewCountrequired
Schema Scoring#
| Completeness | Score |
|---|---|
| All required fields | 50/100 |
| + aggregateRating | 65/100 |
| + sku/gtin/mpn | 75/100 |
| + shippingDetails | 85/100 |
| + merchantReturnPolicy | 90/100 |
| + reviews (3+) | 100/100 |
Cross-Skill Integration#
| Skill | Integration Point |
|---|---|
| seo-schema | Delegates Product schema generation; reuses validation logic |
| seo-images | Product image audit (alt text, format, dimensions) — plus DigitalSourceType: TrainedAlgorithmicMedia IPTC label for AI-generated product images (Merchant Center requirement) |
| seo-content | Product description E-E-A-T and uniqueness analysis |
| seo-dataforseo | Organic keyword rankings for gap analysis |
| seo-technical | Core Web Vitals for product pages (LCP on hero image) |
| seo-google | Google 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
python3 scripts/ucp_check.py https://store.example.com --json
# With endpoint reachability probes (HEAD each declared capability)
python3 scripts/ucp_check.py https://store.example.com --probe-endpoints --jsonThe 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#
| Error | Cause | Response |
|---|---|---|
| No Product schema found | Page lacks JSON-LD | Analyze page content, generate recommended schema |
| DataForSEO credentials missing | Env vars not set | Run analysis without marketplace data, note limitation |
| Cost check blocked | Daily budget exceeded | Inform user, offer free-only analysis |
| Empty Shopping results | No products for keyword | Suggest broader keyword, check location settings |
| Amazon API timeout | Network/rate limit | Retry with backoff, fall back to Google-only |
| Invalid URL | Malformed input | Validate via google_auth.validate_url(), show error |
| Non-product page | URL is category/homepage | Detect 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`Supporting file: references/marketplace-endpoints.md#
DataForSEO Merchant API Reference#
Endpoint details for Google Shopping and Amazon marketplace data.
Endpoints#
Google Shopping Products#
| Field | Value |
|---|---|
| Endpoint | merchant_google_products_search |
| Method | POST (task) / GET (results) |
| Cost | $0.02 per call |
| Queue | Standard (60-80% savings vs live) |
Parameters:
keyword(required) -- search querylocation_code(default: 2840 = US) -- DataForSEO location IDlanguage_code(default: "en") -- languageprice_min/price_max(optional) -- filter by price rangesort_by(optional) -- "relevance", "price_low_to_high", "price_high_to_low", "rating"depth(optional, default: 100) -- number of results
Response fields:
title-- product listing titleprice-- numeric price valuecurrency-- currency code (USD, EUR, etc.)seller-- merchant namerating-- product rating (float, 0-5)reviews_count-- number of reviewsurl-- product listing URLimage_url-- product image URLavailability-- "in_stock", "out_of_stock", "preorder"delivery_info-- shipping details textproduct_id-- Google Shopping product ID
Google Shopping Sellers#
| Field | Value |
|---|---|
| Endpoint | merchant_google_sellers_search |
| Method | POST (task) / GET (results) |
| Cost | $0.02 per call |
Parameters: Same as products search.
Response fields:
seller_name-- merchant nameseller_rating-- merchant rating (float)seller_reviews_count-- merchant review countprice-- price offered by this sellerdelivery_info-- shipping and delivery texturl-- seller listing URL
Amazon Products#
| Field | Value |
|---|---|
| Endpoint | merchant_amazon_products_search |
| Method | POST (task) / GET (results) |
| Cost | $0.02 per call |
| Note | In warn_endpoints -- always requires user approval |
Parameters:
keyword(required) -- search querylocation_code(default: 2840 = US)language_code(default: "en")depth(optional, default: 100)sort_by(optional) -- "relevance", "price_low_to_high", "price_high_to_low", "avg_customer_review"
Response fields:
title-- product titleprice-- numeric pricecurrency-- currency codeseller-- seller/brand namerating-- star rating (float, 0-5)reviews_count-- review counturl-- Amazon product URLimage_url-- product imageavailability-- stock statusasin-- Amazon Standard Identification Numberis_prime-- Prime eligibility (boolean)is_best_seller-- Best Seller badge (boolean)
Task/Poll Pattern#
All Merchant endpoints use the standard DataForSEO queue pattern:
- POST task with parameters to create endpoint
- Poll for results with exponential backoff (2s, 4s, 8s, max 60s)
- GET completed results by task ID
This saves 60-80% compared to live endpoints.
Rate Limits#
- Max 2000 tasks per minute (across all endpoints)
- Max 30,000 tasks per day on standard plans
- Backoff on HTTP 429: wait 60 seconds, then retry
Data Normalization#
When consuming responses, normalize:
| Field | Raw | Normalized |
|---|---|---|
| Price | String "$29.99" or float | Float 29.99 |
| Currency | Mixed formats | ISO 4217 code (USD, EUR, GBP) |
| Availability | Various strings | Enum: in_stock, out_of_stock, preorder, unknown |
| Rating | Integer or float | Float rounded to 1 decimal |
| Reviews | String or int | Integer |
Use scripts/dataforseo_normalize.py --module merchant for automatic normalization.
Cost Reference#
See skills/seo-dataforseo/references/cost-tiers.md for the full pricing table,
budget presets, and cost reduction tips. All Merchant endpoints are $0.02/call
on standard queue.
Supporting file: references/ucp-universal-commerce-protocol.md#
UCP — Universal Commerce Protocol (May 2026)#
UCP is a Google-led open standard, co-developed with Shopify and endorsed by Etsy, Target, Walmart, Wayfair, plus payment partners (Stripe, Visa, Mastercard, Adyen, Amex). Its purpose: let AI agents discover, negotiate, and transact with merchants without one-off integrations.
For commerce sites, UCP sits next to Google Merchant Center feeds and Google Business Profile as the third leg of agent-era discovery. Adoption is early but the cost of declaring a profile is low.
Primary source: Google AI optimization guide references UCP; the spec itself is co-published at developer.google.com / merchant.google.com (consult Google for the current canonical URL — the standard is moving).
What UCP is and isn't#
| What it is | What it isn't |
|---|---|
| A capability-declaration + negotiation protocol | A new payment processor |
| Transport-agnostic (REST, MCP, A2A) | A replacement for Merchant Center feeds |
| Compatible with AP2 (Agent Payments Protocol) for cryptographic user-consent proof on autonomous purchases | A way to skip being merchant of record |
| Adopted by AI Mode in Search and Gemini today | A "ranking factor" — Google has not framed it that way |
Merchants stay Merchant of Record under UCP — they keep customer relationships and post-purchase ownership.
How to declare a UCP profile#
Publish a profile at /.well-known/ucp describing capabilities and versions.
The general shape (consult the live spec for exact field names):
{
"version": "1.0",
"capabilities": [
{
"id": "dev.ucp.shopping.checkout",
"version": "1.0",
"endpoint": "https://api.example.com/ucp/checkout"
},
{
"id": "dev.ucp.shopping.fulfillment",
"version": "1.0",
"endpoint": "https://api.example.com/ucp/fulfillment"
},
{
"id": "dev.ucp.shopping.discount",
"version": "1.0",
"endpoint": "https://api.example.com/ucp/discount"
}
],
"merchant": {
"name": "Example Co.",
"id": "merchant-center-id-here"
}
}Platforms (AI Mode in Search, Gemini, and eventually others) auto-discover the profile and negotiate. Google has built a reference implementation powering direct buying from AI Mode and Gemini.
Common capabilities to declare#
| Capability ID (shape) | Purpose |
|---|---|
dev.ucp.shopping.checkout | Initiate checkout, return totals + payment intent |
dev.ucp.shopping.fulfillment | Quote shipping options and delivery windows |
dev.ucp.shopping.discount | Apply promo codes / loyalty discounts at quote time |
dev.ucp.shopping.cart | Add / remove / update items in agent-managed carts |
Exact identifiers are governed by the live spec. The pattern is
dev.ucp.<domain>.<verb> with semantic versioning.
What claude-seo audits#
/seo ecommerce <url> should report:
- Presence: does
/.well-known/ucpresolve to a valid JSON document? - Capability coverage: which capabilities are declared? Flag missing checkout / fulfillment / discount as opportunities, not failures (the protocol is early).
- Endpoint reachability: are declared endpoints HTTPS, valid TLS, not returning 5xx?
- Version coherence: does the declared protocol version match a known release? Flag pre-release or unrecognized versions.
The audit should not score the absence of UCP as a critical failure today — adoption is early. Frame it as a forward-looking opportunity, especially for merchants already on Google Merchant Center.
How UCP interacts with existing surfaces#
| Existing surface | Relationship to UCP |
|---|---|
| Google Merchant Center feed | Required upstream — UCP capabilities reference Merchant Center products by ID |
| Google Business Profile | Independent — UCP is product / order; GBP is store / location |
Product schema (hasMerchantReturnPolicy, shippingDetails) | Complementary — UCP exposes the same data at the API layer; schema exposes it at the page layer |
| AP2 (Agent Payments Protocol) | Pair — UCP handles discovery + checkout structure; AP2 handles cryptographic proof of user consent |
A merchant that already has clean Merchant Center feeds, complete Product schema, and a checkout API can declare a UCP profile in a sprint.
Audit posture#
- Tier 1 (e-commerce sites already on Merchant Center): recommend declaring a UCP profile as a forward-looking opportunity.
- Tier 2 (DTC sites not on Merchant Center): do not recommend UCP yet — Merchant Center is the prerequisite to most flows.
- Tier 3 (informational / B2B sites): ignore UCP entirely.
Last verified#
2026-05-18. The standard is moving fast. Re-check when:
- The canonical spec URL stabilizes (currently published on Google developer docs, but exact path may change).
- AP2 reaches stable release.
- Additional platforms (beyond AI Mode + Gemini) announce UCP consumption.
FAQ
07 QUESTIONS
01What is the SEO ecommerce agent skill?
Comprehensive product page optimization, marketplace intelligence, and competitive pricing analysis. It is listed under SEO in the 100xLab agent skills directory.
02How do I install SEO ecommerce in Cursor, Claude Code, or Codex?
Run npx skills add agricidaniel/claude-seo --skill seo-ecommerce in the project where you want it, then ask your agent for the skill by name. The --skill flag installs only SEO ecommerce, not every skill in the repository.
03What does the SEO ecommerce SKILL.md cover?
The SKILL.md includes sections on Commands, Product Page Analysis (No DataForSEO Needed), Workflow, Product SEO Checklist, Scoring and Google Shopping Intelligence (DataForSEO Merchant API). Read the full text on this page or in plain markdown at /resources/agent-skills/agricidaniel-claude-seo--seo-ecommerce--ibicem/raw.
04Which agents can use SEO ecommerce?
SEO ecommerce installs with the cross-agent skills installer (npx skills add), which sets it up for agents such as Claude Code, Cursor and Codex. Each agent loads the SKILL.md when you ask for the skill by name.
05What license is SEO ecommerce under?
The agricidaniel/claude-seo repository declares the MIT license. Read the license file in the repository before you copy or redistribute the skill.
06Is SEO ecommerce free to use?
Reading, copying and installing SEO ecommerce costs nothing: it is published in a public GitHub repository under the MIT license. Reuse and redistribution follow that license.
07Where is the source of SEO ecommerce?
SEO ecommerce comes from https://github.com/agricidaniel/claude-seo, which has 10.3K GitHub stars. The SKILL.md is at https://github.com/agricidaniel/claude-seo/blob/HEAD/skills/seo-ecommerce/SKILL.md. The author is agricidaniel.
Need an agent workflow built around your stack?
Tell us the workflow you want automated. We reply within 4 working hours (IST).
ATTRIBUTION
SEO ecommerce was written by its original authors and is published in agricidaniel/claude-seo (opens GitHub in a new tab) under the MIT license. All rights stay with the original authors.
100xLab did not write, maintain or endorse this skill. This page lists it for discovery. Repo stars belong to the source repository, not to the skill. Review any skill before you install it.