RappiMCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| RAPPI_USER_ID | Yes | Numeric Rappi user ID | |
| RAPPI_DEVICE_ID | Yes | UUID identifying the browser session | |
| RAPPI_ACCESS_TOKEN | Yes | Bearer token for API calls | |
| RAPPI_REFRESH_TOKEN | Yes | Used to obtain new access tokens |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| rappi_reloadA | Reload tokens from .env and rappi_client code into the running server (no Chrome needed). |
| rappi_authA | Extract Rappi credentials from Chrome and save them to .env. Flow:
Returns the extracted values (tokens truncated for display). |
| rappi_list_addressesA | List all saved delivery addresses for this Rappi account. Use rappi_set_address to switch to a different one. Returns id, tag, address, active, lat, lng for each. |
| rappi_set_addressA | Switch the active delivery address by its ID (from rappi_list_addresses). If address_id is None, opens Rappi address settings in Chrome so you can add a new one. The change is in-memory and affects all subsequent store/product searches. Args: address_id: Numeric address ID from rappi_list_addresses, or None to open Chrome. |
| rappi_list_storesA | List stores available for delivery, filtered by category. Args: category: Store category to list. Common values: "market" — supermarkets (default) "restaurant" — restaurants "farma" — pharmacies "licores" — liquor stores "express-big" — express / convenience stores Any other Rappi store_type slug is also accepted. query: Optional name filter (case-insensitive). limit: Max results to return (default 50). Returns a list of stores with store_id, name, store_type, lat, lng. Use store_id with rappi_search_products and store_type with cart tools. |
| rappi_get_storeA | Look up store metadata by numeric store_id. Returns store_id, name, lat, lng, store_type (id + name). The store_type.id (e.g. "lider") is required by other tools. |
| rappi_search_productsA | Search products within a Rappi store. Args:
store_id: Numeric store ID (e.g. 900024799 for Lider).
query: Search term in Spanish.
size: Max results to return (default 40, max 40).
offset: Pagination offset (increment by Returns a list of products with: composite_id, name, trademark, price, real_price, discount, quantity, unit_type, sale_type, in_stock. |
| rappi_get_cartA | Return the current cart contents for a store type (e.g. "lider"). Returns a list of cart items with composite_id, units, sale_type, name, price. |
| rappi_add_to_cartA | Add an item to the cart (or increment its quantity if already present). Args: store_id: Numeric store ID (e.g. 900024799). store_type: Store type slug (e.g. "lider"). composite_id: Product composite ID from rappi_search_products. units: Number of units to add. sale_type: "U" (unit) or "WP" (by weight), from search results. Returns the updated cart response from Rappi. |
| rappi_remove_from_cartB | Remove an item from the cart by its composite_id. Args: store_id: Numeric store ID (e.g. 900024799). store_type: Store type slug (e.g. "lider"). composite_id: Product composite ID to remove. |
| rappi_clear_cartB | Empty the entire cart for a store. Args: store_id: Numeric store ID (e.g. 900024799). store_type: Store type slug (e.g. "lider"). |
| rappi_checkoutA | Open the Rappi checkout page in Chrome so the user can complete payment. Navigates Chrome directly to https://www.rappi.cl/checkout/{store_type}. Each store has its own checkout URL — pass the same store_type used in rappi_add_to_cart. The user must finish the order manually. Args: store_type: Store type slug from rappi_list_stores or rappi_add_to_cart (e.g. "turbo_rappidrinks_nc", "lider", "expresslider"). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Each tool targets a distinct operation: auth, store lookup, product search, cart CRUD, address management, checkout, and token reload. No overlaps or ambiguity.
All tools follow a uniform 'rappi_verb_noun' snake_case pattern (e.g., rappi_add_to_cart, rappi_clear_cart). Verbs are descriptive and consistent across the set.
12 tools cover the essential interactions for a Rappi integration (auth, store browsing, product search, cart management, addresses, checkout, maintenance). Not too many, not too few.
The surface covers the core workflow: search, cart operations, address management, and checkout initiation. Missing a direct order placement API (likely an external limitation) but otherwise complete for agent-based shopping.