Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
passwordNoAccepted as an alias for MENZA_PASSWORD for compatibility with the initial local operator file setup.
MENZA_ENV_FILENoPath to the operator env file containing credentials (default is the project .env). Not an MCP tool argument.
MENZA_PASSWORDNoYour Menza password. Only password sign-in is supported (MFA/captcha/consent pages require human action). Store in a 0600 operator env file, never commit it.
MENZA_USERNAMENoYour Menza username (email) used to sign in via the Microsoft/Shibboleth password flow. Store in the operator env file, never commit it.
username_emailNoAccepted as an alias for MENZA_USERNAME for compatibility with the initial local operator file setup.
MENZA_STATE_DIRNoPath to the private state directory for cookies and the watch database. Not an MCP tool argument.
MENZA_MAX_CZK_24HNoHard rolling-24-hour spending cap in Kč covering buy_meal and watcher purchases. Set only in the root-owned launcher/service, never via tool arguments.250
MENZA_MAX_PURCHASES_24HNoHard rolling-24-hour purchase limit covering buy_meal and watcher purchases. Set only in the root-owned launcher/service, never via tool arguments.2

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

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
menuA

List menu including sold-out dishes, soup variants, price and burza deadlines; no purchase.

minutkasC

Published minutky menu. These are direct-sale only, not guaranteed stock or online reservations.

ordersA

List current meal orders and own burza offers, with cancellation effects/deadlines.

balanceC

Account credit in CZK, subsidy vouchers, and the server-enforced 24h purchase limit usage.

meal_historyB

Consumed meals/transactions from account history (default last year); pending orders are separate.

meal_statisticsC

Spending, favourites, canteens and weekdays from actual historical transactions.

suggest_mealsA

Suggest lunch + dinner for each day, never buy. Dinner Harcov; lunch Harcov/Husova inferred from history. Rank dishes by previous orders. No timeslots. lunch includes soup by default; choose lunch_no_soup explicitly. Missing/closed menus remain unavailable, not invented.

buy_mealB

Spend credit to buy exactly one menu item. User must confirm; fresh price cannot exceed max_price.

cancel_mealB

Cancel only within the full-refund window; refuses to silently sell on burza.

sell_on_burzaB

Offer your own meal on burza AFTER refund cutoff. Credit returns only if someone buys it.

withdraw_from_burzaC

Withdraw your still-unsold offer from burza and restore it as your meal order.

watch_mealA

Explicitly authorize ONE future automatic burza purchase of this exact sold-out dish. Copy section/number/name from menu. Expiry must contain timezone and be within 14 days. Polls about every 20 seconds, not instant; never substitutes another dish or exceeds max_price.

list_watchesB

Durable watch status/outcomes; needs_review never retries automatically after uncertain purchases.

cancel_watchB

Stop waiting for a meal; does not cancel an order already bought by the watcher.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.2/5.0

Scored across 14 tools

Disambiguation4/5

Most tools map cleanly to a distinct resource+action: menu vs. minutkas, buy_meal vs. watch_meal, cancel_meal vs. cancel_watch, sell_on_burza vs. withdraw_from_burza are all explicitly contrasted in the descriptions. The closest pairs are menu/minutkas and orders/meal_history/meal_statistics, which require reading descriptions carefully but are still distinguishable.

Naming Consistency3/5

The majority follow a snake_case verb_noun or verb_target pattern (watch_meal, list_watches, cancel_watch, buy_meal, cancel_meal, suggest_meals, sell_on_burza). However several are bare nouns (menu, minutkas, orders, balance) with no list_/get_ prefix, and domain jargon (burza, minutkas) breaks the pattern further. Still readable, but the convention is mixed.

Tool Count5/5

14 tools for a canteen system with menus, ordering, burza resale, and automated watches is well-scoped and each tool covers a distinct operation. Nothing feels padded or missing at the count level.

Completeness4/5

The lifecycle is well covered: browse menus, buy, cancel, sell/withdraw on burza, watch sold-out dishes, list/cancel watches, check orders, balance, history, and statistics. The main gap is that burza can only be bought from automatically via watch_meal — there is no tool to browse or manually purchase another user's burza offer.

Maintenance

ActivityMaintained
ResponsivenessNo issues