npm @striderlabs/mcp-walmartstdioupdated 4mo ago
MCP server connector for Walmart retail shopping — search products, manage cart, and track orders via browser automation.
What can you do with walmart?
@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:
set_address→ Get local store availabilitysearch→ "organic vegetables",max_price: 50search→ "rice, pasta, beans" with filtersget_product→ Check nutrition and price for eachadd_to_cart→ Build optimized cart under $100checkout→ Review total ($94.32) and return summary to user- User approves → Agent completes purchase
All in one seamless agent turn.
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
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.jsonand~/.striderlabs/walmart/auth.json
Requirements
- Node.js >= 18.0.0
- Chromium (installed automatically with Playwright)
License
MIT — Strider Labs
Install
Add walmart to your client. Pick the one you use.
claude mcp add mcp-walmart -- npx -y @striderlabs/mcp-walmartcodex mcp add mcp-walmart -- npx -y @striderlabs/mcp-walmartamp mcp add mcp-walmart -- npx -y @striderlabs/mcp-walmart{
"mcpServers": {
"mcp-walmart": {
"command": "npx",
"args": [
"-y",
"@striderlabs/mcp-walmart"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"mcp-walmart": {
"command": "npx",
"args": [
"-y",
"@striderlabs/mcp-walmart"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"mcp-walmart","command":"npx","args":["-y","@striderlabs/mcp-walmart"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"mcp-walmart": {
"command": "npx",
"args": [
"-y",
"@striderlabs/mcp-walmart"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"mcp-walmart": {
"command": "npx",
"args": [
"-y",
"@striderlabs/mcp-walmart"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"mcp-walmart": {
"command": "npx",
"args": [
"-y",
"@striderlabs/mcp-walmart"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"mcp-walmart": {
"type": "local",
"command": "npx",
"args": [
"-y",
"@striderlabs/mcp-walmart"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"mcp-walmart": {
"command": {
"path": "npx",
"args": [
"-y",
"@striderlabs/mcp-walmart"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y @striderlabs/mcp-walmartRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
Score
39 / 100
Incomplete
- Documentation25/25
- Maintenance13/25
- Trust6/20
- Capability0/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 138 days ago
- Has a release history
- Repository is not archived
- No licence detected
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 0.1.1Latest | Mar 30, 2026 |