Frisco
CLI & MCP server for Frisco.pl grocery delivery API β browse products, manage cart, place orders, check delivery slots
Ask AI about Frisco
Powered by Claude Β· Grounded in docs
I know everything about Frisco. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
Frisco CLI
Unofficial CLI & MCP server for the Frisco.pl grocery delivery API.
Disclaimer: This is an independent, community project β not affiliated with Frisco. Use at your own risk.
Features
- Interactive cart TUI (Bubble Tea)
- Product search with category filtering and nutrition info
- Delivery slot reservation
- Order history
- Batch cart additions from JSON shopping lists
- MCP server for AI assistant integration
- Session management (cURL import, browser login)
Requirements
- Go
1.26+(pergo.mod) - For
frisco session login: a locally installed browser supported bychromedp(e.g. Chrome/Chromium)
Installation
go install github.com/rrudol/frisco/cmd/frisco@latest
Local build:
make build
./bin/frisco --help
Quick start
- Log in via browser (recommended):
frisco session login
- Or save session from a cURL command:
frisco session from-curl --curl "curl 'https://www.frisco.pl/app/commerce/api/v1/users/123/cart' -H 'authorization: Bearer ...' -H 'cookie: ...'"
- Verify your session works:
frisco session verify
Commands
frisco cart # Interactive TUI (list, +/-, remove, refresh)
frisco cart show
frisco cart add --product-id <id> --quantity 1
frisco cart add-batch --file list.json # --dry-run for parse-only
frisco products search --search banana
frisco products search --search apple --category-id 18707
frisco products nutrition --product-id 4094
frisco reservation slots --days 2
frisco reservation reserve --date 2026-03-25 --from-time 06:00 --to-time 07:00
frisco reservation cancel
frisco account show
frisco account orders list --all-pages
frisco session login # Interactive browser login
frisco session refresh-token # Refresh access token
frisco mcp # Start MCP server (stdio)
Batch cart from a shopping list
frisco session verifyβ make sure your session is valid.- Search for products:
frisco products search --search "phrase"β optionally add--category-idto narrow results. Use--format jsonand pipe tojqto extract product IDs. - Build a JSON file: an array of
{ "product_id": "β¦", "quantity": n }objects or{"items":[β¦]}. Template: examples/cart-add-batch.example.json. frisco cart add-batch --file list.jsonβ displays a cart summary after adding. Use--dry-runto validate the file without calling the API.
Category IDs
Using --category-id with products search / products pick narrows results and dramatically improves relevance. Full category tree: categories.md.
Output format
By default the CLI outputs human-readable tables. Use --format json for machine-readable output:
frisco account orders list --all-pages
frisco account orders list --all-pages --format json
MCP server β AI assistant integration
frisco mcp starts an MCP server over stdio, exposing cart, products, orders, reservations, and session tools to any compatible AI client.
Claude Desktop
Download the latest .mcpb bundle for your platform from Releases, then in Claude Desktop go to Extensions β Advanced Settings β Install Extensions and select the downloaded file.
Login: Ask Claude to log you in to Frisco (e.g. "zaloguj mnie do Frisco"). A Chrome window will open β log in on frisco.pl and navigate to your cart or account page. The session is captured automatically and saved for future use. Requires Chrome/Chromium.
Manual setup
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"frisco": {
"command": "frisco",
"args": ["mcp"]
}
}
}
If frisco is not in your PATH, use the absolute path to the binary (e.g. "/Users/you/go/bin/frisco").
Cursor
Manual setup
Add to .cursor/mcp.json:
{
"mcpServers": {
"frisco": {
"command": "frisco",
"args": ["mcp"]
}
}
}
Claude Code
claude mcp add frisco -- frisco mcp
Other MCP clients
Any client supporting stdio transport works:
frisco mcp
The server exposes tools for: product search, cart management, order history, delivery reservation, account info, and session management.
Session data
Session is stored locally at ~/.frisco-cli/session.json.
Security notes:
- The file may contain tokens and session headers (
Authorization,Cookie). - Access to this file grants API access in your account's context.
- Do not run
frisco mcpin untrusted or shared environments.
If an access token expires, the CLI will automatically attempt to refresh it. If refresh fails, re-import your session with frisco session from-curl or frisco session login.
Example payloads
- examples/shipping-address.example.json
- examples/reservation-payload.example.json
- examples/cart-add-batch.example.json
