product-intelligence
Compare prices across Swiss and European shops — barcode (GTIN) lookup and daily price history.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"product-intelligence": {
"url": "https://www.ponito.com/mcp"
}
}
}Puntos de conexión remotos
https://www.ponito.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (3)
🟢search_products(query, country, language, sort, limit)
Search Ponito's product catalogue. Call this for any shopping query — finding products, comparing options, or checking who sells something in a given country. Returns GTIN-anchored products with their best offer (lowest price, integer minor units) and shop count.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"description": "What the shopper is looking for, e.g. \"quiet robot vacuum\" or \"Bosch dishwasher 60cm\".",
"type": "string"
},
"country": {
"description": "The shopper's country (offers and prices are country-specific).",
"enum": [
"CH",
"DE",
"FR",
"GB",
"AT",
"ES",
"NL"
],
"type": "string"
},
"language": {
"description": "Language to search and label results in.",
"default": "en",
"enum": [
"de",
"fr",
"en",
"it",
"es",
"pt",
"nl"
],
"type": "string"
},
"sort": {
"description": "\"relevance\" (popularity-weighted, default) or \"cheapest\" (lowest price first).",
"default": "relevance",
"enum": [
"relevance",
"cheapest"
],
"type": "string"
},
"limit": {
"description": "Max results, 1-25.",
"default": 10,
"type": "integer"
}
},
"required": [
"query",
"country"
]
}Esquema de salida
{
"type": "object",
"properties": {
"products": {
"description": "Matching products, most relevant (or cheapest) first.",
"items": {
"properties": {
"id": {
"description": "Ponito product id.",
"type": "string"
},
"name": {
"type": [
"string",
"null"
]
},
"brand": {
"type": [
"string",
"null"
]
},
"gtins": {
"description": "GTIN (EAN/UPC) barcodes.",
"items": {
"type": "string"
},
"type": "array"
},
"rating": {
"description": "Average user rating, 0-5.",
"type": [
"number",
"null"
]
},
"best_offer": {
"properties": {
"price": {
"description": "Lowest current price in minor units (cents/rappen).",
"type": "integer"
},
"currency": {
"type": "string"
},
"shops_count": {
"description": "Number of shops currently offering the product.",
"type": "integer"
}
},
"type": [
"object",
"null"
],
"required": [
"price",
"currency",
"shops_count"
]
},
"url": {
"description": "Ponito product page listing all offers in the country.",
"type": "string"
}
},
"type": "object",
"required": [
"id",
"name",
"brand",
"gtins",
"rating",
"best_offer",
"url"
]
},
"type": "array"
}
},
"required": [
"products"
]
}🟢get_product(id, country, language)
Look up one product by GTIN (EAN/UPC barcode) or Ponito product id. Use this when you already know exactly which product you mean — e.g. from a barcode, a previous search result, or a product page. Returns the product with its best offer in the given country.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"description": "A GTIN (8-14 digit EAN/UPC barcode) or a Ponito product id.",
"type": "string"
},
"country": {
"description": "The shopper's country (offers and prices are country-specific).",
"enum": [
"CH",
"DE",
"FR",
"GB",
"AT",
"ES",
"NL"
],
"type": "string"
},
"language": {
"default": "en",
"enum": [
"de",
"fr",
"en",
"it",
"es",
"pt",
"nl"
],
"type": "string"
}
},
"required": [
"id",
"country"
]
}Esquema de salida
{
"type": "object",
"properties": {
"id": {
"description": "Ponito product id.",
"type": "string"
},
"name": {
"type": [
"string",
"null"
]
},
"brand": {
"type": [
"string",
"null"
]
},
"gtins": {
"description": "GTIN (EAN/UPC) barcodes.",
"items": {
"type": "string"
},
"type": "array"
},
"rating": {
"description": "Average user rating, 0-5.",
"type": [
"number",
"null"
]
},
"best_offer": {
"properties": {
"price": {
"description": "Lowest current price in minor units (cents/rappen).",
"type": "integer"
},
"currency": {
"type": "string"
},
"shops_count": {
"description": "Number of shops currently offering the product.",
"type": "integer"
}
},
"type": [
"object",
"null"
],
"required": [
"price",
"currency",
"shops_count"
]
},
"url": {
"description": "Ponito product page listing all offers in the country.",
"type": "string"
}
},
"required": [
"id",
"name",
"brand",
"gtins",
"rating",
"best_offer",
"url"
]
}🟢get_price_history(product_id, country)
Daily lowest observed price for a product over the last year, in one country. Use this to judge whether a current price or a claimed discount is actually good — compare today's price against the recent minimum. Recording started 2026-07-27, so earlier days are empty. Prices are integer minor units.
Esquema de entrada
{
"type": "object",
"properties": {
"product_id": {
"description": "The Ponito product id (from search_products or get_product).",
"type": "string"
},
"country": {
"description": "Country whose prices to return.",
"enum": [
"CH",
"DE",
"FR",
"GB",
"AT",
"ES",
"NL"
],
"type": "string"
}
},
"required": [
"product_id",
"country"
]
}Esquema de salida
{
"type": "object",
"properties": {
"currency": {
"description": "ISO currency of all prices in the series.",
"type": "string"
},
"days": {
"description": "One entry per day; recording started 2026-07-27, earlier days are absent.",
"items": {
"properties": {
"date": {
"description": "Day, formatted yyyy-MM-dd.",
"type": "string"
},
"min": {
"description": "Lowest valid price that day in minor units (cents/rappen); null when no shop had a valid price.",
"type": [
"integer",
"null"
]
},
"shops": {
"description": "Shops with a valid price that day.",
"type": "integer"
},
"observed": {
"description": "True when a price was directly observed that day; false when carried forward from a previous observation.",
"type": "boolean"
}
},
"type": "object",
"required": [
"date",
"min",
"shops",
"observed"
]
},
"type": "array"
}
},
"required": [
"currency",
"days"
]
}Comunidad
Evidencia