Skip to main content
Glama

Server Details

Walmart search, product pages and customer reviews on walmart.com and walmart.ca, as JSON.

Ownership verified
Status
Healthy
Uptime
97.2% over 43 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
HasData/walmart-mcp
GitHub Stars
10
Server Listing
Walmart MCP Server

TDQS

A4.1/5.0

Scored across 3 tools

Disambiguation5/5

The three tools map to clearly distinct resources and actions: keyword/category search, single-product detail scraping, and product review scraping. Descriptions reinforce the boundaries, and the search tool explicitly notes it feeds item ids into the other two, so an agent can tell them apart without confusion.

Naming Consistency3/5

All tools share the 'hasdata_walmart_' namespace prefix and a get-style verb, which gives a readable pattern. However the resource segment is inconsistent (product_ vs reviews_ vs search_) and the suffixes vary in shape (getWalmartProduct, getWalmartReviews, getSearchResults), so the pattern isn't fully predictable.

Tool Count4/5

Three tools is on the lean side but appropriate for a scraper covering the core Walmart surface: search, product detail, and reviews. Each earns its place with no redundancy, though a fourth endpoint (e.g. seller/category) would round it out.

Completeness4/5

Search, product, and reviews form a coherent lifecycle for Walmart data extraction, with pagination, filtering, and item-id handoff between endpoints. Gaps exist (no seller/store detail endpoint, no category browse beyond search), but the primary workflows are covered without dead ends.

Available Tools

3 tools
hasdata_walmart_product_getWalmartProductwalmart_product: GET /A
Read-only
Inspect

Get Walmart Product Details

Scrapes one Walmart product page on a chosen storefront by item id or URL. Returns title, brand, model, UPC, condition, availability, price with strikethrough before-price and unit price, the seller holding the buy box with its rating and return policy, badges, SNAP EBT eligibility, Walmart+ savings, star rating with the per-star review breakdown and AI review summaries, images, category path, highlights, specifications, AI-generated key item features, variant axes with every option and the itemId each combination resolves to, fulfillment details, and the other-sellers block: how many competitors the page advertises always and, when the page shows it, the cheapest competing price, plus - when otherOffers is enabled - the offer list with each seller name, storefront URL, price, condition, shipping cost, delivery date and return policy. Use for price and buy-box monitoring, seller and marketplace competitor tracking, assortment enrichment of item ids harvested from search, and variant mapping.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoA full Walmart product URL to scrape as is. When provided, it overrides `itemId` and the storefront is taken from the URL itself. Required unless `itemId` is provided.
domainNoWalmart storefront the item belongs to. Each storefront has its own catalog, item ids, prices and currency, so an id from one storefront does not resolve on another. Ignored when `url` is provided. Default is `walmart.com`.
itemIdNoWalmart item id, taken from a product URL or from the id field of the Walmart Search API response. On `walmart.com` it is numeric (for example `14977205582`), on `walmart.ca` an alphanumeric code (for example `6NZMJ5CW6MH2`). Required unless `url` is provided.
languageNoLanguage of the product details. Availability depends on the storefront - `walmart.com` serves `en` and `es`, `walmart.ca` serves `en` and `fr`. A language the storefront does not support falls back to its default.
otherOffersNoAlso collect the offers of other sellers competing for this item - each seller name, storefront, price, condition, shipping cost, delivery date and return policy. This takes an extra request to Walmart and costs 5 credits on top of the base 10, whether or not the item turns out to have competing sellers. How many competitors the item advertises, and the cheapest competing price, are returned in the `otherOffers` block whether the switch is on or off, so it can be left off until the count shows there is something to collect. Default is `false`.

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/openWorld/non-destructive, and the description goes well beyond them: the otherOffers switch triggers an extra request, costs 5 credits on top of the base 10 whether or not competitors exist, and the competitor count is returned even when the switch is off. That is exactly the kind of cost/latency disclosure an agent needs before invoking.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose and the usage sentence are front-loaded and efficient, but the middle sentence is a sprawling enumeration of every returned field (badges, SNAP EBT, Walmart+ savings, per-star breakdown, variant axes, etc.) that runs long and would be better summarized or left to documentation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the return-value burden and does so thoroughly, covering the main product payload, the competitor block, and the conditional otherOffers list. Nothing needed to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so url/itemId precedence, storefront-specific id formats, language fallback, and the otherOffers cost are all already documented in the schema. The description restates the return of the otherOffers block but adds no syntax or format detail beyond what the schema provides, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Get Walmart Product Details', 'Scrapes one Walmart product page') and immediately scopes it by storefront and item id/URL. It is clearly distinguishable from the reviews and search siblings without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Names concrete use cases (price and buy-box monitoring, competitor tracking, assortment enrichment of ids harvested from search, variant mapping), which implies the search→get workflow. It stops short of explicit when-not guidance or naming the sibling tools directly, so it is strong context without full routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

