Skip to main content
Glama
mgwalkerjr95

Texas Grocery MCP

by mgwalkerjr95

πŸ›’ Texas Grocery MCP

PyPI version License: MIT CI

πŸ€– 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
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!

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="you@email.com", 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


πŸ› οΈ 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


A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

–Maintainers
–Response time
–Release cycle
1Releases (12mo)
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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/mgwalkerjr95/texas-grocery-mcp'

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