Lufa Farms MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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 |
|---|---|
| lufa_auth_statusA | Check whether there is an active Lufa Farms session. This makes a live request rather than just checking for a saved cookie.
If a |
| lufa_logoutA | Log out from Lufa Farms and erase the saved session from disk. |
| lufa_get_productsA | Retrieve the full product catalog for the current order week. Returns product IDs, names, prices, producers, and category tags. Requires an active session. |
| lufa_search_productsA | Search the Lufa Farms marketplace by keyword. Use this to quickly locate a specific item without loading the full catalog. Args: query: Search term, e.g. "heirloom tomatoes", "sourdough bread", "goat cheese". |
| lufa_get_product_detailsA | Get detailed information for a specific product. Returns name, price, producer, category, weight, and organic status, looked up from the full marketplace catalog. Args: product_id: Product ID from lufa_get_products or lufa_search_products. |
| lufa_get_nutritional_factsB | Retrieve the nutritional information panel for a product. Returns calories, macronutrients, and ingredient list. Args: product_id: Product ID to look up. |
| lufa_view_basketA | Show the current basket contents. Returns all items, quantities, unit prices, and the running order total. Requires an active session. |
| lufa_add_to_basketA | Add a product to the basket. Changes take effect immediately (there is no separate draft state) — verified live: basket total updated right after the call, with no save_basket needed to see it reflected. Products that come in multiple sizes/formats (e.g. "family format") are
listed as separate product IDs, not a weight variant of the same product
— check the Args: product_id: Product ID to add. quantity: Number of units to add on top of the current basket quantity (default 1). This is an increment, not an absolute target quantity. |
| lufa_remove_from_basketA | Remove a quantity of a product from the basket. Requires an active session. Args: product_id: Product ID to remove. quantity: Number of units to remove (default 1). Pass a value >= the current basket quantity to remove the line entirely. |
| lufa_save_basketA | Not required for normal use — kept only for backwards compatibility. lufa_add_to_basket / lufa_remove_from_basket already persist to the server immediately; there is no "confirm order" step anywhere in Lufa's actual site (no such button or endpoint exists in the marketplace frontend). This calls a legacy per-product endpoint with no product specified, which is effectively a no-op that returns success trivially. Requires an active session. |
| lufa_add_favoriteA | Add or remove a product from the user's favorites list. Favorites appear prominently in the marketplace next week, making it easy to reorder frequently purchased items. Requires an active session. Args: product_id: Product ID to favorite/unfavorite. favorite: True to add to favorites, False to remove (default True). |
| lufa_get_order_detailsA | Show the current or upcoming order summary. Returns the delivery date, pickup location, basket breakdown, and final totals. Requires an active session. |
| lufa_get_checkout_infoA | Retrieve delivery metadata for the current order, including a countdown. Returns the delivery date, address, and delivery time window, plus two
computed fields: |
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 13 tools
Each tool targets a distinct resource/action: authentication, product discovery, basket management, favorites, and order info. Even the potentially confusing get_products vs search_products are clearly separated (full catalog vs keyword lookup). The legacy save_basket is clearly marked as a no-op but remains distinct from other tools.
Most tools follow the lufa_verb_noun pattern (get_products, add_to_basket, get_order_details). Two exceptions: lufa_auth_status (noun phrase rather than verb) and lufa_logout (verb only). Overall the prefix and verb style are consistent enough that the naming feels tidy.
13 tools is a reasonable, well-scoped set for a grocery delivery MCP server. The count covers all major workflows without bloat: auth, product browsing, basket editing, favorites, and order status. No redundant or missing categories that would make the count feel excessive or thin.
The tool surface covers the full customer journey: browse/search products, get details and nutrition, manage basket, save favorites, and view order/checkout info. Auth is represented via status and logout (login is presumably handled out-of-band). The legacy save_basket is explicitly documented as unnecessary, so no functional gap exists.