mgwalkerjr95

πŸ›’ Texas Grocery MCP

Community mgwalkerjr95
Updated

MCP server for HEB grocery shopping - search products, manage cart, clip coupons

πŸ›’ Texas Grocery MCP

PyPI versionLicense: MITCI

πŸ€– Let AI do your grocery shopping! An MCP server that connects Claude to H-E-B grocery stores.

Search products, manage your cart, clip coupons, and more β€” all through natural conversation.

⚠️ This project is not affiliated with H-E-B. It uses unofficial web APIs and browser automation against HEB.com; use responsibly and ensure your usage complies with applicable terms and laws.

✨ Features

Feature Description
πŸͺ Store Search Find HEB stores by address or zip code
πŸ” Product Search Search products with pricing and availability
πŸ›’ Cart Management Add/remove items with human-in-the-loop confirmation
πŸ“‹ Product Details Ingredients, nutrition facts, allergens, warnings
🎟️ Digital Coupons List, search, and clip coupons to save money
πŸ”„ Auto Session Refresh Handles bot detection automatically (~15 seconds)

πŸ“¦ Installation

Quick Start

pip install texas-grocery-mcp

Full Installation (Recommended) πŸš€

pip install texas-grocery-mcp[browser]
playwright install chromium

This enables fast auto-refresh (~15 seconds) using an embedded browser.

Prerequisites

For cart operations and session management, you'll also need Playwright MCP:

npm install -g @anthropic-ai/mcp-playwright

βš™οΈ Configuration

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["@anthropic-ai/mcp-playwright"]
    },
    "heb": {
      "command": "uvx",
      "args": ["texas-grocery-mcp"],
      "env": {
        "HEB_DEFAULT_STORE": "590"
      }
    }
  }
}

Environment Variables

Variable Description Default
HEB_DEFAULT_STORE Default store ID None
REDIS_URL Redis cache URL None (in-memory)
LOG_LEVEL Logging level INFO

🎯 Usage Examples

πŸͺ Finding a Store

User: Find HEB stores near Austin, TX

Agent uses: store_search(address="Austin, TX", radius_miles=10)

πŸ” Searching Products

User: Search for organic milk

Agent uses: store_change(store_id="590")
Agent uses: product_search(query="organic milk")

πŸ“‹ Getting Product Details

User: What are the ingredients in H-E-B olive oil?

Agent uses: product_search(query="heb olive oil")
Agent uses: product_get(product_id="127074")
# Returns: ingredients, nutrition facts, warnings, dietary attributes

The product_get tool returns:

  • πŸ₯— Ingredients - Full ingredient statement
  • πŸ“Š Nutrition Facts - Complete FDA panel
  • ⚠️ Safety Warnings - Allergen info and precautions
  • 🌿 Dietary Attributes - Gluten-free, organic, vegan, kosher, etc.
  • πŸ“ Store Location - Aisle or section

πŸ›’ Adding to Cart

User: Add 2 gallons of milk to my cart

Agent uses: cart_add(product_id="123456", quantity=2)
# Returns preview for confirmation

Agent uses: cart_add(product_id="123456", quantity=2, confirm=true)
# βœ… Added to cart!

🎟️ Clipping Coupons

User: Find coupons for cereal

Agent uses: coupon_search(query="cereal")
Agent uses: coupon_clip(coupon_id="ABC123", confirm=true)
# βœ… Coupon clipped!

πŸ” Session Management

HEB uses bot detection that expires every ~11 minutes. This MCP handles it automatically!

⚑ Fast Auto-Refresh (Recommended)

With [browser] support installed:

Agent uses: session_refresh()
# βœ… Completes in ~10-15 seconds

πŸ”‘ Auto-Login

Save your credentials once for automatic login:

Agent uses: session_save_credentials(email="[email protected]", password="...")
# Credentials stored securely in system keyring
# Future session refreshes will auto-login!

🧰 Available Tools

πŸͺ Store Tools

Tool Description
store_search Find stores by address
store_change Set preferred store
store_get_default Get current default store

πŸ” Product Tools

Tool Description
product_search Search products with pricing
product_search_batch Search multiple products (up to 20)
product_get Get detailed product info

πŸ›’ Cart Tools

Tool Description
cart_check_auth Check authentication status
cart_get View cart contents
cart_add Add item (requires confirmation)
cart_add_many Bulk add multiple items
cart_remove Remove item

🎟️ Coupon Tools

Tool Description
coupon_list List available coupons
coupon_search Search coupons by keyword
coupon_clip Clip a coupon
coupon_clipped List your clipped coupons

πŸ” Session Tools

Tool Description
session_status Check session health
session_refresh Refresh/login session
session_save_credentials Save credentials for auto-login
session_clear Logout

πŸ“š Documentation

  • πŸ”§ Troubleshooting Guide - Solutions for common issues
  • 🀝 Contributing - How to contribute
  • πŸ“ Changelog - Version history
  • πŸ”’ Security - Security policy

πŸ› οΈ Development

# Clone repository
git clone https://github.com/mgwalkerjr95/texas-grocery-mcp
cd texas-grocery-mcp

# Install with dev dependencies
pip install -e ".[dev]"
playwright install chromium

# Run tests
pytest tests/ -v

# Linting & type checking
ruff check src/
mypy src/

🐳 Docker

docker-compose up --build

πŸ—οΈ Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                    User's MCP Environment                    β”‚
β”‚                                                             β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚  β”‚  🎭 Playwright MCP  β”‚    β”‚   πŸ›’ Texas Grocery MCP      β”‚ β”‚
β”‚  β”‚  (Browser Auth)     │───▢│   (Grocery Logic)           β”‚ β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”‚                                        β”‚                     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                         β”‚
                                         β–Ό
                                   🌐 HEB GraphQL API

πŸ“„ License

MIT Β© Michael Walker

Made with ❀️ in Texas 🀠

MCP Server Β· Populars

MCP Server Β· New