shopino-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SHOPINO_MCP_PROXY | No | HTTP proxy for every request, e.g. http://user:pass@host:port. System proxy variables are ignored on purpose; set this if you need a proxy. |
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
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| sh_searchA | Search products across all Shopino shops by keyword: price to pay, discount, stock and selling shop. Use first for "price of X" / "where can I buy X". Narrow with category_id (sh_categories), shop_id, size, price range or city (same-day courier). For the cheapest matches in one flat list use sh_find_cheapest. Sizes, colors and stock per variant: sh_product. More results: pass next_cursor back as cursor (keep the other arguments the same). |
| sh_find_cheapestA | Find the cheapest in-stock products for a keyword across all shops, one flat list sorted by price to pay (Toman). Use when the user wants the lowest price for X. The site sorts in-stock matches by price to pay;
this drops loose matches whose title lacks a query word (match_all_words) and items without a
price. Narrow with category_id (sh_categories) or city. A product's price is its cheapest
variant: check the wanted size / color with sh_product. complete=false: matches go on past
|
| sh_browseA | List products of a category, a shop, a product tag or a curated listing, with sorting, price range and filters. Use for "cheapest women's manteau in size L under 2,000,000 Toman", "newest products of shop X", "biggest discounts in bags" (discounted_only + biggest_discount). With no category / shop / tag / listing it browses all shops (e.g. today's discounts). Ids: sh_categories, sh_shops, sh_brands; size values: sh_filters. Details of a product: sh_product. More results: pass next_cursor back as cursor with the same other arguments. |
| sh_filtersA | List the filter values sh_search / sh_browse accept: size systems with their sizes, sort orders, cities with same-day courier delivery, and (with category_id) the sub-categories of a category. Use before filtering by size or city. Price range is free (Toman); brand ids (watches only) come from sh_brands. Shopino has no color filter that works (the site's own color filter returns nothing). |
| sh_categoriesA | List Shopino's category tree (clothing, bags, shoes, accessories, watches, jewelry, gold, cosmetics, ...) with ids, URL paths and levels, plus the total product and shop counts. Use to get a category_id for sh_search / sh_browse / sh_find_cheapest. Without a query only levels up to max_level are listed; with a query every level is searched. |
| sh_brandsA | Without shop_id: the official brand shops Shopino features (each is a shop: browse it with sh_browse(shop_id=...)). With shop_id: the brands that shop sells, with brand ids for the brand_id filter of sh_search / sh_browse (only watch shops have brands). Use for "show me brand X" (find its shop) or to filter a watch shop by brand. |
| sh_dealsA | List today's featured deals from the Shopino home page: the flash sale (شگفت انگیز) with its end time, best sellers, newest and themed rows, biggest discount first, plus running campaigns and the shop discount codes seen on those products. Use for "what's on sale" / "best discounts today". Open a campaign with sh_campaign(slug); for every discounted product of a category use sh_browse(discounted_only=true, sort='biggest_discount'). |
| sh_campaignA | Open a Shopino campaign or landing page: its product rows (with prices) and its tabs. Each tab names where its products come from: |
| sh_productA | Get one product's full record: price and discount (Toman), every color / size variant with its own price and units in stock, size guide, description, tags, the selling shop with its rating and buyer survey, and the original link on the shop's own website. Use after sh_search / sh_browse when the user picks a product, to check that their size and color is in stock and what it costs, and whether the shop is trustworthy. Same item elsewhere: sh_similar. More from the shop: sh_browse(shop_id=...). Related products: sh_browse(tag=...). |
| sh_similarA | Find products like this one at other shops, with prices, discount, stock and shop. Use when the product is out of stock, too expensive, or to check whether another shop sells the same item cheaper (kind='visual', sort='cheapest'). The product itself is left out. |
| sh_blog_searchA | Search the Shopino blog (style guides and model galleries: manteau, dress, bag, shoe models, ...), newest first. Without a query: the latest posts. Use when the user asks what is in fashion or which model to choose; read a post with sh_blog_post(slug), then find products with sh_search. |
| sh_blog_postA | Read one Shopino blog post as plain text, with its category id for sh_browse. Use after sh_blog_search to answer style questions with the post's advice. |
| sh_shopsA | Find Shopino shops (online and Instagram shops) by name, category group, gender or courier city, with rating, number of buyer surveys, followers and product count. Use to get a shop_id for sh_shop / sh_browse(shop_id=...) / sh_search(shop_id=...), or for "best-known women's clothing shops with delivery in Tehran" (order='most_followed'). |
| sh_shopA | Get a shop's profile: rating, customer rating, buyer survey (satisfied, quality, price, on-time delivery %), followers, product count, main categories, courier city, contacts and website. Use to judge whether a shop is trustworthy before buying, or to see what it sells. Its products: sh_browse(shop_id=...) or sh_search(shop_id=...); its brands (watch shops): sh_brands. |
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 14 tools
Each tool targets a distinct action or resource (browse, search, cheapest, details, shops, blogs), and descriptions explicitly guide usage. However, sh_search and sh_find_cheapest overlap heavily, and sh_browse with discounted_only overlaps with sh_deals, creating minor confusion.
All tool names follow a consistent pattern: lowercase snake_case with the sh_ prefix, mixing nouns for resources (sh_product) and verbs for actions (sh_search). No deviations in casing or prefixing.
14 tools are well-scoped for an e-commerce discovery server, covering product search, browsing, details, shops, blogs, deals, and metadata. Each tool earns its place without redundancy in count.
The surface covers core discovery workflows: searching, browsing, finding cheapest, product details, similar items, shop profiles, blog content, deals, filters, categories, and brands. Minor gaps exist (e.g., no direct comparison tool or user-generated product reviews beyond shop surveys), but agents can work around them.