MCP (Model Context Protocol) Server for Price Tracker that exposes tools for Claude to interact with a price tracking system. Allows managing products, tracking prices, retrieving alerts, and accessing price history.
Server defines 6 tools with basic schemas and descriptions in Spanish. All tools have input schemas with type definitions and descriptions present. However, descriptions are minimal (avg ~60 chars, below the 194-char baseline), lack context on WHEN to use each tool, and do not explain state-modifying consequences. Parameter descriptions are present but terse. Output schemas are not documented. Error handling is absent from tool definitions. Tool naming follows verb_noun convention (get_, add_, update_) which is good, but composition could be improved, update_prices and get_alerts are tightly coupled concepts that might benefit from clearer separation.
Agrega un nuevo producto para rastrear su precio
Obtiene todas las alertas activas (productos cuyo precio actual es menor o igual al precio objetivo)
Obtiene el historial de precios de un producto especifico
Obtiene el precio actual de un producto por su ID o nombre
Obtiene la lista de todos los productos rastreados con sus precios actuales
Actualiza los precios de todos los productos realizando scraping
Output schemas not documented. Tools return results but LLMs cannot predict field names, types, or structure. Downstream tool chaining is blind.
Descriptions are minimal (40 - 60 chars, below 194-char baseline). Missing context on WHEN to use each tool, prerequisites, and state-modifying consequences. add_product and update_prices modify state but descriptions do not warn of side effects.
No error handling guidance in tool definitions. If a product is not found, or scraping fails, LLM receives no recovery hint. No categorization of retryable vs fatal errors.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 64 | 2026-07-28+ | v2 |
get_product_price uses anyOf with product_id OR product_name, but no guidance on which to prefer or how LLM should choose. Ambiguous parameter relationships undocumented.
add_product accepts optional precio_objetivo but no guidance on valid range, units (currency), or what happens if omitted. Parameter constraints missing.