npm package: @striderlabs/mcp-papajohns
Description: MCP server connector for Papa Johns - enables AI agents to browse menu, customize orders, and track deliveries
Author: Strider Labs
Latest version: 1.0.0

# @striderlabs/mcp-papajohns

MCP (Model Context Protocol) server connector for Papa John's Pizza. Enables AI agents to browse the menu, customize orders, manage cart, apply promo codes, place orders, and track deliveries — all via Playwright browser automation.

## Features

- 🍕 **Browse & Search Menu** — Explore all menu categories or search for specific items
- 🎨 **Pizza Customization** — Full control over size, crust, sauce, cheese, and toppings
- 📍 **Store Locator** — Find nearby Papa John's stores by address
- 🛒 **Cart Management** — Add, remove, and view cart items
- 🎟️ **Promo Codes** — Apply discount codes and view current specials
- 📦 **Place Orders** — Submit orders with customer and delivery details
- 🚗 **Order Tracking** — Track order status in real-time
- 🏆 **Rewards** — View Papa Rewards™ points balance and available tiers

## Installation

```bash
npm install -g @striderlabs/mcp-papajohns
# or
npx @striderlabs/mcp-papajohns
```

Install Playwright browsers (required):
```bash
npx playwright install chromium
```

## Usage with Claude Desktop

Add to your `claude_desktop_config.json`:

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

## Available Tools

| Tool | Description |
|------|-------------|
| `browse_menu` | Browse menu by category (pizzas, sides, desserts, drinks) |
| `search_menu` | Search menu items by keyword |
| `get_pizza_options` | Get all pizza customization options |
| `find_nearby_stores` | Find stores near an address |
| `set_delivery_address` | Set the delivery address |
| `add_to_cart` | Add item with customizations to cart |
| `view_cart` | View current cart contents |
| `remove_from_cart` | Remove an item from cart |
| `clear_cart` | Empty the cart |
| `apply_promo_code` | Apply a promo/coupon code |
| `get_specials` | View current deals and promotions |
| `place_order` | Submit an order |
| `track_order` | Track order status |
| `view_rewards` | View Papa Rewards™ points |

## Example Agent Workflow

```
1. find_nearby_stores("123 Main St, Chicago, IL")
2. browse_menu(category: "pizzas")
3. get_pizza_options()
4. add_to_cart("Pepperoni Pizza", size: "Large", crust: "Original Hand-Tossed", toppings: ["Extra Cheese"])
5. add_to_cart("Cheesy Bread", quantity: 2)
6. get_specials()
7. apply_promo_code("SAVE25")
8. view_cart()
9. place_order(firstName: "John", lastName: "Doe", email: "john@example.com", phone: "555-1234", paymentMethod: "credit_card")
10. track_order(email: "john@example.com")
```

## Security Note

This connector does **not** process real payment card numbers. The `place_order` tool prepares your order and navigates to checkout but stops short of submitting payment. Complete the payment step manually at papajohns.com or via the Papa John's mobile app.

## Requirements

- Node.js >= 18
- Playwright (`npm install playwright`)
- Chromium browser (`npx playwright install chromium`)

## License

MIT — Strider Labs