Browse MercadoLibre Argentina category pages, capture product cards (price ARS, installments, shipping, MercadoLíder tier, sponsorship), compare listings on landed cost and seller trust, and diff a saved listing for price/stock/shipping/reputation changes. Read-only. Documents the gz/account-verification anti-bot gate that blocks search and product-detail pages from anonymous browser sessions.
Works with
AI-first code editor with Composer
Before installing skills in Cursor, ensure your development environment meets these requirements:
node --versionsearch-compare-monitorExecute the skills CLI command in your project's root directory to begin installation:
Fetches search-compare-monitor from mercadolibre.com.ar/search-compare-monitor-n9hgxe and configures it for Cursor.
The CLI shows a list of agents. Use arrow keys and space to select Cursor:
Confirm successful installation by checking the skill directory location:
Restart Cursor to activate search-compare-monitor. Access via /search-compare-monitor in your agent's command palette.
We perform automated surface-level scans (Gen AI Scanner, Socket, Snyk) during installation. These checks detect common vulnerabilities but do not guarantee complete security. Always review skill source code and verify the publisher's reputation before production use.
Skills execute code in your environment. Always review source, verify the publisher, and test in isolation before production.
Submit your Claude Code skill and start earning
Automate repetitive workflows and reduce manual effort
Example
Generate reports, summarize documents, draft communications
Save 3-5 hours per week on routine tasks
Learn new skills, understand complex topics, get expert guidance
Example
Explain concepts, provide examples, suggest learning resources
Accelerate learning and skill development by 2x
Enhance output quality through reviews, suggestions, and refinements
Example
Review drafts, suggest improvements, catch errors
Improve work quality by 30-40% with less effort
0
total installs
0
this week
0
upvotes
Run in your terminal
0
installs
0
this week
—
stars
| name | search-compare-monitor |
| title | 'MercadoLibre Argentina Search, Compare, and Monitor' |
| description | >- Browse MercadoLibre Argentina category pages, capture product cards (price ARS, installments, shipping, MercadoLíder tier, sponsorship), compare listings on landed cost and seller trust, and diff a saved listing for price/stock/shipping/reputation changes. Read-only. Documents the gz/account-verification anti-bot gate that blocks search and product-detail pages from anonymous browser sessions. |
| website | mercadolibre.com.ar |
| category | marketplace |
| tags | - marketplace - ecommerce - argentina - comparison - monitoring - anti-bot - read-only |
| source | 'browserbase: agent-runtime 2026-05-20' |
| updated | '2026-05-20' |
| recommended_method | hybrid |
| alternative_methods | [] |
| verified | true |
| proxies | true |
Research products on MercadoLibre Argentina (mercadolibre.com.ar): keyword search, category browsing, listing inspection, side-by-side comparison across sellers, and longitudinal monitoring of a saved listing for price / stock / shipping / seller-reputation changes. Returns structured product, seller, and shipping data in ARS. Read-only — never adds to cart, never books a purchase, never contacts a seller. Strict country lock: all queries hit mercadolibre.com.ar; if the user asks for another market, branch to a sibling skill, do not mix MLA with MLB/MLM/MCO/etc.
articulo.mercadolibre.com.ar/MLA-12345... URL daily — alert me if price drops > 5%, stock changes, or shipping cost moves."/p/MLA###### (catalog product) and rank the 20+ seller offers by total landed cost (price + shipping)."MercadoLibre's web surface (mercadolibre.com.ar) is gated by a multi-tier anti-bot system from automation IPs. There is no anonymous browser path to search results, individual listings (articulo.), or catalog product detail pages (/p/MLA######) — every direct request to those URL patterns server-side redirects to https://www.mercadolibre.com.ar/gz/account-verification?go=... which forces login or registration before the target page renders. The walls observed across 4 iterations (verified+proxies, verified-only, with _bm_skipml=true bypass cookie set, with cookies accepted, internal click vs direct URL) are reproducible — only homepage / /ofertas / /c/{category-slug} pages render without the gate.
The two practical paths:
A. Authenticated browser session (recommended for general use). Log in once, persist cookies on the session, then all of /p/MLA######, articulo.mercadolibre.com.ar/MLA-..., and listado.mercadolibre.com.ar/{query} become reachable. This is the path a human user takes daily — it is the only browser-only path that unlocks the full surface.
B. MercadoLibre Developer API (recommended for high-volume / programmatic use). https://api.mercadolibre.com/sites/MLA/... covers search, item detail, seller reputation, and shipping cost — but requires a Bearer OAuth token (free, register an app at https://developers.mercadolibre.com.ar/; unauthenticated requests return 403 {"error":"forbidden"}). For the read-only flows this skill targets, the developer-API path is faster, more stable, and not subject to the account-verification redirect.
Both paths are out of scope for an unauthenticated browser-only run; document the wall and stop at the gate rather than attempting credential/captcha workarounds.
SID=$(browse cloud sessions create --keep-alive --verified --proxies \
| node -e "let s='';process.stdin.on('data',c=>s+=c).on('end',()=>process.stdout.write(JSON.parse(s).id))")
export BROWSE_SESSION="$SID"
Both --verified and --proxies are necessary for the working surfaces. Bare-IP sessions still hit the gate; verified-only also hits it; verified+proxies is the configuration with the highest probability of additional pages rendering and is the documented baseline. Do not omit either flag.
browse open "https://www.mercadolibre.com.ar/" --remote --session "$SID"
browse wait load --remote --session "$SID"
browse wait timeout 1500 --remote --session "$SID"
browse snapshot --remote --session "$SID"
# Click the "Aceptar cookies" button (ref label is "button: Aceptar cookies",
# typically the last button in the snapshot — refs change per session).
browse click @<accept-cookies-ref> --remote --session "$SID"
Cookie acceptance writes cookiesPreferencesNotLogged, hide-cookie-banner, and _d2id which the rest of the site reads. Accepting does not unblock the account-verification gate but does prevent the cookie banner from overlaying every subsequent snapshot.
The keyword search box submits to https://listado.mercadolibre.com.ar/{slug} which is gated. Instead, navigate by category:
browse open "https://www.mercadolibre.com.ar/c/celulares-y-telefonos" --remote --session "$SID"
browse wait load --remote --session "$SID"
browse wait timeout 2500 --remote --session "$SID"
browse snapshot --remote --session "$SID"
Known top-level category slugs (all under https://www.mercadolibre.com.ar/c/<slug>):
celulares-y-telefonos, computacion, electrodomesticos, electronica-audio-y-video, tv-audio-y-video, moda, hogar-muebles-y-jardin, deportes-y-fitness, belleza-y-cuidado-personal, salud-y-equipamiento-medico, bebes, juegos-y-juguetes, herramientas, industrias-y-oficinas, accesorios-para-vehiculos, consolas-y-videojuegos, instrumentos-musicales, inmuebles, vehiculos, libros-revistas-y-comics.
Category pages render product cards (title, ARS price, image, sponsorship flag, MercadoLíder badge, "Envío gratis" / "Envío Full" tags, installments string) but every product card link points into the gated /p/MLA###### or articulo.mercadolibre.com.ar/... URL space, so the cards themselves are the highest-fidelity data this skill can extract anonymously.
Each card surfaces these attributes in the accessibility tree:
heading: <product name> element. Heading is canonical; the surrounding link: text often duplicates it.StaticText: $ 123.456 (Argentine peso, dot is thousands separator, no decimals on most cards; $ 12.345,67 shape appears on cents-priced items).StaticText: $ <higher> strikethrough plus StaticText: NN% OFF.StaticText: en 12 cuotas de $ X,XXX,XX sin interés (or con interés if financing has interest).StaticText: Envío gratis or Envío Full. Absence of either = paid shipping (cost not surfaced until product detail).StaticText: Patrocinado or StaticText: Recomendado adjacent to the title. Distinguish sponsored from organic before ranking.link: ref's URL from the snapshot urlMap. Save the MLA###### or MLAU###### id for monitoring (step 7).URL ID-shape decode:
/p/MLA<digits> — catalog product page (aggregates many sellers for one product; the price shown is the best-offer price)./up/MLAU<digits> — universal product page (fashion / size-variant catalog).articulo.mercadolibre.com.ar/MLA-<digits>-<slug>_JM — individual seller listing (one seller, one ASIN-equivalent).The MLA###### id behind a /p/ URL and the MLA-###### behind an articulo. URL are different namespaces — do not equate them.
Category pages don't expose a keyword filter, but they expose facet links into listado.mercadolibre.com.ar/{category-path}/{filter-path} URLs. Those URLs are gated. Anonymous filtering is therefore limited to whichever facets the category page renders inline (typically Más vendidos, Ofertas, Envío Full, brand carousels). To filter to a specific model or attribute, the realistic options are:
listado. URL with #applied_filter_id={facet}&applied_filter_name={name}&applied_value_id={value} hash works.?category={MLA1055}&filter.BRAND={2503}&... query syntax for any facet ID set discoverable via GET /sites/MLA/categories/{MLA1055}/attributes.If the session is authenticated (path A), navigate to the captured /p/MLA###### or articulo.mercadolibre.com.ar/MLA-... URL. On the resulting product detail page (PDP), the headings carry:
heading: <title> and adjacent StaticText: Nuevo | Usado | Reacondicionado.Envío gratis a Capital Federal / Envío Full / cost for paid; entrega-estimada date.Stock disponible (binary), or Últimos X disponibles.mercadolibre.com.ar/perfil/<seller>, MercadoLíder tier (Platinum / Gold / Silver / none), Ventas concretadas count, percentage of Buenas calificaciones. Always extract MercadoLíder tier + concrete-sales count when ranking — it is the most predictive trust signal.Garantía del vendedor: N días | meses or Garantía de fábrica./p/MLA###### catalog pages: a Comparar precios de X publicaciones section that lists every seller offering this catalog product with their own price, shipping, and reputation. This is the canonical surface for cross-seller comparison — do not re-derive it by separately opening each seller's articulo. URL.If the session is unauthenticated, stop at the category card and emit a requires_login: true flag on the listing record rather than attempting to load the PDP.
Build a normalized record per listing:
{
"id": "MLA1040287808",
"url": "https://www.mercadolibre.com.ar/.../p/MLA1040287808",
"title": "Apple iPhone 15 128 GB Negro",
"condition": "nuevo",
"price_ars": 1899000,
"original_price_ars": 2200000,
"discount_pct": 14,
"installments": { "count": 12, "amount_ars": 158250, "interest_free": true },
"shipping": { "free": true, "is_full": true, "cost_ars": null, "estimated_delivery": "mañana" },
"stock": { "available": true, "qty_message": "Stock disponible" },
"seller": {
"name": "Apple Store Oficial",
"mercadolider_tier": "platinum",
"official_store": true,
"sales_concretadas": 50000,
"buenas_calificaciones_pct": 99
},
"warranty": { "type": "fabricante", "duration_months": 12 },
"sponsored": false,
"captured_at": "2026-05-20T18:34:00Z"
}
Rank by a composite that combines price_ars + shipping.cost_ars (total landed cost), then break ties on seller trust: mercadolider_tier ∈ {platinum > gold > silver > none}, then official_store, then sales_concretadas, then buenas_calificaciones_pct. Penalize sponsored: true cards in the ranking unless the user explicitly asked for "best deal overall regardless of origin" — sponsored placement does not correlate with the lowest landed cost. Do not declare two listings the same product unless every one of {title-normalized, model, storage/size variant, color, condition} matches; MercadoLibre's catalog routinely surfaces near-identical SKUs with different MLA###### ids (e.g., distinct color variants of the same iPhone model).
Persist the step-7 record keyed by id. On each subsequent run:
monitor_unavailable: "anonymous_blocked" and stop.price_ars delta ≥ 1% (or any change crossing a user-supplied threshold)stock.available flip (in-stock → out-of-stock or vice versa)shipping.free flip, or shipping.cost_ars delta ≥ 5%seller.mercadolider_tier changeseller.buenas_calificaciones_pct drop ≥ 2 pointsremoved: trueedited: true with the diffDo not count sponsored-vs-organic placement changes as listing edits — those are advertising-driven and not editorial.
When neither authenticated browsing nor a developer-API token is available, the skill operates in a degraded mode:
/c/<category-slug> pages and read product cards (title, ARS price, installments, shipping flag, MercadoLíder badge, sponsorship). 50–60 cards per top-level category page./ofertas for current promotions (cards have the same shape as category cards).MLA###### / MLAU###### id for later authenticated re-fetch./p/MLA###### PDPs (gated).articulo.mercadolibre.com.ar/MLA-... listings (gated).listado. and gated).Return partial records with requires_login_for_detail: true for any field that needs the PDP. Do not invent fields you couldn't read.
gz/account-verification redirect. Every request to listado.mercadolibre.com.ar/*, articulo.mercadolibre.com.ar/MLA-*, and www.mercadolibre.com.ar/{slug}/p/MLA* (or /p/MLA* slug-less) from an automation IP server-side 302s to https://www.mercadolibre.com.ar/gz/account-verification?go=<encoded-target>&tid=<uuid>, which renders a login/register choice — there is no "continue as guest" option. The wall fires regardless of: --verified, --proxies, both flags together, cookie acceptance, the _bm_skipml=true Anubis-bypass cookie, internal-click vs typed URL, or session warm-up. Verified during iters 1–4 (2026-05-20) across multiple residential-proxy IPs and one bare-IP session. Do not waste turns trying to bypass. The realistic exits are: authenticate (interactive login outside the skill's scope) or switch to the developer API (Bearer-token path under api.mercadolibre.com)./ (homepage), /ofertas, /c/{category-slug} (top-level only — most subcategory drills go to listado. and gate), /ayuda, /privacidad, /glossary/{letter}/{page}. Anything that returns a list of listings — search results, brand pages, deals-per-product — is on listado. and gated.api.mercadolibre.com requires OAuth Bearer, even on read-only GET /sites/MLA/search. Unauthenticated returns 403 {"message":"forbidden","error":"forbidden","status":403,"cause":[]} with or without residential proxy. Tokens are free; obtain via app registration at developers.mercadolibre.com.ar. There is no anonymous public-data API as of 2026-05-20.https://listado.mercadolibre.com.ar/<query> (e.g., via browse cloud fetch --proxies) returns a JS micro-landing that runs SHA-256 PoW, sets _bm_skipml=true, and forwards to the actual results. Setting _bm_skipml=true preemptively in a browser session does not bypass the account-verification gate — they are layered. PoW-only bypass works for some scrape-via-curl flows but not for the surfaces this skill needs.<input> posts to /listado.mercadolibre.com.ar/iphone-15 and immediately hits the same redirect. Whether you click Buscar or press Enter or paste the URL, the destination is the same.link: text in product cards for the product title — read heading: instead. Card link text is built from the URL slug (escalera-articulada-black-decker-4x4-...), which is SEO-mangled. The heading: element above it carries the proper "Escalera Articulada Black & Decker 4x4 16 Escalones..." string with original capitalization, accents, and brand punctuation./p/MLA###### and MLA-###### in articulo. URLs are NOT the same id. The catalog ID lives in /p/MLA<digits> (one ID per catalog product); the listing ID lives in articulo.mercadolibre.com.ar/MLA-<digits>-<slug>_JM (one ID per seller offer). A single /p/MLA1040287808 catalog product can aggregate dozens of distinct MLA-###### seller listings. Track both separately./up/MLAU###### exists for catalog products with size/color/material variants (mostly fashion). Treat as a parent SKU; each MLAU rolls up multiple MLA-###### listings, the same way /p/MLA###### does.Envío Full eligibility are computed against that address. To query a different province (Córdoba, Mendoza, etc.), the user must change the location via the header button — and that change does not persist across sessions without login.Patrocinado or Recomendado text, but some "splinter" carousel slots (c_id=/splinter/... in URL params) are sponsored without an inline badge. The most reliable sponsorship signal is the URL itself: any product URL with ?pdp_filters=deal%3AMLA<dealid> or polycard_client=offers in the query string was reached via a paid placement.$ <thousands-with-dots>,<cents> or $ <thousands-with-dots>. Parse $ 1.899.000 as 1899000. ARS is volatile vs USD — don't auto-convert to USD without a same-day FX rate the user supplied, and surface the ARS value as primary.12 cuotas sin interés = financed at 0% by MercadoCredito/issuer; 12 cuotas con interés = card APR applies. Total cost ≠ installment_amount * count when con interés — for con interés you cannot compute true total without the issuer APR. Treat con interés totals as unknown_with_floor: price_ars.listado. URL (gated). Behavior depends on the suggestion type (category-keyword vs free-text). Not a reliable bypass./gz/account-verification?go=...), the snapshot has exactly: an "Soy nuevo" registration link, a "Ya tengo cuenta" login link, the trace-id, and a cookie banner. Detect this signature programmatically and bail out of the current navigation step rather than retrying — retries do not help.browse fill <ref> <value> submits the form before the typeahead dropdown surfaces. Use browse click @<combobox> → browse type "<text>" → wait → browse press Enter if you need to interact with the search box (e.g., for typeahead-suggestion-driven category navigation)..com.br, .com.mx, .com.co, etc.), this skill is locked to mercadolibre.com.ar. If the user explicitly requests another country, defer to a sibling-country skill — do not blend results across marketplaces.The skill produces three distinct output shapes depending on whether the underlying surface was reachable anonymously or required login.
{
"mode": "anonymous_category_browse",
"category": {
"slug": "celulares-y-telefonos",
"url": "https://www.mercadolibre.com.ar/c/celulares-y-telefonos",
"name": "Celulares y Teléfonos"
},
"captured_at": "2026-05-20T18:34:00Z",
"cards": [
{
"id": "MLA65091752",
"id_type": "catalog",
"url": "https://www.mercadolibre.com.ar/celular-motorola-moto-g06-1284gb-accesorio-de-regalo/p/MLA65091752",
"title": "Celular Motorola Moto G06 128/4gb + Accesorio De Regalo Verde",
"condition": "nuevo",
"price_ars": 199999,
"original_price_ars": 249999,
"discount_pct": 20,
"installments": { "count": 12, "amount_ars": 16666, "interest_free": true },
"shipping": { "free": true, "is_full": true, "cost_ars": null },
"sponsored": false,
"requires_login_for_detail": true
}
],
"notes": "PDPs and listings gated by mercadolibre.com.ar/gz/account-verification — open each card's URL in an authenticated session or via api.mercadolibre.com (OAuth) for full detail."
}
{
"mode": "authenticated_listing_detail",
"id": "MLA1040287808",
"id_type": "catalog",
"url": "https://www.mercadolibre.com.ar/apple-iphone-15-128-gb-negro-distribuidor-autorizado/p/MLA1040287808",
"title": "Apple iPhone 15 128 GB Negro",
"condition": "nuevo",
"price_ars": 1899000,
"original_price_ars": 2200000,
"discount_pct": 14,
"installments": { "count": 12, "amount_ars": 158250, "interest_free": true },
"shipping": { "free": true, "is_full": true, "cost_ars": null, "estimated_delivery": "2026-05-22" },
"stock": { "available": true, "qty_message": "Stock disponible" },
"seller": {
"name": "Apple Store Oficial",
"url": "https://www.mercadolibre.com.ar/perfil/APPLE+STORE+OFICIAL",
"mercadolider_tier": "platinum",
"official_store": true,
"sales_concretadas": 50000,
"buenas_calificaciones_pct": 99
},
"warranty": { "type": "fabricante", "duration_months": 12 },
"other_sellers_count": 23,
"other_sellers_lowest_ars": 1849000,
"captured_at": "2026-05-20T18:34:00Z"
}
{
"mode": "compare",
"query_context": { "model": "iPhone 15 128GB", "condition": "nuevo", "destination": "Capital Federal" },
"ranked": [
{ "id": "MLA1040287808", "price_ars": 1899000, "landed_cost_ars": 1899000, "seller_tier": "platinum", "rank": 1, "rank_rationale": "lowest landed cost + platinum seller + interest-free installments" },
{ "id": "MLA1018500855", "price_ars": 1929000, "landed_cost_ars": 1929000, "seller_tier": "gold", "rank": 2, "rank_rationale": "+$30,000 vs #1; gold seller; same shipping" },
{ "id": "MLA-2891234567", "price_ars": 1849000, "landed_cost_ars": 1899000, "seller_tier": "none", "rank": 3, "rank_rationale": "lower sticker but +$50k shipping; untrusted seller (no MercadoLíder)" }
],
"captured_at": "2026-05-20T18:34:00Z"
}
{
"mode": "monitor_diff",
"id": "MLA1040287808",
"url": "https://www.mercadolibre.com.ar/.../p/MLA1040287808",
"previous_captured_at": "2026-05-19T18:34:00Z",
"current_captured_at": "2026-05-20T18:34:00Z",
"changes": [
{ "field": "price_ars", "from": 1899000, "to": 1799000, "delta_pct": -5.3, "significance": "major" },
{ "field": "shipping.free", "from": true, "to": false, "significance": "major" },
{ "field": "seller.
Prerequisites
Time Estimate
15-45 minutes depending on use case complexity
Steps
Common Pitfalls
✓ Do
✗ Don't
💡 Pro Tips
✓ Use when
Use when skill capabilities match your task, clear ROI on time saved, and you can validate outputs. Best for repetitive tasks, learning, and quality improvement.
✗ Avoid when
Avoid when task requires deep expertise you can't validate, involves sensitive decisions, or when learning process is more valuable than speed of completion.
taobao.com/search-products-fac5nw
amazon.com/search-products-5170mf
shopee.com.my/search-products-5epzg0
aliexpress.com/search-product-p0h8a7
nav.com/get-smb-funding-2s1rpm
google.com/search-flights-ts4g1f
We added search-compare-monitor from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
search-compare-monitor is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
search-compare-monitor fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
I recommend search-compare-monitor for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
Keeps context tight: search-compare-monitor is the kind of skill you can hand to a new teammate without a long onboarding doc.
I recommend search-compare-monitor for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
search-compare-monitor fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
Registry listing for search-compare-monitor matched our evaluation — installs cleanly and behaves as described in the markdown.
search-compare-monitor has been reliable in day-to-day use. Documentation quality is above average for community skills.
search-compare-monitor reduced setup friction for our internal harness; good balance of opinion and flexibility.
showing 1-10 of 37