Skip to main content
Glama

@striderlabs/mcp-walmart

MCP server connector for Walmart retail shopping — search products, manage cart, and track orders via browser automation.

For Agents

This connector enables autonomous shopping on behalf of your human. Agents can:

  • Know what to buy: Understand shopping lists, dietary preferences, budget constraints, and seasonal needs

  • Search intelligently: Find products with filters (price, ratings) and compare options

  • Execute efficiently: Build a cart, review totals, and hand off for final purchase confirmation

  • Track orders: Monitor delivery status and notify the user when items arrive

Example agent workflow:

User: "I need groceries for the week. My budget is $100, and I need vegetarian options."

Agent executes:

  1. set_address → Get local store availability

  2. search → "organic vegetables", max_price: 50

  3. search → "rice, pasta, beans" with filters

  4. get_product → Check nutrition and price for each

  5. add_to_cart → Build optimized cart under $100

  6. checkout → Review total ($94.32) and return summary to user

  7. User approves → Agent completes purchase

All in one seamless agent turn.

Related MCP server: @retailerapi/mcp

Overview

This package provides a Model Context Protocol (MCP) server that enables AI agents to interact with Walmart.com through Playwright browser automation with stealth features to avoid bot detection.

Installation

npx @striderlabs/mcp-walmart

Or install globally:

npm install -g @striderlabs/mcp-walmart
mcp-walmart

MCP Configuration

Add to your MCP client configuration:

{
  "mcpServers": {
    "walmart": {
      "command": "npx",
      "args": ["@striderlabs/mcp-walmart"]
    }
  }
}

Tools

status

Check Walmart authentication status and session info.

No parameters required.

{}

login

Authenticate with your Walmart account using email and password via browser automation.

Parameter

Type

Required

Description

email

string

Yes

Walmart account email

password

string

Yes

Walmart account password

headless

boolean

No

Run browser headless (default: true). Set false to see the browser window.


logout

Clear Walmart session and stored cookies.

No parameters required.


set_address

Set delivery or pickup address for Walmart. Affects product availability and pricing.

Parameter

Type

Required

Description

zip_code

string

No*

ZIP code (e.g., "90210")

address

string

No*

Full address (e.g., "123 Main St, Chicago, IL 60601")

*At least one of zip_code or address is required.


Search Walmart products by query with optional filters.

Parameter

Type

Required

Description

query

string

Yes

Search term

min_price

number

No

Minimum price filter

max_price

number

No

Maximum price filter

sort_by

string

No

Sort order: relevance, price_low, price_high, best_seller, rating_high

limit

number

No

Max results (default: 10, max: 24)


get_product

Get detailed product information including price, description, and availability.

Parameter

Type

Required

Description

url

string

No*

Full Walmart product URL

item_id

string

No*

Walmart product item ID

*At least one of url or item_id is required.


add_to_cart

Add a product to the Walmart cart.

Parameter

Type

Required

Description

url

string

No*

Walmart product URL

item_id

string

No*

Walmart product item ID

quantity

number

No

Quantity to add (default: 1)

*At least one of url or item_id is required.


view_cart

View current Walmart cart contents and totals.

No parameters required.


update_cart

Update the quantity of an item in the Walmart cart.

Parameter

Type

Required

Description

quantity

number

Yes

New quantity (must be >= 1)

item_id

string

No*

Walmart product item ID

product_name

string

No*

Partial product name to match

*At least one of item_id or product_name is required.


remove_from_cart

Remove a specific item from the Walmart cart.

Parameter

Type

Required

Description

item_id

string

No*

Walmart product item ID

product_name

string

No*

Partial product name to match

*At least one of item_id or product_name is required.


checkout

Preview checkout summary for the Walmart cart. Returns order details without placing the order.

No parameters required.

Note: This tool intentionally does not place the order. It returns the order summary (items, subtotal, tax, total) so you can review before proceeding manually.


get_orders

Get Walmart order history.

Parameter

Type

Required

Description

limit

number

No

Number of recent orders to return (default: 10)


Session Persistence

Cookies and auth info are stored in ~/.striderlabs/walmart/ and persist across sessions. Once logged in, subsequent tool calls reuse the existing session without re-authenticating.

Technical Details

  • Transport: stdio (standard MCP transport)

  • Browser: Chromium via Playwright with stealth patches

  • Bot detection bypass: Removes webdriver flag, spoofs plugins/languages, patches permissions API

  • Session storage: ~/.striderlabs/walmart/cookies.json and ~/.striderlabs/walmart/auth.json

Requirements

  • Node.js >= 18.0.0

  • Chromium (installed automatically with Playwright)

License

MIT — Strider Labs

Available Tools

2 tools
update_cartB

Update the quantity of an item in the Walmart cart

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idNoWalmart product item ID to update
quantityYesNew quantity (must be >= 1)
product_nameNoPartial product name to identify item (alternative to item_id)

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description fully relies on itself. It does not disclose critical behaviors such as whether the update is incremental, whether it fails if item not in cart, or required authentication or session state.

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

Conciseness5/5

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

The description is a single, focused sentence with no extraneous words. It efficiently conveys the core purpose.

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

Completeness2/5

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

Given the tool has 3 parameters and no output schema or annotations, the description is too brief. It omits important details like return format, error handling, or conditions (e.g., item must be in cart). The context is insufficient for an AI agent to use the tool correctly.

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 all parameters. The description does not add meaningful additional semantics beyond the schema; it repeats 'quantity' but no extra context. Baseline score of 3 is appropriate.

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 description clearly states the action ('Update the quantity') and the resource ('an item in the Walmart cart'), distinguishing it from the sibling tool 'search' which is for searching products.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., adding items, removing items), nor prerequisites like item existence in cart. The description gives no context for appropriate usage.

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. Dates show when Glama detected each change.

  1. 2 tool updatesv0.1.0
    • First observedsearch
    • First observedupdate_cart

TDQS

B3.3/5.0
Disambiguation5/5

The two tools have completely distinct purposes: one for searching products, the other for updating cart quantities. No overlap.

Naming Consistency5/5

Both tools follow a consistent verb_noun snake_case pattern (search, update_cart), making them predictable.

Tool Count2/5

With only 2 tools, the set feels too thin for a Walmart shopping server. Typical shopping tasks like add to cart, get cart, or remove item are missing.

Completeness2/5

There are obvious gaps: no add_to_cart, get_cart, remove_from_cart, or any order management. The surface only covers search and cart update, leaving essential operations absent.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/markswendsen-code/mcp-walmart'

If you have feedback or need assistance with the MCP directory API, please join our Discord server