Search / io.github.vistoya/market
market
R0· no sign-inSearch and get fashion products recommendations across multiple e-ecom stores
v1.0.0 · active · repository · descriptor JSON · versions
Search / io.github.vistoya/market
R0· no sign-inSearch and get fashion products recommendations across multiple e-ecom stores
v1.0.0 · active · repository · descriptor JSON · versions
{
"mcpServers": {
"market": {
"type": "http",
"url": "https://api.vistoya.com/mcp"
}
}
}claude mcp add --transport http market https://api.vistoya.com/mcp[mcp_servers.market]
url = "https://api.vistoya.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"market": {
"type": "remote",
"url": "https://api.vistoya.com/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"market": {
"type": "http",
"url": "https://api.vistoya.com/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=market&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYXBpLnZpc3RveWEuY29tL21jcCJ9"
}{
"servers": {
"market": {
"type": "http",
"url": "https://api.vistoya.com/mcp"
}
}
}{
"mcpServers": {
"market": {
"httpUrl": "https://api.vistoya.com/mcp"
}
}
}extensions:
"market":
enabled: true
name: "market"
type: streamable_http
uri: "https://api.vistoya.com/mcp"
timeout: 300
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_length1 tools have descriptions over 1,024 characters, which crowds the contexttools.schemasevery tool has an object input schematools.annotations6 of 6 tools declare readOnlyHint or destructiveHinttools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: discover_products (idempotentHint); find_similar_products (idempotentHint); find_similar_brands (idempotentHint); …tools.token_costabout 4,295 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changes7 tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packagediscover_productschangedinput schema, output schemaget_filterschangedannotationsget_productchangedannotationsfind_similar_brandschangedannotationsdiscover_brandschangedannotationsfind_similar_productschangedannotationsdiscover_productschangedannotationsFull history: list_changes · trend: quality JSON.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo +reachable +uptime-96% -stale-192d
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://api.vistoya.com/mcp streamable-http | none | yes | 96% | 244 ms | 2025-11-25 | 2026-10-20 |
discover_brands | Find fashion brands using natural language, structured filters, or both. Best for queries like "Italian streetwear brands", "Scandinavian minimalist brands", "Japanese technical outerwear", "brands with avant-garde tailoring", or qualified similarity such as "brands like Rick Owens for technical outerwear". For a plain "brands like X" request, use find_similar_brands. Country adjectives ("Italian", "Scandinavian", "Nordic", "Japanese", "Iberian", "Benelux") are parsed server-side into shipping-origin filters; you don't need to translate them to ISO codes. `query` is optional — provide a query, structured filters, or both. Brand country/shipping signals are best-effort and separate from product availability. |
discover_products | Find fashion products using natural language and/or structured filters. Provide a `query` for semantic ranking via multimodal text+image embeddings ("oversized wool coat", "black leather jacket", "minimalist gold jewelry", "linen shirt for a beach wedding under $200") — best for open-ended discovery. Keep queries concrete: noun-led with up to one or two modifiers works best ("summer linen shirt" beats "breathable linen shirt perfect for summer"). Provide only structured filters (category, brand, colors, gender, price, etc.) for pure browse — results are recency-ranked and paginate cleanly. Combine both for filtered semantic search. At least one of query or a filter must be provided. Example calls (notice the sparse filter population — descriptive attributes stay in `query`, not in structured fields): - "linen wedding guest dress under $200" → {query: "linen wedding guest dress", gender: "women", max_price: 200, materials: ["linen"]} - "wool coat under $300" → {query: "wool coat", gender: "women", max_price: 300, materials: ["wool"]} - "browse women's black dresses $100-$300" → {gender: "women", category: "clothing/dresses", colors: ["black"], min_price: 100, max_price: 300} - "Acne Studios outerwear" → {query: "outerwear", brand: "Acne Studios", gender: "women"} Returns compact product cards: AI-generated summary, price, images, tags, and compact availability by color/size; variant price differences are nested under the availability dimension that determines price. For merchant description, store info, SKU-level variants, exact variant prices, and all product images, call get_product with a product ID from these results. Multi-currency prices supported (e.g. "under 200 zł" or min_price=200 + currency="PLN"); returned prices render in the requested currency when provided. |
find_similar_brands | Given an active catalog brand name or merged alias, find similar brands using brand-profile vectors generated during product indexing. Unknown or ambiguous seeds return no brands. Returns up to 20 brands. |
find_similar_products | Given a product ID, find similar products across the entire catalog. Useful for "more like this" recommendations or finding alternatives. Returns compact product cards, not full variant detail; call get_product for SKU-level variants, exact variant prices, merchant description, store info, and all images. Returns page and hasNextPage. Returns up to 20 results per page, paginated (max 3 pages). |
get_filters | Returns available filter values in the catalog. By default returns categoryTree plus brands, colors, materials, genders, occasions, seasons, styles, silhouettes, currencies, and price range. Use "fields" to request only specific dimensions — faster and less data. "categoryTree" is a flat DFS-ordered list of { value, label } entries; hierarchy is encoded in the value slug (e.g. "clothing/jackets/bomber-jackets"), parents appear before descendants, and every value can be passed directly to discover_products.category. Use "brand_search" to search brands by prefix instead of listing all. Pass "gender" to scope categoryTree to that gender (women/men/girls/boys); omit to see the merged union. |
get_product | Get the detailed response for a specific product ID. Use this after discover_products or find_similar_products when you need merchant description, store info, all images, SKU-level availability variants, SKU, colorKey/size matrix, exact variant prices/compareAtPrice in the requested currency, and the direct link to purchase. |
Schemas: list_tools.
{
"name": "io.github.vistoya/market",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://api.vistoya.com/mcp",
"type": "streamable-http"
}
],
"version": "1.0.0",
"repository": {
"url": "https://github.com/vistoya/vistoya-mcp",
"source": "github"
},
"description": "Search and get fashion products recommendations across multiple e-ecom stores"
}