Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SNAPP_MCP_PROXYNoHTTP proxy for every request, e.g. http://user:pass@host:port

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
find_locationA

Turn a place name or address into latitude/longitude.

Use first when the user gives an address; food_* and market_* tools need lat/long. Biased toward near_lat/near_long (default Tehran): pass a city center for other cities.

reverse_geocodeA

Describe coordinates in words (point of interest, street, neighbourhood).

Use to confirm a delivery point with the user before searching.

list_citiesA

List cities Snappfood serves, with id, names and center coordinates.

Use the center as a rough delivery point when the user only names a city.

food_searchA

Search dishes by name near a delivery point, with price, discount and restaurant.

Use for "find X near me" or "discounted X". relevance is one fast index call; cheapest / biggest_discount drop side items and confirm prices on live menus. For the cheapest X across many menus use food_find_cheapest.

food_find_cheapestA

Find the cheapest way to get a dish: scans menus of nearby open restaurants plus FoodParty deals.

Use for the lowest total price of X. Ranks by food price after discount + packaging + delivery fee; check min_order, a cheap dish may not reach the minimum basket. Slower than food_search.

food_restaurantsA

List restaurants delivering to a point, with rating, delivery fee, ETA and coupon info.

Use to browse or rank restaurants or to find a vendor code by name. No dish prices: use food_menu.

food_menuA

Get one restaurant's menu: every item with price, discount, packaging fee and availability.

Use after picking a restaurant. final_price = price - discount; packaging is added per item at checkout.

food_order_costsA

Get the extra costs and conditions of ordering from one restaurant.

Use before recommending a restaurant: delivery fee, ETA, minimum order and coupons (with the basket total each needs and whether it is first-order only). Packaging is per item in food_menu.

food_reviewsA

Read recent customer reviews of a restaurant (rating, text, what they ordered, vendor reply).

Use to judge quality, delays or packaging before recommending.

food_party_dealsA

List today's FoodParty flash deals (deep discounts, limited stock, time window) still in stock.

Use for "what's on a big discount right now". Deals run only inside starts/ends; outside it the list is empty.

food_meal_for_oneA

List single-person meals (at most 299k Toman, free delivery), cheapest first.

Use for "cheap meal for one". Check min_order: a cheap meal may not reach the minimum basket.

food_discounted_vendorsA

List restaurants running a discount now, plus the short "Gem" hunt discount if one is live.

Use for "which restaurants have offers". Vendor-level only: food_menu has prices.

market_searchA

Search a grocery product across all SnappMarket stores delivering to the point.

Use to see which stores carry an item and at what price: stores (open or not) with up to ~5 matching products each. For one flat cheapest-first list use market_find_cheapest.

market_find_cheapestA

Find the cheapest in-stock offers for a grocery product near the point.

Use for the lowest price of an item. Scans open stores that deliver to the point; one flat list sorted by final price. Check delivery_fee and min_order before recommending a store.

market_storesA

List SnappMarket stores delivering to the point, with delivery fee, minimum order and rating.

Use to pick a store before browsing it with market_store_products.

market_store_infoA

Get one store's delivery fee, minimum order, opening hours, rating and coupons for the point.

Use before recommending a store. Basket cost = sum(final prices) + delivery_fee - coupon, and it must reach min_order. Read each coupon's conditions; is_applicable is false when logged out.

market_store_productsA

Browse or search the products of one store.

  • query: search the store (wins over category ids).

  • category_id (+ optional subcategory_id): that category's products.

  • neither: the store's categories and sub-categories with ids.

market_categoriesA

List SnappMarket product categories and sub-categories with their ids.

The ids work as category_id / subcategory_id in market_store_products. Id 99999999 is the virtual kalabarg (government e-coupon) category.

market_productA

Get one product's details and price in one store.

Use to confirm the current price of an item the user picked.

market_party_dealsA

List current SnappMarket "market party" flash deals near the point, biggest discount first.

Use for the best grocery discounts right now. An order may hold at most capacity_per_order deal items; segment 'new_user' deals are for new customers only.

market_reviewsA

Read a store's 30 most relevant customer comments, rating 0-5.

Use as a quality check before recommending a store. No paging: the API returns the same 30 comments.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.9/5.0

Scored across 21 tools

Disambiguation4/5

The paired tools food_search/food_find_cheapest and market_search/market_find_cheapest are the closest sources of confusion, but the descriptions explicitly differentiate them (fast relevance search vs. ranked cheapest) and cross-reference each other. The food_ vs market_ domains and the store-level vs product-level vs menu-level split keep most tools cleanly separable. Only minor overlap remains (e.g., food_discounted_vendors vs food_party_deals).

Naming Consistency4/5

The dominant pattern is consistent domain-prefixed snake_case (food_*, market_*) which is easy to scan. The location helpers (reverse_geocode, find_location, list_cities) break the prefix scheme and mix verb+noun (food_search, market_find_cheapest) with bare nouns (food_menu, market_stores), a minor inconsistency.

Tool Count3/5

21 tools is on the heavy side for the domain burden, since discovery features (search, find_cheapest, listings, reviews, deals) are essentially mirrored once for food and once for market. Each tool does earn its place and none are redundant, but the set sits in the borderline 16-25 range.

Completeness4/5

For a discovery/recommendation surface the coverage is strong: location resolution, city lookup, food search/menu/costs/reviews/deals, and market stores/products/categories/reviews are all present. The apparent gap is ordering/cart/checkout, though the descriptions suggest the server is intentionally scoped to search and comparison.

Maintenance

ActivityMaintained
ResponsivenessNo issues