Skip to main content
Glama
edwin042331-hue

dgcp-mcp-server

Buscar ofertas presentadas (DGCP)

dgcp_buscar_ofertas
Read-onlyIdempotent

Search and compare offers that companies submitted in Dominican Republic public procurement processes; filter by process code, supplier RPE, institution, or amount.

Instructions

Ofertas que las empresas presentaron en procesos de compra: quien compitio y a que precio. Con codigo_proceso devuelve TODAS las ofertas de ese proceso (filtro exacto en servidor); con rpe, todas las de una empresa. Nota: la API casi siempre deja estado_evaluacion en "Pendiente"; el ganador real se ve en dgcp_buscar_contratos.

Input Schema

NameRequiredDescriptionDefault
rpeNoRPE del oferente (filtro exacto en servidor).
ordenNo'recientes' (default) o 'precio_menor' (util para comparar ofertas de un proceso).
limiteNoResultados a mostrar (default 10).
terminoNoPalabras en oferente, nombre de oferta o codigos.
monto_maxNo
monto_minNo
proveedorNoNombre (o parte) del oferente.
institucionNoInstitucion: nombre, acronimo o codigo.
codigo_procesoNoCodigo del proceso: devuelve TODAS sus ofertas (filtro exacto en servidor).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed11 schema fields changedv5.0.0
    • changedInput schema / properties / codigo_proceso / description
      Previous value: -"Codigo del proceso de licitacion (ej. 'HLA-DAF-CD-2026-0129')."New value: +"Codigo del proceso: devuelve TODAS sus ofertas (filtro exacto en servidor)."
    • removedInput schema / properties / estado_evaluacion
      Removed value: -{
      -  "description": "Estado de evaluacion (ej. 'Pendiente', 'Adjudicada', 'Descalificada', etc.).",
      -  "type": "string"
      -}
    • changedInput schema / properties / institucion / description
      Previous value: -"Nombre de la institucion contratante."New value: +"Institucion: nombre, acronimo o codigo."
    • changedInput schema / properties / limite / description
      Previous value: -"Cuantos resultados devolver (default 10)"New value: +"Resultados a mostrar (default 10)."
    • removedInput schema / properties / monto_max / description
      Removed value: -"Monto maximo de la oferta en DOP"
    • removedInput schema / properties / monto_min / description
      Removed value: -"Monto minimo de la oferta en DOP"
    • addedInput schema / properties / orden
      Added value: +{
      +  "description": "'recientes' (default) o 'precio_menor' (util para comparar ofertas de un proceso).",
      +  "enum": [
      +    "recientes",
      +    "precio_menor"
      +  ],
      +  "type": "string"
      +}
    • removedInput schema / properties / paginas
      Removed value: -{
      -  "description": "Cuantas paginas de la API escanear (default 5, 100 ofertas c/u)",
      -  "maximum": 20,
      -  "minimum": 1,
      -  "type": "integer"
      -}
    • changedInput schema / properties / proveedor / description
      Previous value: -"Nombre o razon social del oferente participante."New value: +"Nombre (o parte) del oferente."
    • changedInput schema / properties / rpe / description
      Previous value: -"Numero de RPE del oferente."New value: +"RPE del oferente (filtro exacto en servidor)."
    • changedInput schema / properties / termino / description
      Previous value: -"Texto a buscar en nombre de la oferta, codigo de proceso, oferente o institucion."New value: +"Palabras en oferente, nombre de oferta o codigos."
  2. First observedv4.1.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so safety is covered. The description adds genuine non-obvious context: exact server-side filtering semantics for codigo_proceso and rpe, and the data-quality caveat that estado_evaluacion is almost always 'Pendiente' so the winner must be read elsewhere. Return format and pagination limits are not described.

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

Conciseness5/5

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

Three tight sentences: what the tool returns, the two key filters, and the critical caveat. Front-loaded and free of filler.

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

Completeness4/5

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

For a nine-parameter read-only search with no output schema, the description covers purpose, the two highest-value filters, and an important evaluation-status gotcha. It could note result ordering/defaults and how monto/proveedor/institucion narrow results, but nothing critical is missing for correct invocation.

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 78%, so the schema already documents most parameters. The description reinforces codigo_proceso and rpe behavior (exact server filter, returns ALL matches) but says nothing about orden, limite, termino, monto_min/max, proveedor, or institucion beyond what the schema states, so baseline 3 fits.

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 ('Ofertas que las empresas presentaron en procesos de compra') and even summarizes the payload ('quien compitio y a que precio'). It distinguishes itself from the sibling dgcp_buscar_contratos by naming it as the place to find the actual winner, so an agent can route without opening schemas.

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?

Gives concrete when-to-use routing: codigo_proceso returns all bids for one process, rpe returns all bids for one company, and points to dgcp_buscar_contratos when the winner is needed. It does not cover when NOT to use this tool versus other search siblings (licitaciones, proveedores), so it stops short of explicit exclusions.

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