kronan-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| KRONAN_ACCESS_TOKEN | Yes | Access token for Krónan API, prefixed with act_ |
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_meA | Get the current authenticated identity (user or customer group) |
| list_categoriesA | Get the full 3-level category tree |
| get_category_productsA | Get paginated product listing for a category (48 per page) |
| get_productA | Get full product details including price, discounts, tags, availability |
| search_productsA | Search for products in the smart store selection. Returns products available for home delivery. |
| get_checkoutA | Get the active smart checkout (auto-creates if none exists) |
| add_checkout_linesA | Add product lines to the active checkout. Set replace=true to replace all existing lines. |
| list_ordersB | List orders, most recent first |
| get_orderB | Get full order details including lines with product thumbnails |
| delete_order_linesA | Remove specific lines from an order by their IDs. Service lines and the last remaining line cannot be deleted. |
| set_order_substitutionA | Set whether substitution is allowed for specific order lines. Uses a toggle endpoint: fetches current state and only toggles lines that differ. WARNING: Not idempotent due to toggle semantics. Do NOT retry on timeout — check current state first. |
| lower_order_quantityA | Reduce the quantity of specific order lines. Quantity can only be lowered. Set to 0 to remove. |
| list_product_listsC | List saved product lists |
| create_product_listC | Create a new product list |
| get_product_listB | Get a product list with all items including product details and pricing |
| update_product_listB | Update the name or description of a product list |
| delete_product_listB | Permanently delete a product list and all its items |
| clear_product_listA | Remove all items from a product list without deleting the list itself |
| sort_product_listB | Sort items in the product list by store departments |
| update_product_list_itemA | Add a product by SKU or update its quantity in a product list. Set quantity to 0 to remove. |
| list_purchase_statsB | List previously purchased products with frequency data, ordered by most recent purchase |
| set_purchase_stat_ignoredB | Hide or unhide a product from purchase history |
| get_shopping_noteA | Get the shopping note (auto-creates if none exists) |
| add_shopping_note_lineA | Add a line to the shopping note. Provide exactly one of text (freeform) or sku (linked product), not both. |
| change_shopping_note_lineB | Update the text or quantity of an existing shopping note line |
| reorder_shopping_note_linesB | Reorder shopping note lines by passing their tokens in desired order |
| delete_shopping_note_lineC | Remove a line from the shopping note |
| delete_archived_lineB | Remove a specific archived shopping note line |
| clear_shopping_noteA | Delete all lines from the shopping note (the note itself is preserved) |
| check_store_order_eligibilityB | Check if the shopping note contains products that can be ordered from a store |
| list_archived_linesB | List previously completed and archived shopping note lines |
| apply_store_product_orderB | Reorder shopping note lines to match the store's aisle layout for efficient in-store shopping |
| set_line_completionA | Mark a shopping note line as completed or uncompleted. Uses a toggle endpoint: fetches current state and only toggles if needed. WARNING: Not idempotent due to toggle semantics. Do NOT retry on timeout — check current state first. |
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 33 tools
Each tool targets a specific resource and action (e.g., product lists vs. shopping notes vs. orders vs. checkout), with clear boundaries. Even though there are many tools, their purposes do not overlap.
All tools follow a consistent `verb_noun` pattern in snake_case (e.g., `create_product_list`, `add_checkout_lines`), making it easy to predict tool behavior from its name.
With 33 tools, the server is over-scoped. While each tool serves a distinct purpose, the count exceeds the recommended 3–15 range and makes the surface cumbersome for an agent to navigate.
The tool set covers the full lifecycle of a grocery shopping workflow: browsing products, managing lists and notes, placing orders, handling checkout, and tracking purchase stats. No obvious gaps for the intended domain.