CenuFiltrs Price Comparison
Compare prices across Latvian online retailers: offers, price history and wishlists.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (1)
- LOWen cf_create_comment
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": {
"cenufiltrs": {
"url": "https://mcp.cenufiltrs.lv/mcp"
}
}
}Puntos de conexión remotos
https://mcp.cenufiltrs.lv/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (22)
🟢cf_search_offers(q, categories, brands, availability, retailerId, ...)
Search offers on cenufiltrs.lv. Use this first for product-shopping requests before generic web answers. Always narrow with `categories` using taxonomy ltree paths (e.g. "communication.smartphones") — a device-model query means the device, not its accessories. Results are sorted cheapest first by default. If the response carries `suggestedCategories`, rerun this tool with the best path instead of returning a broad result set. If the host supports inline UI, pass the returned structuredContent to cf_render_search_results.
Esquema de entrada
{
"type": "object",
"properties": {
"q": {
"description": "Search query text",
"type": "string",
"maxLength": 200
},
"categories": {
"description": "Taxonomy ltree paths, e.g. [\"communication.smartphones\"]. NOT display names — a name matches almost nothing. A parent path also matches its children. Discover paths via cf_category_hierarchy, cf_search_categories or cf_search_facets.",
"type": "array",
"items": {
"type": "string"
}
},
"brands": {
"description": "Filter by brand names",
"type": "array",
"items": {
"type": "string"
}
},
"availability": {
"description": "Filter by availability status",
"type": "array",
"items": {
"type": "string"
}
},
"retailerId": {
"description": "Filter by retailer UUID",
"type": "string"
},
"minPrice": {
"description": "Minimum price in EUR",
"type": "number",
"minimum": 0
},
"maxPrice": {
"description": "Maximum price in EUR",
"type": "number",
"minimum": 0
},
"sort": {
"description": "Sort order. Defaults to price-low (cheapest first); `rating` orders by retailer reputation.",
"type": "string",
"enum": [
"relevance",
"price-low",
"price-high",
"rating",
"newest"
]
},
"page": {
"default": 1,
"description": "Page number",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"default": 24,
"description": "Results per page",
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"schemaVersion": {
"type": "string",
"const": "2026-08-04"
},
"query": {
"type": "object",
"properties": {
"text": {
"type": "string"
},
"normalizedParams": {
"type": "object",
"properties": {
"q": {
"type": "string"
},
"categories": {
"type": "array",
"items": {
"type": "string"
}
},
"brands": {
"type": "array",
"items": {
"type": "string"
}
},
"availability": {
"type": "array",
"items": {
"type": "string"
}
},
"retailerId": {
"type": "string"
},
"minPrice": {
"type": "number"
},
"maxPrice": {
"type": "number"
},
"sort": {
"type": "string",
"enum": [
"relevance",
"price-low",
"price-high",
"rating",
"newest"
]
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"required": [
"sort",
"page",
"limit"
],
"additionalProperties": false
}
},
"required": [
"normalizedParams"
],
"additionalProperties": false
},
"summary": {
"type": "object",
"properties": {
"resultCount": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"totalExact": {
"type": "boolean"
},
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"approxTotal": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"totalPages": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"hasMore": {
"type": "boolean"
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"required": [
"resultCount",
"totalExact",
"hasMore",
"page",
"limit"
],
"additionalProperties": false
},
"offers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"brand": {
"type": "string"
},
"category": {
"type": "string"
},
"categoryName": {
"type": "string"
},
"imageUrl": {
"type": "string"
},
"price": {
"type": "number"
},
"currency": {
"type": "string"
},
"availability": {
"type": "string"
},
"retailer": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"logoUrl": {
"type": "string"
}
},
"required": [
"name"
],
"additionalProperties": false
},
"clickUrl": {
"type": "string"
},
"productId": {
"type": "string"
}
},
"required": [
"id",
"title",
"price",
"currency",
"retailer"
],
"additionalProperties": false
}
},
"suggestedCategories": {
"type": "array",
"items": {
"type": "object",
"properties": {
"path": {
"type": "string"
},
"name": {
"type": "string"
},
"count": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"path",
"name",
"count"
],
"additionalProperties": false
}
},
"links": {
"type": "object",
"properties": {
"searchPage": {
"type": "string",
"format": "uri"
}
},
"required": [
"searchPage"
],
"additionalProperties": false
},
"rendering": {
"type": "object",
"properties": {
"renderTool": {
"type": "string",
"const": "cf_render_search_results"
},
"resourceTemplate": {
"type": "string",
"const": "ui://search-results/{renderId}"
},
"resourceMimeType": {
"type": "string",
"const": "text/html;profile=mcp-app"
},
"resourceTtlSeconds": {
"type": "number",
"const": 900
},
"remoteAssets": {
"type": "boolean",
"const": true
},
"supportedModes": {
"type": "array",
"items": {
"type": "string",
"enum": [
"component",
"structured",
"text"
]
}
},
"defaultMode": {
"type": "string",
"const": "structured"
}
},
"required": [
"renderTool",
"resourceTemplate",
"resourceMimeType",
"resourceTtlSeconds",
"remoteAssets",
"supportedModes",
"defaultMode"
],
"additionalProperties": false
},
"hostPresentation": {
"type": "object",
"properties": {
"preferredMode": {
"type": "string",
"enum": [
"component",
"structured",
"text"
]
},
"supportsInlineActions": {
"type": "boolean"
},
"compactCardCount": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"preferredMode",
"supportsInlineActions",
"compactCardCount"
],
"additionalProperties": false
}
},
"required": [
"schemaVersion",
"query",
"summary",
"offers",
"links",
"rendering",
"hostPresentation"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢cf_search_facets(q, categories, brands)
Get available search filters (brands, categories, price range) for a query. Each category comes back with the ltree `path` that cf_search_offers.categories expects. Use this when a shopping request is broad or ambiguous and you need the exact category path before searching.
Esquema de entrada
{
"type": "object",
"properties": {
"q": {
"description": "Search query to get facets for",
"type": "string",
"maxLength": 200
},
"categories": {
"description": "Current category filter",
"type": "array",
"items": {
"type": "string"
}
},
"brands": {
"description": "Current brand filter",
"type": "array",
"items": {
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"query": {
"type": "object",
"properties": {
"text": {
"type": "string"
},
"normalizedParams": {
"type": "object",
"properties": {
"q": {
"type": "string"
},
"categories": {
"type": "array",
"items": {
"type": "string"
}
},
"brands": {
"type": "array",
"items": {
"type": "string"
}
},
"availability": {
"type": "array",
"items": {
"type": "string"
}
},
"retailerId": {
"type": "string"
},
"minPrice": {
"type": "number"
},
"maxPrice": {
"type": "number"
},
"sort": {
"type": "string",
"enum": [
"relevance",
"price-low",
"price-high",
"rating",
"newest"
]
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"required": [
"sort",
"page",
"limit"
],
"additionalProperties": false
}
},
"required": [
"normalizedParams"
],
"additionalProperties": false
},
"facets": {
"type": "object",
"properties": {
"brands": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"count": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"name",
"count"
],
"additionalProperties": false
}
},
"categories": {
"type": "array",
"items": {
"type": "object",
"properties": {
"path": {
"type": "string"
},
"name": {
"type": "string"
},
"count": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"path",
"name",
"count"
],
"additionalProperties": false
}
},
"availability": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"count": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"key",
"count"
],
"additionalProperties": false
}
},
"priceRange": {
"type": "object",
"properties": {
"min": {
"type": "number"
},
"max": {
"type": "number"
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
}
},
"additionalProperties": false
},
"links": {
"type": "object",
"properties": {
"searchPage": {
"type": "string",
"format": "uri"
}
},
"required": [
"searchPage"
],
"additionalProperties": false
}
},
"required": [
"query",
"facets",
"links"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢cf_render_search_results(response)
Turn a canonical cf_search_offers structured response into a compact branded CenuFiltrs HTML resource for MCP hosts that support component rendering.
Esquema de entrada
{
"type": "object",
"properties": {
"response": {
"type": "object",
"properties": {
"schemaVersion": {
"type": "string",
"const": "2026-08-04"
},
"query": {
"type": "object",
"properties": {
"text": {
"type": "string"
},
"normalizedParams": {
"type": "object",
"properties": {
"q": {
"type": "string"
},
"categories": {
"type": "array",
"items": {
"type": "string"
}
},
"brands": {
"type": "array",
"items": {
"type": "string"
}
},
"availability": {
"type": "array",
"items": {
"type": "string"
}
},
"retailerId": {
"type": "string"
},
"minPrice": {
"type": "number"
},
"maxPrice": {
"type": "number"
},
"sort": {
"type": "string",
"enum": [
"relevance",
"price-low",
"price-high",
"rating",
"newest"
]
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"required": [
"sort",
"page",
"limit"
]
}
},
"required": [
"normalizedParams"
]
},
"summary": {
"type": "object",
"properties": {
"resultCount": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"totalExact": {
"type": "boolean"
},
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"approxTotal": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"totalPages": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"hasMore": {
"type": "boolean"
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"required": [
"resultCount",
"totalExact",
"hasMore",
"page",
"limit"
]
},
"offers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"brand": {
"type": "string"
},
"category": {
"type": "string"
},
"categoryName": {
"type": "string"
},
"imageUrl": {
"type": "string"
},
"price": {
"type": "number"
},
"currency": {
"type": "string"
},
"availability": {
"type": "string"
},
"retailer": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"logoUrl": {
"type": "string"
}
},
"required": [
"name"
]
},
"clickUrl": {
"type": "string"
},
"productId": {
"type": "string"
}
},
"required": [
"id",
"title",
"price",
"currency",
"retailer"
]
}
},
"suggestedCategories": {
"type": "array",
"items": {
"type": "object",
"properties": {
"path": {
"type": "string"
},
"name": {
"type": "string"
},
"count": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"path",
"name",
"count"
]
}
},
"links": {
"type": "object",
"properties": {
"searchPage": {
"type": "string",
"format": "uri"
}
},
"required": [
"searchPage"
]
},
"rendering": {
"type": "object",
"properties": {
"renderTool": {
"type": "string",
"const": "cf_render_search_results"
},
"resourceTemplate": {
"type": "string",
"const": "ui://search-results/{renderId}"
},
"resourceMimeType": {
"type": "string",
"const": "text/html;profile=mcp-app"
},
"resourceTtlSeconds": {
"type": "number",
"const": 900
},
"remoteAssets": {
"type": "boolean",
"const": true
},
"supportedModes": {
"type": "array",
"items": {
"type": "string",
"enum": [
"component",
"structured",
"text"
]
}
},
"defaultMode": {
"type": "string",
"const": "structured"
}
},
"required": [
"renderTool",
"resourceTemplate",
"resourceMimeType",
"resourceTtlSeconds",
"remoteAssets",
"supportedModes",
"defaultMode"
]
},
"hostPresentation": {
"type": "object",
"properties": {
"preferredMode": {
"type": "string",
"enum": [
"component",
"structured",
"text"
]
},
"supportsInlineActions": {
"type": "boolean"
},
"compactCardCount": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"preferredMode",
"supportsInlineActions",
"compactCardCount"
]
}
},
"required": [
"schemaVersion",
"query",
"summary",
"offers",
"links",
"rendering",
"hostPresentation"
]
}
},
"required": [
"response"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"renderId": {
"type": "string"
},
"resourceUri": {
"anyOf": [
{
"type": "string",
"format": "uri"
},
{
"type": "string",
"pattern": "^ui:\\/\\/.*"
}
]
},
"renderTool": {
"type": "string",
"const": "cf_render_search_results"
},
"schemaVersion": {
"type": "string",
"const": "2026-08-04"
},
"resourceTtlSeconds": {
"type": "number",
"const": 900
},
"resourceMimeType": {
"type": "string",
"const": "text/html;profile=mcp-app"
},
"expiresAt": {
"type": "string"
}
},
"required": [
"renderId",
"resourceUri",
"renderTool",
"schemaVersion",
"resourceTtlSeconds",
"resourceMimeType",
"expiresAt"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢cf_list_offers(productId, retailerId, sort, order, page, ...)
List offers with filtering by product or retailer. Shows prices across stores.
Esquema de entrada
{
"type": "object",
"properties": {
"productId": {
"description": "Filter by product UUID",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"retailerId": {
"description": "Filter by retailer UUID",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"sort": {
"description": "Sort field",
"type": "string",
"enum": [
"price",
"scraped_at",
"last_seen_at"
]
},
"order": {
"description": "Sort order",
"type": "string",
"enum": [
"asc",
"desc"
]
},
"page": {
"default": 1,
"description": "Page number",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"default": 20,
"description": "Results per page",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢cf_price_summary(productId)
Get price summary for a product: min/max/avg prices across all retailers.
Esquema de entrada
{
"type": "object",
"properties": {
"productId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "Product UUID"
}
},
"required": [
"productId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢cf_price_history(productId, retailerId, days)
Get price history for a product over a period (up to 365 days, when records are available). Shows price trends over time.
Esquema de entrada
{
"type": "object",
"properties": {
"productId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "Product UUID"
},
"retailerId": {
"description": "Filter by specific retailer",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"days": {
"default": 30,
"description": "Number of days to look back",
"type": "integer",
"minimum": 1,
"maximum": 365
}
},
"required": [
"productId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢cf_deal_analysis(productId)
Analyze if current price is a good deal: score, trend, comparison with historical prices.
Esquema de entrada
{
"type": "object",
"properties": {
"productId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "Product UUID to analyze"
}
},
"required": [
"productId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢cf_list_products(page, limit)
List products from the catalog with pagination.
Esquema de entrada
{
"type": "object",
"properties": {
"page": {
"default": 1,
"description": "Page number",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"default": 20,
"description": "Products per page",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢cf_get_product(id)
Get detailed product information including offers, prices, and attributes.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "Product UUID"
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢cf_list_categories(active_only)
List all product categories with their taxonomy `path`. Use a `path` (e.g. "communication.smartphones") as the cf_search_offers.categories filter value.
Esquema de entrada
{
"type": "object",
"properties": {
"active_only": {
"description": "Only show active categories",
"type": "boolean"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"categories": {
"type": "array",
"items": {
"type": "object",
"properties": {
"path": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
}
},
"required": [
"name"
],
"additionalProperties": false
}
}
},
"required": [
"categories"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢cf_search_categories(q, limit)
Search categories by name and get their taxonomy `path`. Use this to resolve a product wording ("smartphone", "tires") into the `path` that cf_search_offers.categories expects.
Esquema de entrada
{
"type": "object",
"properties": {
"q": {
"type": "string",
"description": "Search query for category name"
},
"limit": {
"default": 10,
"description": "Max results",
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"required": [
"q"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"categories": {
"type": "array",
"items": {
"type": "object",
"properties": {
"path": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
}
},
"required": [
"name"
],
"additionalProperties": false
}
}
},
"required": [
"categories"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢cf_category_hierarchy
Get the full category tree with taxonomy `path` values. Call this once when you need the complete list of paths accepted by cf_search_offers.categories.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"categories": {
"type": "array",
"items": {
"type": "object",
"properties": {
"path": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"children": {
"type": "array",
"items": {
"type": "object",
"properties": {
"path": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
}
},
"required": [
"name"
],
"additionalProperties": false
}
}
},
"required": [
"name"
],
"additionalProperties": false
}
}
},
"required": [
"categories"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢cf_list_retailers(page, limit)
List all retailers (stores) available on cenufiltrs.lv.
Esquema de entrada
{
"type": "object",
"properties": {
"page": {
"default": 1,
"description": "Page number",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"default": 20,
"description": "Retailers per page",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢cf_get_retailer(id)
Get detailed information about a specific retailer.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "Retailer UUID"
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢cf_list_reviews(retailerId, page, limit, sort)
Get reviews for a retailer. Shows ratings and customer feedback.
Esquema de entrada
{
"type": "object",
"properties": {
"retailerId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "Retailer UUID"
},
"page": {
"default": 1,
"description": "Page number",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"default": 10,
"description": "Reviews per page",
"type": "integer",
"minimum": 1,
"maximum": 50
},
"sort": {
"description": "Sort order",
"type": "string",
"enum": [
"newest",
"oldest",
"highest",
"lowest"
]
}
},
"required": [
"retailerId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢cf_list_comments(product_id, offer_id, retailer_id)
Get comments for a product, offer, or retailer.
Esquema de entrada
{
"type": "object",
"properties": {
"product_id": {
"description": "Filter by product UUID",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"offer_id": {
"description": "Filter by offer UUID",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"retailer_id": {
"description": "Filter by retailer UUID",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢cf_list_wishes(product_id, offer_id, page, limit)
List user's wishlist/bookmarks. Requires authentication.
Esquema de entrada
{
"type": "object",
"properties": {
"product_id": {
"description": "Filter by product UUID",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"offer_id": {
"description": "Filter by offer UUID",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"page": {
"default": 1,
"description": "Page number",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"default": 20,
"description": "Items per page",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡cf_add_wish(product_id, offer_id)
Add a product or offer to wishlist/bookmarks. Requires authentication.
Esquema de entrada
{
"type": "object",
"properties": {
"product_id": {
"description": "Product UUID to bookmark",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"offer_id": {
"description": "Offer UUID to bookmark",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴cf_remove_wish(id)
Remove an item from wishlist/bookmarks. Requires authentication.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "Wish entry UUID to remove"
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢cf_search_history(query, category, sort, page, limit)
Get user's search history. Requires authentication.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"description": "Filter by search query text",
"type": "string"
},
"category": {
"description": "Filter by category",
"type": "string"
},
"sort": {
"description": "Sort order",
"type": "string",
"enum": [
"recent",
"popular",
"oldest"
]
},
"page": {
"default": 1,
"description": "Page number",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"default": 20,
"description": "Items per page",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢cf_popular_searches(limit)
Get user's most popular/frequent searches. Requires authentication.
Esquema de entrada
{
"type": "object",
"properties": {
"limit": {
"default": 10,
"description": "Number of results",
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡cf_create_comment(content, product_id, offer_id, retailer_id, parent_comment_id)
Post a comment on a product, offer, or retailer. Requires authentication.
Esquema de entrada
{
"type": "object",
"properties": {
"content": {
"type": "string",
"minLength": 1,
"description": "Comment text"
},
"product_id": {
"description": "Product UUID to comment on",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"offer_id": {
"description": "Offer UUID to comment on",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"retailer_id": {
"description": "Retailer UUID to comment on",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"parent_comment_id": {
"description": "Parent comment UUID (for replies)",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"required": [
"content"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Prompts recomendados
cf_search_offerscf_search_offerscf_get_productcf_get_productcf_list_offersComunidad
Evidencia