@striderlabs/mcp-sweetgreen
v0.1.0
Published
MCP server connector for Sweetgreen restaurant ordering using Playwright browser automation
Maintainers
Readme
@striderlabs/mcp-sweetgreen
MCP server connector for Sweetgreen restaurant ordering using Playwright browser automation. Lets AI agents search locations, browse menus, build orders, apply rewards, and check out — all through your Sweetgreen account.
Features
- Search for nearby Sweetgreen locations
- Browse full menu with pricing and calorie info
- Build and customize orders (salads, bowls, plates)
- Apply promo codes at checkout
- View rewards points and available offers
- Access order history
- Persistent session via saved cookies (no repeated logins)
Requirements
- Node.js 18+
- A Sweetgreen account (for rewards, orders, and checkout)
Installation
npm install -g @striderlabs/mcp-sweetgreen
npx playwright install chromiumMCP Configuration
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"sweetgreen": {
"command": "mcp-sweetgreen"
}
}
}Or if running from source:
{
"mcpServers": {
"sweetgreen": {
"command": "node",
"args": ["/path/to/mcp-sweetgreen/dist/index.js"]
}
}
}Tools
Authentication
| Tool | Description |
|------|-------------|
| sweetgreen_status | Check current login status and session info |
| sweetgreen_login | Log in with email and password |
| sweetgreen_logout | Log out and clear saved session |
Locations
| Tool | Description |
|------|-------------|
| search_locations | Find Sweetgreen locations near an address or zip code |
Menu
| Tool | Description |
|------|-------------|
| get_menu | Get full menu for a specific location |
Ordering
| Tool | Description |
|------|-------------|
| create_order | Start a new order at a location (pickup or delivery) |
| add_to_order | Add a menu item with customizations |
| view_cart | View current cart contents and total |
| checkout | Submit the order (optional promo code) |
Account
| Tool | Description |
|------|-------------|
| get_rewards | View rewards points and available offers |
| get_past_orders | Retrieve order history |
Example Usage
Find a location and browse the menu
User: Find Sweetgreen locations in downtown Austin and show me the menu
Agent uses:
1. search_locations(query: "Austin, TX")
→ Returns list of locations with IDs
2. get_menu(location_id: "austin-congress")
→ Returns full menu with categories, items, prices, caloriesOrder a customized bowl
User: Order a Harvest Bowl with no croutons and extra chicken from the SoHo location
Agent uses:
1. sweetgreen_status()
→ Confirms logged in
2. search_locations(query: "SoHo, New York")
→ Gets location ID: "soho"
3. create_order(location_id: "soho", order_type: "pickup")
→ Starts the order session
4. add_to_order(
item_name: "Harvest Bowl",
quantity: 1,
customizations: ["no croutons", "extra chicken"]
)
→ Adds item with customizations
5. view_cart()
→ Shows order summary
6. checkout()
→ Places the orderCheck rewards
User: How many Sweetgreen points do I have?
Agent uses:
1. get_rewards()
→ Returns points balance and available offersView order history
User: Show me my last 5 Sweetgreen orders
Agent uses:
1. get_past_orders(limit: 5)
→ Returns order history with locations, items, and totalsSession Persistence
Cookies and session data are saved to ~/.strider/sweetgreen/ after each successful login. You only need to log in once — subsequent requests will reuse the saved session automatically.
Development
git clone https://github.com/markswendsen-code/mcp-sweetgreen
cd mcp-sweetgreen
npm install
npx playwright install chromium
npm run build
npm startNotes
- This connector uses browser automation and is subject to Sweetgreen's terms of service
- Checkout requires a saved payment method in your Sweetgreen account
- Session cookies expire periodically — use
sweetgreen_loginto re-authenticate if needed
License
MIT — Strider Labs
