agentsclimarketplace

Mtg argentina playwright

Skill rodrijuarez/mtg-argentina-skills/mtg-argentina-playwright

Claude Code skills for shopping MTG sealed product in Argentina — store lookup, full-catalog scraping, ARS/USD price verification

Install
npx -y skills add rodrijuarez/mtg-argentina-skills --skill mtg-argentina-playwright

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Scrape full catalogs of Argentine MTG stores using Playwright MCP. Walks pagination correctly across Bazaar of Baghdad, Rancho Store TCG, Labatikueva, Al Battle TCG, Phoenix Reborn. Use when surveying stores for deals across product categories (Collector Boxes, Bundles, Secret Lairs, Commander Decks, etc).

SKILL.md

6.1 KB, as published. Nobody here has run it

MTG Argentina — Playwright Full-Catalog Scraper

When to use

  • User asks "what deals are at store X?" or "survey all stores"
  • Comparing prices for a specific product across all Argentine retailers
  • Looking for SLDs / bundles / commander collections / sealed
  • Verifying stock + pricing for a planned purchase

CRITICAL — Walk ALL pages, not just page 1

Most stores paginate with 12 products per page. A category claiming "Secret Lairs" or "Booster Boxes" typically has 3-5 pages. Always check for pagination and walk every page.

Required tools

  • mcp__plugin_playwright_playwright__browser_navigate — load page
  • mcp__plugin_playwright_playwright__browser_evaluate — extract products via JS
  • mcp__plugin_playwright_playwright__browser_wait_for — handle Cloudflare delays
  • mcp__plugin_playwright_playwright__browser_close — cleanup

Standard scraping flow

1. Navigate to category page 1

browser_navigate(url=STORE_CATEGORY_URL)

2. Wait if needed

Phoenix Reborn has Cloudflare → wait 8 seconds:

browser_wait_for(time=8)

3. Extract products + detect pagination

() => {
  const products = [];
  document.querySelectorAll('li.product, .product, .item-product, .js-item-product').forEach(card => {
    const name = card.querySelector('.woocommerce-loop-product__title, h2, h3, .name, .js-item-name')?.textContent?.trim();
    const price = card.querySelector('.price, .woocommerce-Price-amount, .js-price-display, .item-price')?.textContent?.trim();
    const stock = card.classList.contains('outofstock') ? 'OOS' : 'in stock';
    if (name) products.push({ name, price, stock });
  });
  const pages = [...document.querySelectorAll('.page-numbers, .pagination a')]
    .map(a => a.textContent.trim())
    .filter(t => /^\d+$/.test(t));
  return { products, maxPage: pages.length ? Math.max(...pages.map(Number)) : 1 };
}

4. Walk pagination — URL pattern per store

StorePagination URL pattern
Bazaarhttps://bazaarmtg.com/categoria-producto/magic-the-gathering/<category>/page/N/
Ranchohttps://ranchostoretcg.com.ar/categoria-producto/magic/page/N/
Phoenix Rebornhttps://phoenixreborn.com.ar/inicio/mtg/page/N/
Labatikuevahttps://www.labatikuevastore.com/magic-the-gathering/?mpage=N (Tiendanube)
Al Battlehttps://albattletcg.com/magic/<category>/?mpage=N (Tiendanube)

5. Loop until last page

# Pseudocode
page = 1
all_products = []
while True:
    navigate(category_url + f"/page/{page}/")
    result = evaluate(scrape_js)
    if not result.products:
        break
    all_products.extend(result.products)
    if page >= result.maxPage:
        break
    page += 1

6. Close browser

browser_close()

Store-specific notes

Bazaar of Baghdad (bazaarmtg.com)

  • WooCommerce-based, 12 products/page
  • Cash discount: not explicit on site
  • Bank transfer discount: assume 5% (verify if needed)
  • Categories: /categoria-producto/magic-the-gathering/<slug>/
    • secret-lair (5 pages, 60 SLDs)
    • booster-box (5 pages, 60 boxes)
    • bundle (2 pages, 14 bundles)
    • spellbook (1 page)
    • decks-mazos (1 page)
    • commander-collection (1 page)
    • pre-release (1 page)