hasdata_walmart_reviews_getWalmartReviewswalmart_reviews: GET /A
Read-only
Inspect

Get Walmart Product Reviews

Scrapes the customer reviews of one Walmart product on a chosen storefront by item id or URL, ten reviews a page. Returns each review with its rating, title, full text with paragraphs preserved, submission date, author, verified-purchase flag, helpful and not-helpful vote counts, badges, marketplace seller, photos and videos, and the review aspects it was tagged with. Alongside the reviews it returns the item rating, how many ratings versus how many written reviews exist, the per-star breakdown, the AI review summary, per-aspect scores such as Quality or Value for money, and a filters block listing exactly which star ratings, frequent mentions and conditions this item can be filtered by, with a count for each - the values in that block are the ones to pass back as request parameters. Sort by most relevant, most recent, most helpful, highest rated, lowest rated or oldest, and filter by star rating, frequent mention, condition or verified purchases only. Use for review mining and sentiment analysis, tracking what buyers praise or complain about per product, monitoring new reviews over time, and pulling only verified-purchase feedback.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoA full Walmart product URL whose reviews to scrape. When provided, it overrides `itemId` and the storefront is taken from the URL itself. Required unless `itemId` is provided.
pageNoPage of reviews to return, ten reviews a page. The response reports the last available page in `pagination.totalPages`, the next one in `pagination.nextPage`, and how many reviews the current filters select in `pagination.totalResults`. Note that only reviews carrying written text are paginated, so the ceiling follows `reviewsInformation.totalReviews` rather than the larger `reviewsInformation.totalRatings`. Default is `1`.
sortNoOrder of the returned reviews, named as the Walmart review page names it. Default is `mostRelevant`.
domainNoWalmart storefront the item belongs to. Each storefront has its own catalog, item ids and review pool, so an id from one storefront does not resolve on another. Ignored when `url` is provided. Default is `walmart.com`.
itemIdNoWalmart item id, taken from a product URL or from the id field of the Walmart Search API response. On `walmart.com` it is numeric (for example `14977205582`), on `walmart.ca` an alphanumeric code (for example `6NZMJ5CW6MH2`). Required unless `url` is provided.
ratingNoReturn only reviews carrying this star rating, from `1` to `5`. The Star rating group of the `filters` block lists the ratings this item actually has, each with the `value` to send here and a `count` of how many reviews to expect.
aspectIdNoReturn only reviews mentioning one topic. Send the `value` of the topic you want, taken from the Frequent mentions group of the `filters` block in the response - given `{"name": "Battery Life", "value": "6049", "count": 8}` you send `6049`, and `count` is how many reviews to expect. **Only one topic per request**, Walmart rejects a list of them. Topics belong to the product rather than to Walmart: a phone offers Battery Life or Display, a coffee offers Flavor or Aroma, and some items offer none at all - so make an unfiltered request first and read the block, instead of reusing a topic id across products.
languageNoLanguage of the review page. Availability depends on the storefront - `walmart.com` serves `en` and `es`, `walmart.ca` serves `en` and `fr`. A language the storefront does not support falls back to its default. Reviews themselves are returned in the language their author wrote them in.
conditionNoReturn only reviews written about one condition of the item. Send the `value` from the Condition group of the `filters` block - given `{"name": "Restored: Like New", "value": "5"}` you send `5`. **Only one condition per request.** This group appears for items Walmart sells in several conditions, and only when the request already names one: reach the variant through the `url` parameter with its `conditionGroupCode`, as in `https://www.walmart.com/ip/1028936148?conditionGroupCode=2`, and the block then lists the condition that variant carries. An item sold in a single condition has no such group, and no reviews to separate by it.
verifiedPurchasesOnlyNoReturn only reviews left by customers whose purchase Walmart confirmed. Narrows the pool considerably, since most reviews are unverified or syndicated from the manufacturer.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly, openWorld, non-destructive), and the description adds substantial behavior beyond them: pagination ceilings follow written reviews rather than total ratings, filters-block values must be passed back as parameters, only one aspect and one condition per request, URL overrides itemId, and unsupported languages fall back to the storefront default. These are non-obvious operational constraints an agent needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose and then sealed with use cases; because there is no output schema, the mid-paragraph inventory of returned fields and the filters block is carrying necessary information. It is a single dense paragraph that could be broken up, but almost every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the full burden of describing returns and does so thoroughly (per-review fields, rating aggregates, star breakdown, AI summary, aspect scores, filters block). For a 10-parameter scraping tool it also covers pagination, sorting, filtering and storefront/language constraints.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description goes beyond it by explaining the filter round-trip workflow (read the filters block, send its `value` back), that aspect topics are product-specific and must not be reused across products, and that condition filtering requires reaching a variant URL with conditionGroupCode. It adds real semantics on top of an already rich schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening states a specific verb and resource — scraping the customer reviews of one Walmart product by item id or URL — and the scope ('one product', 'ten reviews a page') cleanly separates it from the sibling product-detail and search tools. An agent can select this tool without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It names concrete usage scenarios (review mining, sentiment analysis, per-product praise/complaint tracking, monitoring new reviews, verified-only feedback) and even prescribes a workflow prerequisite — make an unfiltered request first to read the filters block before filtering by aspect or condition. It does not name alternative tools or state when NOT to use it, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

