Skip to main content
Glama
ssolis-ti

Compra Ágil MCP Server

Analizar precios de mercado

analizar_precios_mercado
Read-only

Analyze quoted prices from similar historical Chilean Compra Ágil processes to benchmark your bid and set a competitive offer.

Instructions

Analiza a qué precios está cotizando el mercado en procesos históricos de Compra Ágil similares, para posicionar una oferta competitiva. Admite el código de una compra activa (extrae sus palabras clave automáticamente) o un término de búsqueda. Retorna la distribución de precios unitarios cotizados (mínimo, percentil 25, mediana, promedio, máximo) y el detalle de cada cotización observada.

LIMITACIONES IMPORTANTES, verificadas contra la API real (julio 2026):

  1. Analiza precios COTIZADOS, no adjudicados. La API no expone qué oferta ganó (el estado "proveedor_seleccionado" devuelve 0 resultados y ninguna cotización viene marcada como seleccionada). La referencia es lo que ofertó la competencia.

  2. Los precios provienen de procesos declarados DESIERTOS, porque son los únicos que publican sus cotizaciones (medido: desierta 5/8 procesos con precios, cerrada 0/8). Muchas deserciones se deben a incumplimientos formales (garantías, certificados) y no a que el precio fuera malo, por lo que siguen siendo señal de mercado válida — pero conviene interpretarlas con ese contexto.

  3. Las cotizaciones declaradas inadmisibles por el comprador SÍ entran en las estadísticas principales: en los procesos desiertos suelen ser muchas y excluirlas puede dejar la muestra vacía. Cada una viene marcada con su motivo, y "estadisticas_precio_unitario_solo_admisibles" trae la misma distribución sin ellas para comparar.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qNoTérmino de búsqueda del producto/servicio a cotizar (ej: "resmas papel", "reactivos"). Opcional si se especifica "codigo_compra".
regionNoCódigo de región para acotar el análisis (1-16). Ej: "13" para Metropolitana. Si se omite, el análisis es nacional, también con "codigo_compra": la región del comprador no se aplica sola.
codigo_compraNoCódigo de una Compra Ágil para extraer sus palabras clave automáticamente (ej: "1057539-228-COT26"). Opcional si se especifica "q".
limite_analisisNoCuántos procesos históricos auditar (1-15, default 5). Cada uno consume una consulta de cuota Y una llamada de detalle, que es lo lento: medido en septiembre de 2026, entre 20 y 25 segundos cada una, con HTTP 504 intermitentes. Los detalles se piden en paralelo, así que el total se parece más al más lento que a la suma — pero subir este número aumenta la probabilidad de que alguno falle. Con 5 el análisis completo ronda los 45-55 s.
palabras_clave_excluidasNoPalabras separadas por coma que NO deben estar en el nombre de los comparables (ej: "termico,panaderia"). Mismo funcionamiento que las requeridas.
palabras_clave_requeridasNoPalabras separadas por coma que DEBEN estar en el nombre de cada proceso comparable (ej: "nitrilo"). Se aplican sobre el listado antes de pedir los detalles: no gastan cuota extra y evitan mezclar productos distintos.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.7.0

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With only readOnlyHint/openWorldHint available, the description carries real behavioral weight: it discloses that only quoted (not awarded) prices are analyzed, that data comes almost exclusively from DESIERTOS processes (with measured counts), why that is still valid signal, and that inadmissible quotes are included with a separate comparison field. This is exactly the kind of beyond-annotation context the dimension rewards.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded purpose sentence followed by return summary and a clearly enumerated limitations block. It is longer than most definitions, but each limitation is substantive and earns its place; only minor tightening is possible.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description supplies the return shape (min, p25, median, mean, max plus per-quote detail) and the auxiliary admisibles-only distribution. Combined with quota/latency notes and data-provenance caveats, an agent has everything needed to call and interpret this complex 6-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The schema already documents codigo_compra keyword extraction, region scoping semantics, and limite_analisis quota/timing behavior, so the description adds little parameter meaning beyond what is structured.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('analizar a qué precios está cotizando el mercado en procesos históricos de Compra Ágil similares') plus the goal ('posicionar una oferta competitiva'). This clearly separates it from siblings like buscar_compras_agiles (search) and auditar_compras_desiertas (audit), without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explains the two input modes (active purchase code with automatic keyword extraction, or a search term) and the intended context for using the tool. It does not name a sibling as an alternative or state when NOT to use it, so it stops short of the top band.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.