KFC MCP Server
# @striderlabs/mcp-kfc
MCP (Model Context Protocol) connector for KFC fast food ordering. Uses Playwright browser automation to interact with kfc.com.
## Tools
| Tool | Description |
|------|-------------|
| `search_menu` | Search KFC menu items by keyword and category |
| `get_item_details` | Get details (price, calories, allergens) for an item |
| `add_to_cart` | Add items to your order cart |
| `view_cart` | View current cart with subtotals |
| `checkout` | Initiate checkout (pickup or delivery) |
| `get_order_status` | Check status of an existing order |
| `find_locations` | Find KFC restaurants near an address |
## Installation
```bash
npm install -g @striderlabs/mcp-kfc
# Install Playwright browser
npx playwright install chromium
```
## Usage with Claude Desktop
Add to your `claude_desktop_config.json`:
```json
{
"mcpServers": {
"kfc": {
"command": "mcp-kfc"
}
}
}
```
Or with `npx` (no global install needed):
```json
{
"mcpServers": {
"kfc": {
"command": "npx",
"args": ["-y", "@striderlabs/mcp-kfc"]
}
}
}
```
## Usage with Claude Code
```bash
claude mcp add kfc -- npx -y @striderlabs/mcp-kfc
```
## Example Conversation
> **User:** Find a KFC near 10001 and add a Famous Bowl to my cart
> **Claude:** I'll help you find a KFC near 10001 and add a Famous Bowl.
> [uses `find_locations` then `add_to_cart`]
> **User:** What's in my cart and how much will it cost?
> **Claude:** [uses `view_cart`] You have 1x Famous Bowl ($7.99), estimated total $8.69 with tax.
> **User:** Checkout for pickup
> **Claude:** [uses `checkout` with `delivery_method: "pickup"`] Here's your order summary and checkout link...
## Development
```bash
# Install dependencies
npm install
# Install Playwright browsers
npx playwright install chromium
# Build
npm run build
# Run in dev mode
npm run dev
```
## Architecture
- **Transport:** stdio (standard MCP transport)
- **Browser:** Playwright Chromium (headless)
- **Cart state:** in-memory per session
- **Bundle:** esbuild (single `dist/index.js`, Playwright kept external for native binaries)
## Notes
- Prices shown are estimates based on typical KFC pricing. Exact prices vary by location and are confirmed at checkout on kfc.com.
- Final order placement requires a KFC account and payment info at kfc.com.
- Browser automation may be affected by KFC website updates or regional differences.
## License
MIT
TDQS
Scored across 7 tools
Each tool targets a distinct function: cart management (add, view), search (menu, locations), item details, checkout, and order status. No overlapping purposes.
All tools use consistent snake_case with a verb_noun pattern (e.g., add_to_cart, find_locations, get_item_details). 'checkout' is a single verb but fits the pattern as an imperative action.
7 tools cover the essential operations for a KFC ordering system: menu browsing, cart management, checkout, location finding, and order tracking. This is well-scoped without being overwhelming.
Core CRUD operations are covered for menu items and cart, but missing update/delete for cart items (e.g., remove_from_cart, update_quantity) is a minor gap. Order management lacks cancellation or update.