mcp-drink-inventory
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| INVENTORY_DB_PATH | No | Path to the SQLite database file. If unset, defaults to ~/.local/share/mcp-drink-inventory/inventory.db. Relative paths resolve against process cwd; the parent directory is created automatically. |
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
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| add_bottleB | Add a row of identical bottles; remaining_percent applies to each bottle. |
| list_inventoryB | List bottles using optional accent/case-insensitive substring filters. |
| get_inventory_summaryC | Return counts, brands, variants and remaining ml per bottle and category. |
| update_bottleC | Update editable BottleInput fields; rejects unknown fields and invalid values. |
| update_remainingC | Set remaining percentage (0–100) for each bottle represented by this row. |
| remove_bottleA | Delete an inventory row by ID, including all bottles counted in its quantity. |
| recommend_cocktails_from_inventoryB | Compare stock volumes for one serving; distinguish missing required and optional items. |
| get_cocktail_recipeA | Get structured ingredients and steps, scaled to 1–1000 servings. |
| recommend_food_pairingsC | Rank pairings from beverage characteristics; pass category/variety for unknown brands. |
| seed_demo_inventoryA | Explicitly seed synthetic data once; refuses to mix with existing unseeded inventory. |
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 10 tools
Most tools are clearly distinct: CRUD operations, inventory views, and recommendation features each have separate purposes. The only mild overlap is between update_bottle and update_remaining (both modify a bottle row) and between list_inventory and get_inventory_summary, but the descriptions clarify the different intents well enough.
All tool names follow a consistent snake_case verb_noun pattern: add_bottle, list_inventory, remove_bottle, recommend_food_pairings, etc. Even longer names like recommend_cocktails_from_inventory remain structurally consistent and predictable.
With 10 tools, the server is well-scoped for a drink inventory domain that also includes cocktail recommendations and food pairings. Each tool addresses a distinct need without unnecessary redundancy or bloat.
The inventory lifecycle is well covered: add, list, summarize, update, adjust remaining, and remove bottles. Cocktail recipe lookup, inventory-based recommendations, food pairings, and demo seeding fill out the domain without obvious dead ends.