hasdata_walmart_search_getSearchResultswalmart_search: GET /A
Read-only
Inspect

Get Walmart Search Results

Runs a keyword or category search on a chosen Walmart storefront with pagination, price range and fulfillment filters, facet narrowing, and sort order (best match, price low-to-high, price high-to-low, bestseller, highly rated, new arrivals). Returns the product list with item id, title, product URL, brand, price and strikethrough before-price, star rating, review count, seller, availability, sponsored flag, badges, SNAP EBT eligibility, Walmart+ savings, variants, other offers and fulfillment details (shipping, pickup, delivery messages), plus the facets block listing every filter the query supports with the exact value to send back in the facet parameter, pagination, and the store the prices belong to. Use for SERP monitoring, price and assortment tracking, share-of-shelf analysis, competitor discovery, and harvesting item ids to feed downstream product or reviews endpoints.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNoThe search term for which to get the search results. It can be omitted only when `catId` is provided, to browse a whole category instead of searching.
urlNoA full Walmart search or category URL to scrape as is. When provided, it overrides `q`, `catId` and the other search parameters, and the storefront is taken from the URL itself.
pageNoPage number for pagination (e.g., `1` for the first page, `2` for the second page, etc.). Walmart stops serving results after roughly page 10, returning an empty page beyond that.
sortNoThe sorting option for the search results.
catIdNoWalmart category id, taken from a category URL (for example `976759_1086446_1229651`). Combine it with `q` to search inside a category, or send it alone to browse the whole category. Required unless `q` is provided.
facetNoWalmart filter in the `name:value` form, for example `brand:Great Value`. Every value available for a query is listed in the facets block of the response, each one carrying the exact string to send back here, so a first unfiltered request tells you what can be filtered on. To combine filters, put each one on its own line. The double-pipe form Walmart's own urls use `brand:Great Value||retailer_type:Walmart` is also accepted.
domainNoWalmart storefront to search. Each storefront has its own catalog, prices and currency. Default is `walmart.com`.
languageNoLanguage of the results. Availability depends on the storefront - `walmart.com` serves `en` and `es`, `walmart.ca` serves `en` and `fr`. A language the storefront does not support falls back to its default.
maxPriceNoUpper bound of the price range, in the storefront currency.
minPriceNoLower bound of the price range, in the storefront currency.
deliveryTypeNoKeep only the products available with the selected fulfillment method. Default is `shipping`. Note that `pickup` is answered against one Walmart store, so an item in stock nationally can still be unavailable for `pickup` nearby - the response then reports that nothing matched the filters rather than that the query had no results.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/openWorld/non-destructive, so the safety profile is covered. The description adds real behavioral value by describing the response shape (product fields, facets block, pagination, store the prices belong to) and the facet round-trip behavior. It omits rate limits or auth details, but the added context is solid for a read-only scrape.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded in the first sentence, which is good, but the second sentence is an extremely long run-on enumerating every returned field. With no output schema this enumeration has some value, but the wall-of-fields style hurts scanability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description carrying the return-value inventory is appropriate and it does cover the response well. Combined with the fully documented schema, an agent has enough to call the tool correctly, with only minor gaps around rate limits or failure behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents q, url, page, sort, catId, facet, domain, language, prices, and deliveryType thoroughly. The description largely restates schema content (sort order names, price/fulfillment filters) without adding new format or precedence details beyond what the schema provides, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence states a specific verb and resource ('Runs a keyword or category search on a chosen Walmart storefront') and scopes the capabilities (pagination, price range, fulfillment filters, facets, sort). It implicitly distinguishes itself from the product and reviews siblings by noting it harvests item ids 'to feed downstream product or reviews endpoints.'

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives concrete usage contexts (SERP monitoring, price/assortment tracking, share-of-shelf, competitor discovery) and routes the agent to product/reviews endpoints for downstream work. It does not state explicit when-not conditions, but the context is clear enough to select the tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updates
    • First observedhasdata_walmart_product_getWalmartProduct
    • First observedhasdata_walmart_reviews_getWalmartReviews
    • First observedhasdata_walmart_search_getSearchResults

Publisher details

Operator
HasData · Publisher source
Vendor relationship
Independent · Publisher source
Trust center
Not available
Restrictions
A free HasData account covers 1,000 credits a month with no card. Heavier use needs a paid plan. No admin approval, no regional limits and no custom OAuth app. · Publisher source

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.