@striderlabs/mcp-starbucks
v0.1.1
Published
MCP server for Starbucks — let AI agents search the menu, customize drinks, find stores, and place mobile orders
Maintainers
Readme
@striderlabs/mcp-starbucks
MCP server for Starbucks — let AI agents search the menu, customize drinks, find stores, place mobile pickup orders, and manage Starbucks Rewards.
Features
- Full menu search — search by name, category, or dietary preference (vegan, vegetarian, etc.)
- Item customization — size, milk type, syrups, espresso shots, temperature, foam, and more
- Cart management — add items, view cart, adjust quantities
- Store finder — find nearby Starbucks locations with hours and features
- Mobile ordering — place mobile pickup orders (requires Starbucks account)
- Starbucks Rewards — check Star balance, reward level, and redeem rewards
- Order history — view past orders and quickly reorder favorites
- Session persistence — cookies saved at
~/.striderlabs/starbucks/cookies.json
Installation
npm install -g @striderlabs/mcp-starbucks
npx playwright install chromiumUsage with Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"starbucks": {
"command": "striderlabs-mcp-starbucks",
"env": {
"STARBUCKS_EMAIL": "[email protected]",
"STARBUCKS_PASSWORD": "your-password"
}
}
}
}Credentials can also be passed directly via the starbucks_login tool.
Tools
| Tool | Description |
|------|-------------|
| starbucks_status | Check connection and login status |
| starbucks_login | Authenticate with Starbucks credentials |
| starbucks_logout | Clear session cookies |
| search_menu | Search menu by name, category, or dietary preference |
| get_item_details | Get full item details and customization options |
| customize_item | Build a customized drink or food order |
| add_to_cart | Add customized item to cart |
| view_cart | View current cart with pricing |
| get_nearby_stores | Find nearby Starbucks locations |
| select_store | Select pickup store |
| place_order | Submit mobile pickup order |
| get_order_status | Track order status and pickup time |
| get_rewards | Check Star balance and available rewards |
| redeem_reward | Apply a reward to current order |
| get_order_history | View past orders |
| reorder_favorite | Quick reorder from a past order |
Example Workflow
1. starbucks_status → check if logged in
2. starbucks_login → authenticate (if needed)
3. search_menu query="latte" → browse menu options
4. get_item_details itemId="hot-latte"
→ see customization options
5. customize_item itemId="hot-latte"
customizations={"size":"grande","milk":"oat","syrup":"vanilla"}
6. add_to_cart quantity=1 → add to cart
7. view_cart → review order
8. get_nearby_stores address="94105"
→ find pickup location
9. select_store storeId="sbux-1001"
10. get_rewards → check available rewards
11. redeem_reward rewardId="reward-123"
→ apply reward (optional)
12. place_order confirm=false → preview order
13. place_order confirm=true → submit order
14. get_order_status → track preparationCustomization Options
Size
short(8 fl oz) — hot drinks onlytall(12 fl oz)grande(16 fl oz)venti_hot(20 fl oz) — hot drinksventi_cold(24 fl oz) — cold drinks
Milk
2percent,nonfat,whole— standard, no chargeoat,almond,coconut,soy— +$0.70
Espresso Roast
signature(Starbucks Signature Espresso Roast)blonde(Blonde Espresso Roast)decaf
Syrups / Flavorings
vanilla, caramel, hazelnut, toffee_nut, cinnamon_dolce, peppermint, sugar_free_vanilla, brown_sugar, mocha, white_mocha
Temperature (hot drinks)
hot, extra_hot, warm, kids_temp
Foam
standard, extra_foam, no_foam, light_foam
Technical Details
- Browser automation: Playwright (Chromium) with stealth patches
- Session persistence: Cookies stored at
~/.striderlabs/starbucks/cookies.json - Transport: MCP stdio
- Ordering: Uses Starbucks web ordering API with Playwright automation fallback
Environment Variables
| Variable | Description |
|----------|-------------|
| STARBUCKS_EMAIL | Starbucks account email (optional — can use starbucks_login tool) |
| STARBUCKS_PASSWORD | Starbucks account password (optional) |
License
MIT — Strider Labs