Rancho Store TCG (ranchostoretcg.com.ar)

  • WooCommerce-based, 12 products/page
  • Cash discount: 10% (efectivo)
  • Bank transfer discount: 5%
  • Best for: Marvel preorders, Hobbit/RF preorders, Lorwyn Collector
  • Category: /categoria-producto/magic/page/N/
  • 10+ pages of total Magic catalog

Labatikueva (labatikuevastore.com)

  • Tiendanube platform — DIFFERENT pagination
  • URL: /magic-the-gathering/?mpage=N
  • Need to scroll to load products (JS lazy-loading)
  • Products: scroll 5-8 times before scraping
  • Cash discount: ~5%
  • Selector: .js-item-product, .item-card, [data-product-id]

Al Battle TCG (albattletcg.com)

  • Tiendanube — same as Labatikueva
  • Cash/transfer discount: 10% (best!)
  • Often deep markdowns on Play Boxes (15-25% off)
  • Categories: /magic/<sub>/?mpage=N
    • booster-box1 = play boxes
    • collector-booster-box = collectors

Phoenix Reborn (phoenixreborn.com.ar)

  • WooCommerce + Cloudflare protection
  • Must wait 5-8 seconds for Cloudflare to clear
  • Discount: variable
  • Best for: Hobbit Collector (specialty)
  • URL: /inicio/mtg/page/N/

Price interpretation

Argentine prices use periods as thousand separators:

  • $ 800.000,00 = 800,000 ARS
  • $ 1.740.000,00 = 1,740,000 ARS

Always convert to USD using the CURRENT exchange rate (ask the user — never assume from memory). Argentine peso moves weekly.

Apply discount AFTER conversion:

  • Cash: -10% (Rancho, Al Battle)
  • Transfer: -5% (most stores)

Common pitfalls

  • Don't trust page 1 only — most categories have 3-5 pages
  • Don't skip pagination detection — walk every page
  • Don't forget Cloudflare wait for Phoenix Reborn (5-8s)
  • Don't ignore Tiendanube scroll for Labatikueva/Al Battle (lazy-loaded)
  • Don't conflate ARS thousand-separator periods with decimal points
  • Don't apply cash discount twice if site already shows discounted price
  • Don't assume exchange rate — always confirm with the user

Output format

Always produce:

  1. Total product count across all pages
  2. Best deals ranked by % below market
  3. Cross-store comparison for same product when available
  4. TCG market verification for suspected deals via Scryfall/MTGStocks

Example workflow

User: "Survey Bazaar Secret Lairs"

  1. Navigate page 1 → extract 12 products + detect 5 total pages
  2. Navigate page 2 → extract 12 products
  3. Navigate page 3 → extract 12 products
  4. Navigate page 4 → extract 12 products
  5. Navigate page 5 → extract 12 products
  6. Close browser
  7. Verify top candidates via TCGPlayer/MTGStocks
  8. Report ranked deals

Gives 0 of the 12 instructions most e2e browser skills give

Counted across 407 of the 410 authors here whose files we hold, read 2026-08-06

  • use page object model patternin 35 of 407, across 25 files
  • Snapshot to get element refsin 24 of 407, across 14 files
  • keep tests independentin 23 of 407, across 18 files
  • Interact using refs from the latest snapshotin 23 of 407, across 11 files
  • clean up test data after each testin 21 of 407, across 15 files
  • test user behavior not implementationin 20 of 407, across 14 files
  • quarantine flaky tests explicitlyin 19 of 407, across 10 files
  • wait for specific network conditionsin 18 of 407, across 8 files
  • re-snapshot after navigation or dom changesin 17 of 407, across 10 files
  • Detect running dev servers before writing test codein 17 of 407, across 7 files
  • use web-first assertionsin 17 of 407, across 14 files
  • capture screenshots or videos on test failurein 17 of 407, across 14 files

Said here and by no other author read

  • walk every pagination page
  • use playwright browser_navigate to load pages
  • use playwright browser_evaluate to extract products
  • use playwright browser_wait_for to handle delays
  • scroll multiple times for lazy-loaded products
  • convert prices using the current exchange rate

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.