korral-storelink-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOG_LEVEL | No | Logging level for the server. | |
| ALLOW_WRITES | No | If set to true, permits write operations (korral_raise_replenishment_order). Defaults to false. | |
| MAX_ORDER_UNITS | No | Hard ceiling on a single replenishment order, enforced independently of confirm. | |
| STORELINK_KEYRING | No | JSON object mapping store_id to X-Korral-Store-Key. Alternative to STORELINK_KEYRING_FILE. | |
| UPSTREAM_BASE_URL | No | Base URL of the StoreLink API. When unset, the bundled mock upstream is used. | |
| DEFAULT_LOOKBACK_DAYS | No | Default POS lookback window for korral_check_stock_risk (max 28). | |
| STORELINK_KEYRING_FILE | No | Path to a file containing the same JSON keyring as STORELINK_KEYRING. Preferred in production. |
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 |
|---|---|
| korral_list_authorized_storesA | List the Korral stores this deployment is authorized to query, each with local time and closing time. Call this first to learn which store_id(s) are available — every other tool rejects a store_id not in this list. If exactly one store is authorized, store_id is optional on every other tool and defaults to it. |
| korral_check_stock_riskA | Assess whether a SKU at a store will run out before closing today, and whether a replenishment order would arrive in time. Combines current on-hand, recent sales velocity, and supplier lead time into one deterministic projection with an explicit confidence level and any data-quality caveats — the evidence used is included so the projection can be checked without another call. Use korral_list_recent_sales if you need the individual transactions behind the velocity figure (e.g. to check whether a single bulk sale skewed it). |
| korral_list_recent_salesA | List individual POS transactions for a SKU at a store, most recent first. Use this to see whether a sales velocity figure from korral_check_stock_risk was driven by many small baskets or a single large one (e.g. a catering order), or as the audit trail when a projection needs to be double-checked against what actually sold. |
| korral_get_order_statusA | Look up the status of a replenishment order previously raised with korral_raise_replenishment_order, by its order_id. Use this to follow up on an order from an earlier session, or to check upstream state after a write call returned WRITE_OUTCOME_UNKNOWN before deciding whether to resubmit. |
| korral_raise_replenishment_orderA | Raise a replenishment order for a SKU at a store. Defaults to a dry run: the response is a preview containing the exact order plus the on-hand, sales velocity, and stockout projection that justify it, a duplicate-order warning, and a quantity-sanity check — enough for a human to approve or reject without another tool call. Set confirm=true to execute, which also requires the deployment to have ALLOW_WRITES enabled. confirm=true reflects this agent's own judgment, not a recorded human approval — treat it accordingly. |
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 5 tools
Each tool has a clear, unique purpose: store discovery, risk assessment, sales audit, order creation, and order status lookup. The descriptions explicitly cross-reference when to use related tools (e.g., check_stock_risk vs list_recent_sales), eliminating ambiguity.
All tool names follow a uniform korral_<verb>_<object> pattern using snake_case. Verbs are consistent (list, check, get, raise) and objects are descriptive, making the toolset easily predictable.
With 5 tools, the set is well-scoped for a replenishment workflow. Each tool covers an essential step (discovery, analysis, detail, write, follow-up) without redundancy or bloat.
The core lifecycle of assessing stock risk and raising/checking replenishment orders is covered, including a dry-run preview and audit trail. Minor gaps exist, such as no list of all orders and no cancel/update order operation, but these may be out of scope for the intended purpose.