Skip to main content
Glama

EcuDataMCP

Sitio: https://dweskz.github.io/EcuDataMCP/

License: MIT Python 3.11+ MCP M8ven Score

Infraestructura abierta de datos públicos para Ecuador. EcuDataMCP conecta asistentes de IA, investigadores, periodistas y software con datos oficiales ecuatorianos mediante una interfaz común.

Utiliza el Model Context Protocol (MCP) para que clientes compatibles como Claude, ChatGPT, Gemini y Cursor puedan buscar, explorar y analizar esos datos mediante conversación o software.

En lugar de navegar manualmente por portales gubernamentales, simplemente pregunta cosas como:

  • "¿Qué datos tiene el SRI sobre recaudación tributaria?"

  • "Muéstrame los datasets de salud del INEC"

  • "¿Cuáles son los requisitos para sacar el pasaporte?"

  • "Dame un preview de los datos de transporte aéreo"

Aviso: Las definiciones, parámetros y descripciones de algunas herramientas fueron generadas o asistidas por IA y pueden estar incompletas, desactualizadas o no cubrir todos los casos del endpoint subyacente. Una herramienta puede devolver resultados parciales, rechazar parámetros válidos o comportarse de forma inesperada cuando cambia la fuente oficial. Verifica siempre la respuesta contra la fuente enlazada y revisa manualmente los resultados antes de usarlos para decisiones importantes.


Documentación del proyecto

  • docs/ROADMAP.md — qué fuentes están integradas y qué falta.

  • docs/RESEARCH.md — el porqué de cada fila del roadmap: hallazgos verificados en vivo, dominios investigados, dead ends.

  • CHANGELOG.md — qué se publicó recientemente.


Related MCP server: uruguay-mcp

Beneficios

  • Acceso instantáneo a datos públicos: Pregunta en lenguaje natural y explora datos de instituciones del Estado ecuatoriano sin navegar portales, descargar archivos ni lidiar con formatos.

  • Unifica múltiples fuentes en un solo punto: Datos abiertos, trámites, regulaciones, contratación pública, riesgos, datos estadísticos y otras fuentes oficiales, todo accesible desde una sola conversación con tu IA.

  • Preview de datos sin descargas: preview_resource_data parsea CSV/TSV, JSON/GeoJSON, Excel (XLS/XLSX) y algunos archivos comprimidos en memoria; query_resource_data consulta el DataStore CKAN sin bajar el archivo completo.

  • Cero fricción: No necesitas API key ni permisos especiales para las fuentes públicas compatibles.

  • Compatible con cualquier cliente MCP: Claude, ChatGPT, Codex, Gemini, Cursor, VS Code, Windsurf, Le Chat, HuggingChat y más.

  • Listo para producción: Docker, health checks, logging estructurado, y un servidor HTTP Streamable compatible con MCP.


Casos de uso

Para ciudadanos

  • Consultar requisitos, costos y pasos de cualquier trámite gubernamental sin navegar gob.ec.

  • Buscar datos públicos por tema (salud, educación, seguridad, economía) y entender qué publica cada institución.

Para periodistas e investigadores

  • Explorar datasets del catálogo nacional y hacer preview de los datos directamente desde Claude o ChatGPT.

  • Cruzar información de múltiples instituciones (SRI, INEC, BCE y ministerios) en una sola conversación.

  • Acceder rápidamente a datos de anticorrupción, presupuestos y ejecución del gasto público.

Para desarrolladores

  • Integrar datos abiertos de Ecuador en aplicaciones mediante el protocolo MCP estándar.

  • Prototipar dashboards y análisis exploratorios sin escribir código de scraping ni parseo de archivos.

  • Usar como backend de datos para agentes de IA que necesiten contexto sobre Ecuador.

Para el sector público

  • Hacer más accesibles y descubribles los datos que ya publican las instituciones.

  • Permitir que chatbots institucionales respondan preguntas con datos reales y actualizados.

  • Demostrar el valor de los datos abiertos conectándolos directamente con herramientas de IA.


Fuentes de datos

Este MCP unifica fuentes gubernamentales en un solo servidor:

Fuente

Datos

Datos Abiertos y Cuenca en Datos (CKAN)

Catálogos, DataStore y archivos públicos

SRI

Datasets estadísticos, recaudación, RUC y Saiku público

Gob.ec

Trámites, instituciones y regulaciones

SERCOP/OCDS

Contratación pública

SGR e IG-EPN

Eventos de riesgo, tsunami y sismos

INEC

ANDA, Ecuador en Cifras, censos y recursos estadísticos

BCE

BCEData, IEM y otros indicadores económicos públicos

Superintendencia de Compañías

Directorio, auditores y datos financieros

Geografía INEC/DPA

Provincias, cantones y parroquias

Sin API key para las fuentes públicas compatibles.


Conecta tu chatbot al servidor MCP

Claude Desktop

La forma más simple no necesita levantar ningún servidor: Claude Desktop ejecuta el paquete de PyPI con uv. Agrega lo siguiente a tu archivo de configuración (~/Library/Application Support/Claude/claude_desktop_config.json en macOS, %APPDATA%\Claude\claude_desktop_config.json en Windows):

{
  "mcpServers": {
    "ecuador-datos": {
      "command": "uvx",
      "args": ["ecuador-mcp", "--transport", "stdio"]
    }
  }
}

También puedes instalar el archivo .mcpb adjunto a cada release como extensión de Claude Desktop. Si ya tienes el servidor HTTP corriendo (ver Ejecutar localmente), usa "command": "npx" con "args": ["mcp-remote", "http://localhost:8000/mcp"].

Cursor

  1. Abre Cursor Settings

  2. Busca "MCP"

  3. Agrega un nuevo servidor MCP:

{
  "mcpServers": {
    "ecuador-datos": {
      "url": "http://localhost:8000/mcp",
      "transport": "http"
    }
  }
}

VS Code

Agrega a tu archivo mcp.json (ejecuta MCP: Open User Configuration desde la paleta de comandos):

{
  "servers": {
    "ecuador-datos": {
      "url": "http://localhost:8000/mcp",
      "type": "http"
    }
  }
}

ChatGPT

Disponible para planes pagos (Plus, Pro, Team, Enterprise).

  1. Ve a Settings > Apps and connectors

  2. Abre Advanced settings y habilita Developer mode

  3. En Settings > Connectors > Browse connectors, haz clic en Add a new connector

  4. Configura la URL: http://localhost:8000/mcp

Claude Code

claude mcp add --transport http ecuador-datos http://localhost:8000/mcp

Codex

codex mcp add ecuador-datos --url http://localhost:8000/mcp

Esto guarda un bloque [mcp_servers.ecuador-datos] con url en ~/.codex/config.toml. Para usar el servidor por stdio en vez de HTTP:

codex mcp add ecuador-datos -- uvx ecuador-mcp --transport stdio

Gemini CLI

Agrega a ~/.gemini/settings.json:

{
  "mcpServers": {
    "ecuador-datos": {
      "httpUrl": "http://localhost:8000/mcp"
    }
  }
}

Le Chat (Mistral)

  1. Ve a Intelligence > Connectors

  2. Add connector > Custom MCP Connector

  3. Nombre: "Ecuador Datos" / URL: http://localhost:8000/mcp

Windsurf

Agrega a ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "ecuador-datos": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "http://localhost:8000/mcp"]
    }
  }
}

HuggingChat

  1. En el chat, haz clic en el ícono + > MCP Servers > Manage MCP Servers

  2. Add Server con nombre "Ecuador Datos" y URL http://localhost:8000/mcp


Ejecutar localmente

Con uvx (desde PyPI)

uvx ecuador-mcp --transport stdio

search_ranking/get_financials usan una base SQLite local de Supercías que se construye sola en segundo plano cuando la primera consulta la necesita (descarga ~356 MB, 5-10 min; esa consulta pide reintentar). Instalado desde PyPI se guarda en el directorio de datos del usuario (%LOCALAPPDATA%\ecuador-mcp en Windows, ~/Library/Application Support/ecuador-mcp en macOS, ~/.local/share/ecuador-mcp en Linux); ECUADOR_MCP_DATA_DIR cambia la ubicación.

Con Docker (recomendado)

La imagen arranca por stdio, como cualquier servidor MCP en Docker:

docker build -t ecuador-mcp https://github.com/DweskZ/EcuDataMCP.git
docker run -i --rm ecuador-mcp

Para el servidor HTTP, docker compose fija MCP_TRANSPORT=http y exige autenticación (MCP_REQUIRE_AUTH=1): sin MCP_AUTH_TOKEN el proceso se detiene con un error y el contenedor se reinicia en bucle. Define el token antes de arrancar, en el entorno o en un .env:

git clone https://github.com/DweskZ/EcuDataMCP.git
cd EcuDataMCP

# Opción A: token en el entorno (puerto 8000)
MCP_AUTH_TOKEN="$(openssl rand -hex 32)" docker compose up -d

# Opción B: token en .env (docker compose lo lee solo)
cp .env.example .env    # edita MCP_AUTH_TOKEN=... y MCP_REQUIRE_AUTH=1
docker compose up -d

# Con variables personalizadas
MCP_AUTH_TOKEN=... MCP_PORT=8007 LOG_LEVEL=DEBUG docker compose up -d

# Detener
docker compose down

Los clientes envían el token como Authorization: Bearer <token> en POST /mcp. La lista completa de variables y el despliegue detrás de un proxy HTTPS están en docs/DEPLOYMENT.md.

Instalación manual

Requiere Python 3.11+ y uv.

git clone https://github.com/DweskZ/EcuDataMCP.git
cd EcuDataMCP

# Instalar dependencias
uv sync

# Copiar variables de entorno
cp .env.example .env

# Iniciar el servidor
uv run main.py

Variables de entorno (las más usadas; la lista completa, con el perfil de tools, la concurrencia, el proxy geográfico y las URLs base de cada fuente, está en docs/DEPLOYMENT.md § Variables de entorno):

Variable

Descripción

Default

MCP_HOST

Dirección de bind

127.0.0.1

MCP_PORT

Puerto del servidor

8000

MCP_TRANSPORT

Transporte: http o stdio

http

LOG_LEVEL

Nivel de log (DEBUG, INFO, WARNING, ERROR)

INFO

MCP_AUTH_TOKEN

Token Bearer opcional para /mcp

vacío

MCP_REQUIRE_AUTH

Rechaza el arranque remoto sin token

0

MCP_RATE_LIMIT_REQUESTS / MCP_RATE_LIMIT_WINDOW_SECONDS

Cuota por cliente/IP

120 / 60

MCP_SSL_CERTFILE / MCP_SSL_KEYFILE

Certificado y clave para TLS directo

vacío

ECUADOR_MCP_USAGE_LOG

1 guarda cada llamada (tool, resultado, duración; nunca argumentos) en usage.jsonl del directorio de datos; scripts/usage_report.py lo resume

vacío

ECUADOR_MCP_DATA_DIR

Dónde guardar la base de Supercías y los snapshots del BCE

data/ en un clon; directorio de datos del usuario si se instaló desde PyPI

Para ejecutar el transporte stdio localmente:

uv run python main.py --transport stdio

La referencia detallada de cada herramienta está en docs/TOOLS.md. El contrato JSON para agentes de BCEData/IEM está en docs/RESPONSE_CONTRACT.md.


Endpoints

Endpoint

Descripción

POST /mcp

Mensajes JSON-RPC (cliente → servidor)

GET /health

Health check: {"status":"ok","uptime_since":"...","version":"..."}

GET /usage

Llamadas, errores y latencia p50/p95 por tool desde el arranque

Cuando MCP_AUTH_TOKEN está definido, POST /mcp requiere el encabezado Authorization: Bearer <token>. Para un despliegue remoto usa también MCP_REQUIRE_AUTH=1, HTTPS y un proxy con su propia cuota por IP. /health y /usage permanecen sin autenticación (no exponen argumentos ni datos de usuarios). Consulta docs/DEPLOYMENT.md para el despliegue remoto.


Ejemplos de uso

Buscar datos del SRI

"¿Qué datos tiene el SRI sobre recaudación?"

El MCP buscará los datos públicos del SRI y te mostrará los resultados con títulos, descripciones y enlaces.

Ver datos de salud

"Muéstrame un preview de los datos de hospitales"

El MCP descargará el archivo compatible y te mostrará las primeras filas como una tabla formateada.

Consultar trámites

"¿Cuáles son los requisitos para obtener el RUC?"

El MCP buscará en el portal gob.ec y te dará los requisitos, procedimiento y costo.

Explorar por categoría

"¿Qué categorías de datos hay disponibles?"

El MCP listará las categorías temáticas disponibles.


Arquitectura

Cliente MCP (Claude, ChatGPT, Cursor, etc.)
    │
    ▼ POST /mcp
┌──────────────────────────────┐
│   MCPServer (main.py)        │
├──────────────────────────────┤
│  tools/                      │
│   ├── search_ecuador         │  → CKAN + gob.ec (unificado)
│   ├── search_datasets        │
│   ├── query_resource_data    │  → CKAN DataStore
│   ├── preview_resource_data  │  → CSV / JSON / XLS / XLSX
│   ├── get_category_info      │  → helpers/ckan_client.py
│   ├── search_tramites        │
│   ├── get_institucion_info   │  → helpers/gobec_client.py
│   └── ...                    │
└──────────────────────────────┘

Licencia

MIT License - ver LICENSE para más detalles.


Contribuir

Las contribuciones son bienvenidas. Consulta CONTRIBUTING.md para el proceso de colaboración.

Available Tools

83 tools
detect_series_patternDetectar patrón de series periódicas en un datasetA
Read-only

Tell whether a dataset's periodic files are cumulative (newest file suffices) or incremental (combine all) by comparing period values in the two newest files. Heuristic over up to 500 rows each.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
sourceNoCKAN portal; nacional (default), cuenca, latacunga or iadb.nacional
dataset_idYesThe dataset ID or slug
resource_id_newNoOptional -- newer resource ID to compare (auto-detected from the dataset's periodic-name group if omitted)
resource_id_oldNoOptional -- older resource ID to compare (auto-detected if omitted).

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare it read-only, non-destructive, open-world. The description adds genuine behavioral context beyond them: it only samples up to 500 rows per file and is explicitly a heuristic, so the agent knows the result is approximate and bounded. That is exactly the kind of caveat annotations do not carry.

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?

Two tight sentences with zero filler. The core purpose and the cumulative-vs-incremental distinction are front-loaded, and the heuristic/row-limit caveat follows immediately.

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?

With no output schema, the description still conveys the decision it returns (cumulative vs incremental) and the format switch is documented in the schema. It is nearly complete, missing only how the conclusion is expressed in the text/json output.

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 every parameter (source portal, format, dataset_id, resource_id_new/old with auto-detection) is already documented in the schema. The description adds only the notion that the two newest files are used, which is baseline-level value when the schema does the heavy lifting.

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?

The description states a specific verb+resource: determining whether a dataset's periodic files are cumulative or incremental. It even names the mechanism (comparing period values in the two newest files), so an agent can distinguish it from list_dataset_resources or investigate_dataset without opening a schema.

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

Usage Guidelines3/5

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

The description implies when the result matters (choosing whether the newest file suffices or all files must be combined), but never states when to call this tool versus siblings like list_dataset_resources or investigate_dataset, nor any prerequisites or exclusions. Usage must be inferred from the purpose.

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

download_anda_microdataDescargar microdatos de una encuesta ANDAA
Read-only

Direct links to an ANDA survey's microdata files (accepts ANDA's research-use terms). Check get_anda_survey_info first; returns links to multi-MB ZIPs.

ParametersJSON Schema
NameRequiredDescriptionDefault
idnoYesSurvey idno or numeric id from search_anda (the "idno" or "id" field)
formatNotext summary (default) or json structured result.text

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly/openWorld/non-destructive, so the safety profile is covered. The description adds genuinely useful context beyond that: it accepts ANDA's research-use terms, and it returns links to multi-MB ZIPs rather than the data itself, warning about payload size.

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?

Two tight sentences with zero waste, front-loading the return type and following with the prerequisite and size warning. Every clause carries information an agent needs.

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?

No output schema exists, so the description usefully discloses the return shape (links to ZIPs) and the research-use terms constraint. It is essentially complete for a two-parameter link tool, though it could say more about how to consume the links.

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 both idno and format are already documented in the schema; baseline is 3. The description implies the idno comes from an ANDA survey but adds no syntax or format detail beyond the schema.

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

Purpose4/5

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

States the resource (an ANDA survey's microdata files) and the outcome (direct links, multi-MB ZIPs), and implicitly distinguishes from the metadata sibling get_anda_survey_info. The action verb is somewhat implicit ('direct links to') rather than an explicit 'download', so it lands just short of a 5.

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?

Explicitly routes the agent through a prerequisite: 'Check get_anda_survey_info first', which is actionable sequencing with a named sibling. It lacks explicit exclusions (when NOT to use vs download_resource), so it stops short of a 5.

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

download_resourceDescargar el archivo crudo de un recursoA
Read-only

Raw bytes of a CKAN resource, base64-encoded, for formats the preview can't parse. Max 5 MB. Use format="json"; text only confirms the download.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
sourceNoCKAN portal; nacional (default), cuenca, latacunga or iadb.nacional
resource_idYesThe resource UUID (get it from list_dataset_resources)

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/openWorldHint/destructiveHint=false, so safety is covered. The description adds genuinely new behavioral facts: output is base64-encoded, hard 5 MB ceiling, and that format='text' only confirms the download rather than returning data.

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 short clauses, front-loaded with what the tool returns, then the size limit, then the format directive. No filler; every sentence carries information.

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?

With no output schema, the description carries the return-value burden and does explain the payload (base64 raw bytes) and the size cap. It doesn't describe the shape of the json structured result, a minor remaining gap.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description still adds meaning: it tells the agent that format='json' is required to actually receive the data and that 'text' is only an acknowledgement, which the schema's terse enum description does not convey.

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+resource ('Raw bytes of a CKAN resource') and the delivery format (base64-encoded). It also implicitly distinguishes itself from the preview path by scoping to 'formats the preview can't parse', so an agent can separate it from preview_resource_data.

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 clear context for use ('for formats the preview can't parse') and a directive on the format param. It doesn't name the alternative sibling (preview_resource_data) explicitly, so it stops short of full when/when-not routing.

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

get_aip_aerodromoVer la ficha AIP de un aeródromoA
Read-only

Full published AIP AD 2 data sheet for one aerodrome (ICAO code): coordinates, runways, hours, services, frequencies, procedures.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
designadorYesICAO code of the aerodrome/helipad, e.g. SEQM (Quito — Mariscal Sucre), SEGU (Guayaquil — José Joaquín de Olmedo), SECU (Cuenca — Mariscal Lamar).

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds scope value by stating that the full AD 2 sheet is returned, but does not address the format parameter's effect, latency, or any source/freshness caveat for the published AIP data.

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?

A single front-loaded sentence that names the resource first and then enumerates returned sections. No filler, no repetition of the title, no restatement of schema fields.

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 simple read-only single-record lookup with fully documented parameters and annotations covering safety, the description is close to sufficient. It stops short only on routing (which list tool to use first) and on the fact that the response shape is governed by the format parameter, but no output schema exists that would carry that detail.

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% and both parameters are well documented in the schema itself (ICAO code with real examples, format enum with default). The description adds no meaning beyond that, so the baseline 3 is appropriate.

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

Purpose4/5

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

States a specific resource, 'full published AIP AD 2 data sheet for one aerodrome', keyed by ICAO code, and enumerates the sections returned (coordinates, runways, hours, services, frequencies, procedures). The singular 'one aerodrome' distinguishes it implicitly from a list operation, but it never names the sibling list_aip_aerodromos, so an agent must infer the distinction.

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

Usage Guidelines3/5

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

Usage is only implied: 'one aerodrome (ICAO code)' signals a single-record detail lookup versus a browsing/list tool, but there is no explicit when-to-use statement, no prerequisite (e.g. resolving the ICAO code first), and no named alternative such as list_aip_aerodromos.

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

get_anda_survey_infoVer metadata de una encuesta ANDAA
Read-only

Full metadata for one ANDA survey (string idno from search_anda): scope, variables, microdata availability and access terms.

ParametersJSON Schema
NameRequiredDescriptionDefault
idnoYesSurvey idno or numeric id from search_anda ("idno" or "id" field)
formatNotext summary (default) or json structured result.text

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so the safety profile is covered. The description adds the content shape of the metadata (variables, microdata availability, access terms), which is useful, but discloses nothing extra about auth needs, rate limits, or edge cases.

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?

A single efficient sentence with the resource identifier front-loaded and the returned facets listed after. Nothing is wasted, though the parenthetical is slightly compressed.

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?

With no output schema, the description carries the burden of telling the agent what comes back, and it does so by enumerating scope, variables, microdata availability and access terms. Annotations cover safety, so the remaining omission — return format details for text vs json — is minor.

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 both parameters are already documented in the schema, including the enum for 'format'. The description only restates that idno comes from search_anda and adds no syntax or format guidance beyond the schema — the baseline 3 for full coverage is appropriate.

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

Purpose4/5

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

Names a specific verb+resource ('Full metadata for one ANDA survey') and enumerates the returned facets (scope, variables, microdata availability, access terms). The search-then-detail relationship to search_anda is implied rather than stated as an explicit contrast, so it falls just short of a 5.

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?

The parenthetical 'string idno from search_anda' establishes the prerequisite workflow: the agent must first call search_anda to obtain an idno. It gives clear context for when this tool applies but offers no explicit when-not guidance or alternative siblings.

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

get_archivo_seccionVer archivos de una sección de un archivo institucionalA
Read-only

List the downloadable files (title, URL, format) in one section from list_archivo_secciones. Returns links, not file contents; download large files directly (preview/download tools cap at 5 MB).

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
fuenteYesOne of arcsa, superbancos, seps, ineval, sgr, senescyt, sipa, petroecuador, energia, cne, bvg, bvq.
seccionYesA section `id` from list_archivo_secciones.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, non-destructive, openWorld). The description usefully adds return semantics — 'returns links, not file contents' — and a size constraint on the alternative preview/download path, which is behavioral context the annotations don't provide.

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?

Two tight sentences with the scope and return semantics front-loaded and no wasted words. Every clause carries information.

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?

With no output schema, the description compensates by naming the return fields (title, URL, format) and clarifying that links, not contents, are returned. Combined with annotations covering safety, it is largely complete for a three-parameter listing 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 schema already documents all three parameters including both enums. The description's mention of title/URL/format refers to outputs rather than inputs and adds little beyond the schema, so the baseline 3 applies.

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 — list the downloadable files (title, URL, format) in one section — and anchors the resource to the sibling tool list_archivo_secciones. An agent can distinguish this from list_archivo_secciones and the download/preview tools without opening a 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?

Clearly positions the tool as the listing step that takes a section id from list_archivo_secciones, and adds a routing rule for the download side ('download large files directly; preview/download tools cap at 5 MB'). It stops short of explicitly stating when not to use it, so it's clear context without full exclusion logic.

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

get_arconel_reporteConsultar reporte estadístico de ARCONELA
Read-only

Run one ARCONEL report (e.g. "Balance Energía" for a year) and return its rows. Slow, ~50 rows per page; max_paginas caps work and completo says if everything was read.

ParametersJSON Schema
NameRequiredDescriptionDefault
mesNo1-12, only for report types with a month filter (e.g. per-parish reports); others already break down by month.
anioYesYear, 1998-current.
tipoYesReport name as listed by `list_catalogo(fuente='arconel')` (accent/case-insensitive), e.g. "Balance Energía", "Pérdidas", "Medidores Catastro".
grupoNotodos | cnel | empresas_electricas.todos
formatNotext summary (default) or json structured result.text
max_paginasNoMaximum pages to read (1-40, default 10).

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=true, so safety is covered. The description adds real behavioral value: calls are slow, ~50 rows per page, max_paginas caps the work, and the 'completo' flag reveals truncation. That is genuinely useful operational context beyond the annotations.

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?

Two compact sentences with zero filler. The purpose and example lead, then the performance/truncation reality is front-loaded so the agent plans paging before calling.

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 paged, slow statistical-report tool with no output schema, the description supplies the operational facts an agent needs: slowness, rows per page, page cap, and completeness flag. It stops short of describing row shape, but the format parameter and json option make the return sufficiently predictable.

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 coverage is 100%, so all six parameters are documented including the mes month-filter caveat and the tipo catalog lookup. The description's mention of max_paginas and completo only restates schema semantics. Baseline 3 is appropriate; little added meaning beyond the schema.

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

Purpose4/5

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

States a specific verb (run) and resource (one ARCONEL report) with an example report name, so the agent can tell it apart from list_catalogo or generic search siblings. It doesn't explicitly name siblings but the ARCONEL domain and report-row return make its scope clear.

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

Usage Guidelines3/5

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

The example 'Balance Energía' for a year implies the expected call, and the tipo description points to list_catalogo(fuente='arconel') for discovery. But the description itself gives no explicit when-to-use or when-not-to-use guidance relative to list_catalogo or the other statistical tools.

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

get_auditor_infoVer información de un auditor externoB
Read-only

One external auditor's authorization, nationality and contact details by RUC or cédula.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
identificacionYesThe auditor's RUC or cédula

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds value by disclosing the returned content (authorization, nationality, contact info) and that both RUC and cédula are accepted, but says nothing about lookup failure behavior or whether the format parameter alters the response.

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?

A single tight sentence with no waste, front-loading the resource and scope before the lookup keys. Nothing redundant or padded.

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 two-parameter read-only lookup with annotations covering the safety profile and a fully documented schema, the description is nearly sufficient, and it usefully names the returned fields despite there being no output schema. Minor gap: no note on what happens when the identifier is not found.

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% and the format enum is fully documented in the schema, so the baseline is 3. The description's 'by RUC or cédula' merely restates the identificacion parameter and adds no syntax or format detail beyond the schema.

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

Purpose4/5

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

The description names a specific verb (retrieves) and resource (one external auditor) and enumerates the returned fields (authorization, nationality, contact details) plus the lookup keys (RUC or cédula). The singular 'One' implicitly separates it from the sibling search_auditores, though that sibling is never named, keeping it short of a 5.

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

Usage Guidelines2/5

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

There is no explicit when-to-use guidance, no prerequisites, and no mention of the obvious alternative search_auditores. The single-record framing only weakly implies that you come here once you already have an identifier, leaving routing to inference.

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

get_aviso_aeronauticoConsultar METAR, NOTAM o SIGMET de EcuadorA
Read-only

Live aeronautical notices from DGAC/AIS: metar (latest weather reports) or notam (active notices) for an aerodrome ICAO code, e.g. SEQM; sigmet (active SIGMETs for the whole FIR, no code needed). Raw ICAO text.

ParametersJSON Schema
NameRequiredDescriptionDefault
tipoYesmetar, notam or sigmet.
formatNotext summary (default) or json structured result.text
designadorNoICAO code of the aerodrome, e.g. SEQM (Quito), SEGU (Guayaquil), SECU (Cuenca).

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, non-destructive) and open-world scope. The description adds genuinely new context: the data is 'live', output is 'raw ICAO text', and sigmet needs no aerodrome code. It omits auth/permission needs and any rate-limit behavior.

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?

A single front-loaded sentence with zero filler; the tool's function, all three modes and the output format are conveyed compactly. The semicolon-joined parentheticals are dense and slightly hurt scanability, but nothing is redundant.

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 3-parameter, no-output-schema tool with annotations covering safety, the description supplies the domain context, mode semantics and output nature an agent needs. Minor gaps: how the json format option differs from 'raw ICAO text', and behavior on an invalid or empty ICAO code.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds meaning beyond the schema by tying 'designador' to the metar/notam modes and clarifying that sigmet does not need a code, resolving the conditional applicability of a parameter the schema only presents as an empty default.

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?

Names a specific verb+resource (live aeronautical notices from DGAC/AIS) and enumerates the three products it returns (metar, notam, sigmet) with what each contains. The scope statement for sigmet ('whole FIR, no code needed') vs the ICAO-code scoping for metar/notam makes it clearly distinct from aerodrome-data siblings like get_aip_aerodromo.

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 clear selection context per mode: metar for latest weather reports, notam for active notices, sigmet for FIR-wide alerts requiring no code. It stops short of naming alternative siblings (e.g. the AIP aerodrome tools) or stating when not to use it.

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

get_bce_iem_tableVer una tabla del boletín IEM del BCEA
Read-only

One IEM XLSX table (table_id from search_bce_iem): date-filterable series for the standard layout, a faithful preview otherwise. boletin_numero selects a past bulletin.

ParametersJSON Schema
NameRequiredDescriptionDefault
rowsNoMax rows returned (1-100, default 20).
desdeNoEarliest period to include, as YYYY, YYYY-MM or a month-year label.
hastaNoLatest period to include, same formats as desde.
formatNotext summary (default) or json structured result.text
table_idYesA table_id from search_bce_iem.
boletin_numeroNoPast bulletin number from search_bce_iem(historico=true); 0 means the latest.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint, destructiveHint=false), so the bar is lower. The description adds real behavioral context beyond them: for the 'standard layout' you get date-filterable series, otherwise a 'faithful preview' (i.e. filters may not apply). This output-variance disclosure is genuinely useful, though the phrasing is somewhat cryptic.

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?

Two tight sentences, front-loaded with what the tool returns and where the id comes from. Nothing is wasted, though 'a faithful preview otherwise' is compressed to the point of ambiguity.

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 6-param, no-output-schema tool, the description covers what is returned (an XLSX table / text-or-json per the format param), the id source, and the bulletin selector. Pagination (rows) and format handling are left to the schema, which is acceptable given 100% coverage.

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 each parameter is already documented. The description reinforces the provenance of table_id and boletin_numero and the date-filterability of desde/hasta, but adds no syntax or semantics beyond the schema. Baseline 3 is appropriate.

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

Purpose4/5

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

States a specific verb+resource ('One IEM XLSX table') and ties it to its sibling by naming search_bce_iem as the source of table_id, so an agent can tell it apart from the search tool. It stops short of a fully explicit 'this fetches one table by id' framing, but the pairing is clear.

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

Usage Guidelines3/5

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

Usage is only implied: the agent must infer that it should call search_bce_iem first to obtain a table_id, and search_bce_iem(historico=true) for a boletin_numero. There is no explicit when-to-use/when-not statement, though the input provenance gives practical guidance.

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

get_bce_indicador_diarioVer serie de un indicador diario del BCEA
Read-only

One BCE daily/monthly indicator (archivo and codigo from list_catalogo(fuente='bce_diarios')): the last ultimos_n points or a date range, capped at 366 rows.

ParametersJSON Schema
NameRequiredDescriptionDefault
desdeNoOptional start date YYYY-MM-DD.
hastaNoOptional end date YYYY-MM-DD.
codigoYesA "Código Variable Dinámica" from that same archivo.
formatNotext summary (default) or json structured result.text
archivoYesA file name from list_catalogo(fuente='bce_diarios').
ultimos_nNoMost recent N observations when no date range is given.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations cover the safety profile (readOnlyHint=true, destructiveHint=false, openWorldHint=true), so the bar is lower, and the description still adds real behavioral context: a hard 366-row cap on results and the fallback rule that ultimos_n governs when no date range is supplied. It doesn't disclose pagination or what happens when both a range and ultimos_n are provided, but the added row cap is a useful operational constraint beyond the annotations.

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?

A single dense sentence with the resource, the source of the identifiers, and the retrieval modes all front-loaded; no filler. It is compact enough that nothing could be cut without losing information, though the nested parenthetical slightly crowds the core statement.

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 read-only series fetch with no output schema, the description plus schema are nearly sufficient: the format parameter in the schema covers the text/json return shape, and the description covers scope and the result cap. The only gaps are precedence when both a date range and ultimos_n are given and whether 366 rows truncates silently, which are minor for a read tool.

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

Parameters4/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, but the description adds meaning the schema does not: it explains the interplay between ultimos_n and the desde/hasta range, and imposes a 366-row ceiling that applies to results regardless of the parameter combination chosen. That is genuine semantic value on top of the fully documented schema.

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

Purpose4/5

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

States a specific verb and resource: retrieves a single BCE daily/monthly indicator series, with a clear scope ('one' series, capped at 366 rows). It distinguishes itself from list_catalogo by naming it as the source of the required identifiers, but it does not differentiate from the nearby siblings get_indicador_bce or search_indicadores_bce, which an agent could easily confuse with this tool.

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

Usage Guidelines3/5

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

Implies usage through the prerequisite 'archivo and codigo from list_catalogo(fuente='bce_diarios')', which tells the agent where the required identifiers come from, and clarifies that ultimos_n applies when no date range is given. However, it offers no explicit statement of when to pick this tool over get_indicador_bce, search_indicadores_bce, or get_serie_internacional, leaving the routing decision to inference.

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

get_bce_pagina_archivosVer archivos de una página de publicaciones del BCEA
Read-only

Files of one BCE publication page (pagina_id from search_bce_paginas): title, URL and format, most recent first. anio filters the indices catalog by year.

ParametersJSON Schema
NameRequiredDescriptionDefault
anioNoOnly for catalogo="indices": restrict to one year (0 = all).
formatNotext summary (default) or json structured result.text
catalogoYesindices or cuentas_nacionales.
pagina_idYesThe page's `pagina_id` from search_bce_paginas.
max_archivosNoCap on returned files, 1-200 (most recent first); use anio to reach further back.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds the ordering convention ('most recent first') and the catalogo-specific scope of anio, but discloses nothing about rate limits, result truncation behavior, or failure modes.

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?

Two compact sentences, front-loaded with the resource and its return shape before the filtering note. No redundancy or filler; the telegraphic phrasing costs a little readability but not precision.

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?

With five parameters, no output schema and rich annotations, the description supplies the essential missing piece: what the call returns (title, URL, format) and in what order. The catalog dimension and the format=json option are handled by the schema, so nothing critical is left unexplained.

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 every parameter is already documented in the schema, including the anio/catalogo coupling and the max_archivos cap. The description's sentence about anio largely restates the schema, adding no new syntax or semantics. Baseline 3 applies when the schema does the heavy lifting.

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

Purpose4/5

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

States a specific verb+resource: files of one BCE publication page, and even enumerates the returned fields (title, URL, format) and ordering. It names where pagina_id comes from, which separates it from the other *archivos siblings (e.g. get_inec_publicacion_archivos). It stops short of an explicit contrast with any alternative tool.

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

Usage Guidelines3/5

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

The parenthetical '(pagina_id from search_bce_paginas)' implies the search-then-fetch workflow, which is useful. Beyond that there is no when-to-use/when-not guidance, no mention of when another sibling (e.g. search_bce_indicador or get_bce_iem_table) would be preferable.

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

get_capa_geo_datosVer muestra de datos de una capa de geoportalA
Read-only

Sample up to 20 features' attributes from a WFS-enabled layer (capa from search_capas_geo). A preview, not a spatial query: no bbox or filters, and geometry is dropped.

ParametersJSON Schema
NameRequiredDescriptionDefault
capaYesThe layer's `capa` from search_capas_geo (INAMHI: "geonode:..." name; MAG: "categoria/store/name").
countNoNumber of features to fetch (1-20, default 5).
formatNotext summary (default) or json structured result.text
fuenteYesinamhi or mag.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so safety is covered. The description adds genuinely useful behavior beyond that: the 20-feature ceiling, absence of bbox/filter support, and the fact that geometry is dropped from results, which shapes expectations of the payload.

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?

Two tight sentences with no filler, and the identifying information (what it samples, from where) comes first, with the scoping caveat immediately after.

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 read-only preview tool with fully documented parameters and no output schema, the description supplies output-shape context (attributes only, geometry dropped) and the source of the required layer identifier. Nothing essential is missing, though the text/json format distinction could have been tied to expected output.

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 all four parameters (capa, count, format, fuente) are already documented with formats, defaults, ranges and enums. The description only echoes the 20-item cap and the capa provenance, adding little beyond structured data, so baseline 3 applies.

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: sampling feature attributes from a WFS-enabled layer, with the exact cap (20) named. It also routes the agent to the sibling that produces the required `capa` value (search_capas_geo) and explicitly carves itself away from a spatial query tool.

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?

The phrase 'A preview, not a spatial query' tells the agent when this tool fits and, by negation, when it does not. It also implies the prerequisite source of `capa`. It stops short of naming a concrete alternative tool for the spatial-query case, so it is clear context rather than a full when/when-not/alternative map.

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

get_category_infoVer una categoría temáticaA
Read-only

Details and sample datasets for one CKAN thematic category (name from list_categories).

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
sourceNoCKAN portal; nacional (default), cuenca, latacunga or iadb.nacional
categoryYesCategory slug/name from list_categories
include_datasetsNoInclude sample datasets in the category (default True)

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safe-read profile is covered. The description adds only the fact that sample datasets may be included; it says nothing about how many are returned, truncation, or portal-dependent behavior across the four sources.

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?

A single economical sentence with the resource and scope front-loaded and zero filler. It is slightly under-explained rather than over-long, but there is no wasted text.

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?

With no output schema, the description does signal what comes back ('details and sample datasets'), which is the key return-value hint for a read-only informational tool. It omits how the response varies by the format parameter and by source portal, which would round it out.

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 format, source, category and include_datasets are all documented in the schema, including enum values and defaults. The description's only parameter hint ('name from list_categories') duplicates the schema's own wording, adding no new meaning. Baseline 3 applies.

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 (retrieves details + sample datasets) for a specific resource (one CKAN thematic category) and scopes it to a single item, which cleanly distinguishes it from the sibling list_categories, which enumerates them.

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

Usage Guidelines3/5

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

The parenthetical '(name from list_categories)' implies the prerequisite that you must first call list_categories to obtain a valid category, but there is no explicit when-to-use guidance, no exclusions, and no routing away from alternatives such as search_datasets for broader dataset discovery.

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

get_cenace_tableroVer un tablero en vivo de CENACEA
Read-only

CENACE live grid snapshot: generation mix and demand now, yesterday, month or year to date. No historical queries.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
tableroYesOne of the 5 names above.

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly, openWorld and non-destructive, so the safety profile is covered. The description adds genuine value beyond that: the snapshot is point-in-time and limited to now/yesterday/month/year-to-date, with no historical depth.

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?

Two tightly packed sentences with the resource and scope front-loaded and the limiting condition placed at the end. No filler, every clause carries information.

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?

With no output schema, the description does indicate what comes back (generation mix and demand figures). A snapshot tool of this complexity is adequately covered, though it could say a bit more about the returned shape.

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% with both enums documented, so the schema does the heavy lifting. The phrase "now, yesterday, month or year to date" loosely echoes the five tablero values but does not map them explicitly, so no credit above the baseline.

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

Purpose4/5

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

States a specific resource (CENACE live grid) and content (generation mix and demand), with the time granularities spelled out. It is clearly distinguishable from unrelated siblings, though it does not explicitly differentiate itself from the nearby get_energia_ecuador_snapshot.

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?

"No historical queries" is an explicit when-not condition that bounds the tool's use. It does not, however, name an alternative tool for historical energy data, leaving the agent to search siblings on its own.

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

get_cepalstat_indicadorVer observaciones de un indicador CEPALSTATA
Read-only

Observations of one CEPALSTAT indicator for one country (Ecuador by default), with dimension ids decoded to labels. Take indicator_id from search_cepalstat_indicadores.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNo"es" (default) or "en"es
paisNoCountry to filter to (accent-insensitive, e.g. "Ecuador", "Peru").Ecuador
formatNotext summary (default) or json structured result.text
indicator_idYesAn "indicator_id" from search_cepalstat_indicadores.

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly/openWorld/non-destructive, so the safety profile is covered. The description adds genuinely useful behavior beyond that: dimension ids are decoded to labels, and country defaults to Ecuador, which shapes what the agent gets back. It omits any note on volume, pagination, or rate limits.

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?

Two sentences, no filler. The scoping constraints (one indicator, one country, default Ecuador, decoded labels) are front-loaded, and the dependency instruction follows immediately.

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?

No output schema exists, and the description partially compensates by describing the shape of the result (decoded dimension labels). With all four parameters documented and the indicator_id dependency stated, an agent has what it needs, though return format and result size remain unspecified.

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% and every parameter (lang, pais, format, indicator_id) already carries its own description, so the schema does the heavy lifting. The description only echoes the Ecuador default and the indicator_id source, adding no format or syntax detail beyond the schema.

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

Purpose4/5

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

States a specific resource and scope: observations of ONE CEPALSTAT indicator for ONE country, with dimension ids decoded to labels. This clearly separates it from the plural search_cepalstat_indicadores, though it does not explicitly distinguish itself from the other data-retrieval sibling get_serie_internacional.

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?

Explicitly names the prerequisite source for indicator_id ("Take indicator_id from search_cepalstat_indicadores"), which tells the agent it must search first. It gives no when-not guidance or mention of alternatives for the same data, so it stops just short of a full routing instruction.

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

get_certificado_cumplimiento_patronalVerificar cumplimiento de obligaciones patronales (IESS)A
Read-only

Whether an employer (RUC) or person (cédula) is current on IESS contributions. A compliance check, not a headcount; for employees use get_financials' n_empleados.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
identificacionYesA 10-digit cédula or 13-digit RUC.

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds the semantic clarification that this is a boolean-style compliance status rather than a data listing, but says nothing about auth requirements, rate limits, or freshness of the compliance data.

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?

Two sentences, zero filler, with the core scope stated first and the disambiguation second. Every clause earns its place.

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?

With no output schema, the description correctly carries the return-value burden by stating it answers 'whether ... is current on IESS contributions.' It is complete for a single-lookup compliance check, though it could note what a non-compliant or unknown identification returns.

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%, with both params (identificacion, format) fully documented in the schema including the enum. The description reinforces identificacion's dual identity semantics (RUC for employers, cédula for persons) but adds no format or validation detail beyond the schema, so the baseline 3 applies.

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?

The description states a specific check (IESS contribution compliance) over a specific resource (RUC or cédula), and explicitly differentiates itself from the sibling tool get_financials by calling out that it is 'a compliance check, not a headcount.' An agent can distinguish it from the many search_*/get_* siblings without opening a schema.

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

Usage Guidelines5/5

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

It names the condition that selects this tool (verifying contribution compliance) and explicitly routes the agent elsewhere for the adjacent need ('for employees use get_financials' n_empleados'). This is a clear when-to-use plus a named alternative for the most likely confusion.

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

get_compania_infoVer información registral de una compañíaA
Read-only

Supercías registry record for one company by RUC: status, incorporation, representative, capital, CIIU, address. No financials.

ParametersJSON Schema
NameRequiredDescriptionDefault
rucYesThe company's 13-digit RUC
formatNotext summary (default) or json structured result.text

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so the safety profile is covered. The description adds the field scope and the exclusion of financials, which is genuinely useful routing context, though it says nothing about response size, latency, or failure modes for a bad RUC.

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?

A single front-loaded sentence pairing the source, the key, and the returned fields, closed by a short exclusion. No filler or redundancy.

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?

With no output schema, the description usefully enumerates the returned attributes and notes the financials gap, which is what an agent needs to decide relevance. It could be slightly more complete by mentioning the text/json output choice, but the schema already carries that.

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 both the 13-digit ruc and the text/json format enum are already documented in the schema. The description only restates that lookup is by RUC and adds no format or syntax detail beyond it, so the baseline 3 applies.

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+resource (registry record for one company by RUC) and enumerates the returned fields (status, incorporation, representative, capital, CIIU, address). The closing 'No financials' and the singular 'one company' implicitly separate it from get_financials and search_companias, so an agent can route without opening the 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?

'for one company by RUC' gives clear context for a single-record lookup versus a bulk search, and 'No financials' acts as an explicit exclusion steering agents to get_financials. It stops short of naming the alternative tools, so it is context rather than a full when-to-use directive.

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

get_contraloria_informeVer un informe de datos abiertos de ContraloríaA
Read-only

Rows of one Contraloría audit-reports CSV (one row per approved report), or metadata and a read_pdf pointer for an annual plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
rowsNoNumber of data rows to preview (default: 50, max: 200)
formatNotext summary (default) or json structured result.text
informe_idYesAn id from list_catalogo(fuente='contraloria')

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint, destructiveHint=false, openWorldHint). The description adds genuinely new behavioral context: the result is either row-oriented CSV data (one row per approved report) or metadata plus a read_pdf pointer for annual plans, disclosing an unusual dual-return behavior that the annotations do not convey.

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?

A single compact sentence with no filler, front-loading the primary return type before the annual-plan exception. It is dense but earns its words; the dual-mode clause is slightly cryptic but purposeful.

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

Completeness3/5

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

With no output schema, the description carries the burden of explaining returns and does so only briefly. It omits which condition triggers the metadata/read_pdf branch and how the rows preview relates to the full dataset, leaving a meaningful gap for a data-retrieval 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% and every parameter (informe_id, rows, format) is documented in the schema itself. The description adds no syntax, format, or constraint detail beyond what the schema already provides, so the baseline of 3 applies.

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

Purpose4/5

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

The description names a specific resource ('one Contraloría audit-reports CSV') and states what comes back (rows, one per approved report), so the agent knows the subject matter precisely. It does not, however, differentiate itself from adjacent tools such as get_informe_igepn or get_contrato_info, and it lacks an explicit verb.

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

Usage Guidelines3/5

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

There is no explicit 'use this when' guidance or exclusion against alternatives. Usage is only implied by the dual-mode framing (CSV rows vs. annual-plan metadata plus a read_pdf pointer), which hints at a follow-up chaining step but leaves the selection criteria to inference.

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

get_contrato_infoVer el expediente OCDS de un contrato SERCOPA
Read-only

Full OCDS record of one SERCOP procurement process (ocid from search_contratos): buyer, tender, awards, contracts.

ParametersJSON Schema
NameRequiredDescriptionDefault
ocidYesOpen Contracting ID, e.g. "ocds-5wno2w-001-LICO-GPLR-2020-2805"
formatNotext summary (default) or json structured result.text

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered structurally. The description adds that this returns the *full* record and names the four OCDS blocks, but says nothing about record size, potential latency, or error behavior on an unknown ocid.

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?

A single dense sentence, front-loaded with the resource and scope, with every clause carrying information (scope, id provenance, returned sections). No 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?

With no output schema, the description correctly compensates by naming the returned OCDS sections, and annotations carry the safety profile. Only gap is the absence of any note about response size or failure modes for a bad ocid.

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%, with both ocid (including a concrete example value) and the format enum documented in-schema, so the baseline is 3. The description only adds that ocid originates from search_contratos, marginal value beyond the schema.

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

Purpose4/5

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

States a specific verb+resource: retrieving the full OCDS record for one SERCOP procurement process, and enumerates the sections returned (buyer, tender, awards, contracts). The parenthetical tying the ocid to search_contratos distinguishes it from the search sibling, though it doesn't explicitly frame itself as the 'detail view' counterpart.

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

Usage Guidelines3/5

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

The phrase '(ocid from search_contratos)' implies the required upstream workflow — search first, then fetch detail. There is no explicit when-not guidance, no note about what to do if the ocid is unknown or invalid, and no named exclusion of alternatives.

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

get_cortes_horariosHorarios de cortes de luz por sectorA
Read-only

Parse one power-cut PDF (archivo from search_cortes) into rows: date, time blocks without power, location (EEQ: substation; Centrosur: province/canton/zone) and sectors. query filters by place.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoFree text matched (accent-insensitive) against location and sectors, e.g. "La Floresta", "Gualaceo".
formatNotext summary (default) or json structured result.text
archivoYesThe file's `archivo` from search_cortes (EEQ: slug or URL; Centrosur: PDF URL).
distribuidoraYeseeq or centrosur.

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so the safety profile is carried structurally. The description adds the distribuidora-dependent output shape (EEQ substation vs Centrosur province/canton/zone), but says nothing about malformed-PDF handling, failure modes, or size/rate constraints.

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?

Two sentences, zero filler, front-loaded with the verb and resource; the output fields and the query behavior are packed in without redundancy.

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 read-only parse tool with full schema coverage and no output schema, the description adequately covers the input provenance and the shape of the returned rows. It would be fully complete with a note on how unresolvable or unparseable PDFs are reported.

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 all four parameters are already documented, including the accent-insensitive `query` matching and both enums. The description only restates that query filters by place and confirms the archivo provenance, adding little beyond the schema.

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 ("Parse one power-cut PDF") plus the exact fields it yields (date, time blocks, location, sectors), so it is immediately distinguishable from search_cortes, which only locates files.

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?

It names the prerequisite sibling and the input it supplies ("archivo from search_cortes"), which establishes the find-then-parse workflow. It does not state explicit exclusions or when not to call it, so it stops short of a full when/when-not routing rule.

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

get_dataset_infoVer metadata de un datasetA
Read-only

Metadata for one CKAN dataset: description, organization, tags, dates, license, update frequency and the publisher's source URL. Take dataset_id from search_datasets; next list_dataset_resources for its files.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
sourceNoCKAN portal; nacional (default), cuenca, latacunga or iadb.nacional
dataset_idYesThe dataset ID or slug (e.g. "registro-estadistico-de-recursos-y-actividades-de-salud-2019")

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare a safe read (readOnlyHint=true, destructiveHint=false, openWorldHint=true), so the safety profile is covered. The description usefully enumerates the returned metadata fields, which substitutes for the missing output schema, but says nothing about sourcing behavior per portal, errors, or rate limits.

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?

Two dense sentences with zero filler; the payload (returned fields) is front-loaded and the navigation hints follow. Every clause earns its place.

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?

With no output schema, the description carries the return-value burden and does so by listing the metadata fields returned. Portal selection (source) and output format are handled by the well-documented schema, leaving little an agent still needs; only error/edge behavior is unaddressed.

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%: dataset_id, format and source are all documented in the schema, including enum values and defaults. The description only adds the advice on where dataset_id comes from, which is marginal beyond the structured fields, so the baseline 3 applies.

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+resource (metadata for one CKAN dataset) and enumerates the returned fields, so the agent knows exactly what it gets. It also names the adjacent siblings (search_datasets upstream, list_dataset_resources downstream), distinguishing it from the search and resource-listing tools.

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?

Explicitly tells the agent where dataset_id comes from (search_datasets) and what to call next for files (list_dataset_resources), which is strong workflow routing. It does not state when to avoid this tool (e.g., when only a resource-level lookup is needed via get_resource_info), so it stops short of a 5.

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

get_energia_ecuador_snapshotRecuperar snapshot del portal nacional de cortes (energia-ecuador.com, 2024)A
Read-only

Frozen Wayback Machine copy (2024-04-24) of the defunct national blackout-schedule portal energia-ecuador.com; only EEQ's Pichincha rotation survived. For current schedules use search_cortes and get_cortes_horarios.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoFree text matched (accent-insensitive) against canton or sectores.
formatNotext summary (default) or json structured result.text

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, non-destructive, openWorld), so the description doesn't need to. What it adds beyond them is substantive data-quality context: the source portal is defunct, the data is frozen at a specific date, and coverage is partial (only one rotation survived). That staleness/completeness warning is exactly what an agent needs to avoid treating this as live data.

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?

Two compact clauses: the identifying fact (what the snapshot is and its limits) is front-loaded, followed immediately by the redirect to live alternatives. No filler, every clause carries decision-relevant information.

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 two-parameter, optional-parameter read-only snapshot tool with no output schema, the description supplies the essentials: source, date, coverage limitation, and alternatives. It doesn't describe the shape of the returned rotation data, which would help an agent interpret results, but the gap is minor given the tool's simplicity.

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 both `query` (accent-insensitive match against canton or sectores) and `format` (text|json, with default) are fully documented in the schema. The description adds no extra syntax, scope, or default guidance, so the baseline 3 applies.

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 precisely what the tool returns: a frozen Wayback Machine copy (dated 2024-04-24) of a specific defunct portal, including its coverage limitation (only EEQ's Pichincha rotation survived). It names the sibling tools it must not be confused with (search_cortes, get_cortes_horarios), so an agent can disambiguate without opening any 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?

Explicitly routes the agent to search_cortes and get_cortes_horarios for current schedules, which implicitly confines this tool to historical/snapshot queries. It stops short of stating the positive trigger (e.g., 'use this when you need pre-2024 EEQ Pichincha data'), leaving a small inference gap.

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

get_financialsVer historial financiero de una compañíaA
Read-only

One company's Supercías financial history (last five fiscal years): revenue, assets, equity, profit, employees and ratios. Takes expediente or RUC.

ParametersJSON Schema
NameRequiredDescriptionDefault
anioNoOptional single fiscal year filter.
formatNotext summary (default) or json structured result.text
expediente_or_rucYesThe company's Supercías "expediente" number (from search_companias/get_compania_info) or its 13-digit RUC.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description usefully adds the 'last five fiscal years' temporal bound and the returned field set, but says nothing about rate limits, data freshness, or behavior when a year filter yields no data.

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?

Two efficient sentences with no filler, and the resource/scope is front-loaded ahead of the input note. It is terse to the point of omitting the optional anio/format parameters, but nothing is wasted.

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?

With no output schema, the description compensates by naming the returned fields and the five-year window, and annotations cover safety. It is largely complete for a single-company read tool, though it could note the year-filter and format behavior.

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 coverage is 100%, so all three parameters are already documented in the schema (including the anio filter and text/json format). The description only restates the identifier input, adding no syntax or format detail beyond the schema; baseline 3 applies.

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?

The description states a specific resource (one company's Supercías financial history), scope (last five fiscal years), and enumerates the returned fields (revenue, assets, equity, profit, employees, ratios). An agent can tell this is the financial-history tool rather than the general company-info tool (get_compania_info) from the description alone.

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

Usage Guidelines3/5

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

It states the accepted identifiers ('Takes expediente or RUC'), which hints at usage, but never says when to prefer this over get_compania_info or search_companias, and gives no exclusions or prerequisites. Usage is only implied.

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

get_iess_archivosVer documentos de una colección del IESSA
Read-only

Documents in one IESS collection with direct links. anio is required for informes_auditoria.

ParametersJSON Schema
NameRequiredDescriptionDefault
anioNoFilter to one year.
queryNoFree text matched (accent-insensitive) against título (and descripción/grupo where the collection has one).
formatNotext summary (default) or json structured result.text
coleccionYes"boletines" (Boletines Estadísticos, annual, 1978- 2024 confirmed), "estudios_actuariales" (actuarial valuation studies per fund, published only for a handful…

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, destructiveHint=false and openWorldHint, so the safety profile is covered. The description adds only 'with direct links' regarding the response and the conditional anio requirement; it says nothing about result volume, pagination, or what happens for collections that have no documents in the requested year. Modest value on top of annotations.

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?

Two short sentences with zero filler, and the conditional requirement is placed after the core statement. The first sentence is a noun fragment without an explicit verb ('Lists…'), which is a minor structural weakness but costs no comprehension.

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 simple list tool with 100% schema coverage, annotations, and no output schema, the definition covers the key call conditions, including the one non-obvious required parameter. Missing pagination/result-size behavior is the main gap, but 'direct links' does signal what the agent will get back.

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

Parameters4/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, but the description adds a real constraint the schema does not express: the schema marks only 'coleccion' as required and gives 'anio' a null default, whereas the description discloses that anio is effectively mandatory for informes_auditoria. That is meaningful semantics beyond the structured fields, lifting it above baseline.

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

Purpose4/5

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

Identifies the resource precisely — documents (archivos) belonging to an IESS collection — and hints at the return form with 'direct links'. It does not, however, distinguish itself from the many parallel archive-listing siblings (get_inec_publicacion_archivos, get_bce_pagina_archivos, get_sgr_sitrep_archivos), so an agent must rely on the 'IESS' qualifier alone to pick it. Clear verb+resource, no sibling differentiation.

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

Usage Guidelines3/5

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

The line 'anio is required for informes_auditoria' is a genuine conditional usage rule that steers the agent for one enum value. Beyond that there is no statement of when to prefer this tool over the other archive/report tools, nor what to do when the requested collection is unknown. Implied usage only.

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

get_indicador_bceVer serie de un indicador BCEDataA
Read-only

Time series of one BCEData group (id_grupo from search_indicadores_bce), with optional YYYY-MM range, frequency and unit.

ParametersJSON Schema
NameRequiredDescriptionDefault
desdeNoStart period as YYYY-MM.
hastaNoEnd period as YYYY-MM.
formatNotext summary (default) or json structured result.text
unidadNoVaries by group (e.g. "Millones de USD", "Indice", "Porcentaje").
id_grupoYesThe group id from search_indicadores_bce.
frecuenciaNoSemanal | Mensual | Trimestral | Anual.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered structurally. The description adds no behavioral context beyond that, such as response format for the text default or any limits, so a baseline 3 is appropriate for a read-only query tool.

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?

A single sentence with zero waste; the resource and its disambiguating id source are front-loaded before the optional filters.

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 read-only, single-required-parameter query tool with full schema coverage and no output schema, the description supplies what an agent needs to call it. Only the absence of any hint about return shape or noting it as one of several BCE series tools keeps it from a 5.

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

Parameters4/5

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

Schema description coverage is 100%, so all six parameters (including YYYY-MM ranges, frecuencia enum and unidad) are already documented. The description reinforces the optional range/frequency/unit framing and the id_grupo provenance, adding light value on top of the schema but nothing the schema lacks.

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

Purpose4/5

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

States a specific verb+resource ('Time series of one BCEData group') and ties id_grupo back to its source tool, search_indicadores_bce, which helps separate it from the many other retrieval siblings. It does not explicitly name what it is not (e.g. get_bce_indicador_diario or get_bce_iem_table), so differentiation stops short of a 5.

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

Usage Guidelines3/5

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

The description implies usage by noting id_grupo comes from search_indicadores_bce, which is genuine routing guidance for the required parameter. However it gives no explicit when-to-use vs when-not, and no mention of the adjacent daily/IEM tools that could otherwise be confused with it.

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

get_inec_estadistica_filesVer archivos de un tema estadístico del INECA
Read-only

File links (bulletins, methodology, historical series) on one INEC topic page from search_inec_estadisticas.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesA topic URL from search_inec_estadisticas's "url" field (must be on ecuadorencifras.gob.ec)
yearNoOptional reference year; keeps only that year's files (each file carries a "year" parsed from its name or folder)
formatNotext summary (default) or json structured result.text

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare read-only, non-destructive, open-world behavior, so the safety profile is clear. The description adds that the output consists of file links (bulletins, methodology, historical series), but does not cover rate limits, auth, or return structure.

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?

Single, front-loaded sentence with no filler. It delivers purpose, scope, and source in one clause.

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 three-parameter read-only tool with no output schema, the description covers what is returned and where the required URL comes from. It omits return format details and the optional year/format filters, but those are handled by the schema and annotations.

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 url, year, and format are fully documented in the schema. The description only implies the url source and does not add semantic detail beyond the schema; baseline 3 applies.

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

Purpose4/5

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

States the resource ('File links') and scope ('one INEC topic page'), with examples of file types. It ties the tool to search_inec_estadisticas, distinguishing it from that search tool, but does not explicitly differentiate from the similar get_inec_publicacion_archivos sibling.

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?

Clearly directs the agent to use a topic URL from search_inec_estadisticas, establishing the intended workflow. It gives no exclusions or alternative tools, but the source dependency is explicit.

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

get_inec_publicacion_archivosVer archivos de una publicación del INECA
Read-only

File links (PDF/XLSX/CSV/ZIP) in one INEC publication (id or URL from search_inec_publicaciones).

ParametersJSON Schema
NameRequiredDescriptionDefault
postYesEither the numeric "id" from search_inec_publicaciones, or the publication's full ecuadorencifras.gob.ec URL.
formatNotext summary (default) or json structured result.text

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, covering the safety profile. The description adds that the output is file links restricted to one publication, but omits any pagination, rate-limit, or empty-result behavior. Given annotation coverage, a 3 is appropriate.

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?

A single tightly-worded sentence that front-loads what is returned (file links) and their types. No 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 simple two-parameter read tool with no output schema, the description conveys the input source (search_inec_publicaciones) and the nature of the result (file links with formats). It is adequate, though it could better disambiguate from get_inec_estadistica_files.

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% and the schema already documents both 'post' (id or URL) and 'format' (text/json enum with default). The description only echoes the 'id or URL' notion and adds no format or syntax detail beyond the schema, so the baseline 3 holds.

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

Purpose4/5

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

States a specific verb+resource: retrieving file links (PDF/XLSX/CSV/ZIP) within a single INEC publication. It names the parent search tool, but does not differentiate itself from the very similar sibling get_inec_estadistica_files, so an agent could confuse the two.

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

Usage Guidelines3/5

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

The parenthetical '(id or URL from search_inec_publicaciones)' implies the workflow of searching first to obtain the post id/URL, giving implicit usage context. There is no explicit statement of when to prefer this tool over siblings or when not to use it.

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

get_informe_igepnDescargar y leer un informe del IG-EPNA
Read-only

Download and extract the text of one IG-EPN report from search_informes_igepn, re-located by exact nombre, grupo and anio (plus volcan when names repeat). pages limits the range (max 20/call).

ParametersJSON Schema
NameRequiredDescriptionDefault
anioNoReport year (0 = current year) -- same value used to find it
grupoNo"sismico" | "volcanico" | "" (both) -- same value used to find it
pagesNoPage range, 1-indexed (e.g. "3", "1-5").
formatNotext summary (default) or json structured result.text
nombreYesExact report name from search_informes_igepn (e.g. "Informe Diario 2022-071")
volcanNoVolcano name, only needed to disambiguate a duplicate nombre

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds real operational context beyond them: a per-call page cap (max 20) and the fact that identification keys must match the search call. It says nothing about auth or error behavior, keeping it at 4.

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?

Two dense sentences with the identification mechanism front-loaded and the page constraint trailing. No filler, no restatement of the title, every clause carries information.

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 no-output-schema retrieval tool, the description covers identification, pagination limits and the format toggle that governs the return shape. It does not describe what a caller gets when a nombre matches nothing or how large extractions are chunked beyond the page cap, leaving a small gap.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3 and the schema already documents all six parameters. The description adds the 'max 20 pages/call' constraint, which the schema's pages field does not state, and frames nombre/grupo/anio as reused search keys. That extra constraint earns one step above baseline.

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 pair (download and extract text) plus a precisely scoped resource (one IG-EPN report), and names the sibling it depends on (search_informes_igepn). An agent can distinguish it from the search sibling 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?

The description establishes a clear discovery-then-retrieval workflow: the report comes 'from search_informes_igepn' and is re-located by the exact values used there, with volcan needed only when names repeat. It lacks an explicit exclusion or 'do not use for X' clause, so it stops short of a full 5.

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

get_institucion_infoVer detalle de una institución públicaA
Read-only

One gob.ec institution's acronym, sector, description and websites. Take institucion_id from list_instituciones (SRI=8, IESS=163, Registro Civil=23); for its procedures use search_tramites.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
institucion_idYesInstitution ID (e.g. "8")

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so the safety profile is covered structurally. The description adds the returned field set but says nothing about errors, missing institutions, or auth needs, so it contributes only modest behavioral context.

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?

Two compact clauses: the return content is front-loaded, followed by ID sourcing and the related-tool route. No filler, no repetition of the title, and every clause earns its place.

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 simple read-only lookup, the definition supplies the ID source, the returned fields, and the sibling for procedures. With annotations covering safety and no output schema to explain, nothing essential is missing, though the lack of an explicit verb keeps it slightly shy of fully self-contained.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description goes beyond the schema by supplying concrete ID mappings (SRI=8, IESS=163, Registro Civil=23) that the schema only shows as 'e.g. "8"'. This meaningfully helps the agent populate institucion_id correctly.

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

Purpose4/5

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

The description names the specific resource (one gob.ec institution) and enumerates the returned fields (acronym, sector, description, websites), which makes it clearly distinct from the plural list_instituciones sibling. The retrieval verb is only implied by the noun phrase rather than stated, but an agent can still tell what the tool returns without opening the 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?

It explicitly routes the agent: take institucion_id from list_instituciones, and use search_tramites for procedures. That names the source and the alternative for related data. It stops short of stating when NOT to use this tool, but the context is clear.

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

get_organization_infoVer una organización y sus datasetsA
Read-only

One CKAN organization and its datasets, the way to browse a large publisher (e.g. sri-servicio-de-rentas-internas). Take the slug from search_organizations; query filters dataset titles. To search by topic across publishers use search_datasets.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoFree text matched (accent-insensitive) against each dataset's title.
formatNotext summary (default) or json structured result.text
sourceNoCKAN portal; nacional (default), cuenca, latacunga or iadb.nacional
organization_idYesThe organization slug (e.g. "sri-servicio-de-rentas-internas")

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/openWorldHint/destructiveHint, so safety is covered. The description adds real behavior: it discloses that this is a browse-style bulk listing, that 'query' filters dataset titles rather than doing a topic search, and that output can be a text summary or structured json. It stops short of describing pagination or result-size limits, which keeps it out of the top band.

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 short sentences, front-loaded with what the tool returns before the routing instructions. Every clause carries information: scope, sourcing of the slug, the query's filtering target, and the sibling alternative.

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?

There is no output schema and no annotation for return shape, so the description must carry that burden; it does so adequately by naming the payload (organization plus its datasets) and the two output formats. It is slightly thin on what fields come back per dataset and whether results are truncated, but an agent has enough to call it correctly.

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% and every parameter already carries a description with defaults and enum values, so the baseline is 3. The description reinforces the slug format and the title-filtering behavior of 'query' but adds no syntax, format, or constraint detail beyond the schema.

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?

The description states a specific verb+resource ('One CKAN organization and its datasets') and frames it functionally ('the way to browse a large publisher'). It explicitly separates itself from the two adjacent siblings, search_organizations and search_datasets, so an agent can pick correctly without opening a schema.

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

Usage Guidelines5/5

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

It gives an explicit prerequisite/ordering rule ('Take the slug from search_organizations') and an explicit alternative with the condition that selects it ('To search by topic across publishers use search_datasets'). Usage is fully resolved, including how to obtain the required parameter.

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

get_regulacion_infoVer detalle de una regulación de gob.ecA
Read-only

One gob.ec regulation's type, Registro Oficial reference, description and PDF link. Take regulacion_id from search_regulaciones; read the PDF's text with read_pdf.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
regulacion_idYesRegulation ID (e.g. "5051")

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety and network profile is covered structurally. The description adds the downstream workflow hint (read_pdf), but says nothing about error handling, whether the PDF link may be absent, or rate limits.

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?

Two short sentences with zero filler; the resource and its fields come first, followed by the ID source and the follow-up tool. Every clause earns its place.

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?

There is no output schema, and the description compensates by listing the returned fields. With annotations covering the safety profile and the schema covering both parameters, the definition is essentially complete, missing only edge-case behavior for a nonexistent ID.

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 both parameters are already documented (regulacion_id with an example, format with its enum and default). The description only adds the provenance of the ID value ('from search_regulaciones') and says nothing about the format parameter.

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

Purpose4/5

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

The description names the resource (a single gob.ec regulation) and enumerates the returned fields (type, Registro Oficial reference, description, PDF link), which clearly separates it from the sibling search_regulaciones. It lacks an explicit verb such as 'retrieve/fetch detail', but the intent is unambiguous.

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?

It gives an explicit call sequence: obtain regulacion_id from search_regulaciones and then use read_pdf to read the PDF text. That routes the agent to the correct sibling tools, though it does not state any when-not-to-use condition or failure cases.

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

get_resource_infoVer metadata de un recurso (archivo)A
Read-only

Metadata for one CKAN resource (file): format, size, MIME type, download URL and parent dataset. Take resource_id from list_dataset_resources; then preview_resource_data or query_resource_data for its contents.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
sourceNoCKAN portal; nacional (default), cuenca, latacunga or iadb.nacional
resource_idYesThe resource UUID

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered structurally. The description adds the returned metadata fields, but says nothing about portal/source behavior, availability, or any per-portal caveats despite openWorldHint implying external calls. Adequate but not rich beyond the annotations.

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?

Two short sentences with no filler; the payload description comes first and the routing/next-step guidance follows. Every clause earns its place.

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?

With no output schema, the description usefully enumerates the returned metadata fields, which is the right compensation, and it names the downstream tools for content retrieval. It stops short of covering multi-portal behavior or any error/not-found case, but nothing critical for calling the tool correctly is missing.

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 format, source and resource_id are already documented with enums and defaults; the baseline is 3. The description adds provenance for resource_id (comes from list_dataset_resources) but does not explain the meaning of the source portal switch or the text/json format choice beyond the schema text.

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 ('Metadata for one CKAN resource (file)') and enumerates the exact fields returned: format, size, MIME type, download URL and parent dataset. It also separates itself from the content-oriented siblings (preview_resource_data / query_resource_data), so an agent can pick it without opening another schema.

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

Usage Guidelines5/5

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

Explicitly tells the agent where resource_id comes from (list_dataset_resources) and names the alternatives to use when the contents rather than the metadata are wanted. This is a full when-to-use plus when-not-to-use routing statement.

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

get_serie_internacionalSeries internacionales con datos de Ecuador (WDI, IRENA, XM, Comtrade, FMI, OMS, OIT, ACNUR)A
Read-only

International series for Ecuador via fuente: wdi (World Bank), irena (electricity), xm (Colombia-Ecuador power flows), comtrade (UN bilateral trade), imf (IMF SDMX), who (health), ilo (ILOSTAT labour), unhcr (refugees/asylum). Without indicador/flow, wdi/who/imf/ilo list their catalog (set query).

ParametersJSON Schema
NameRequiredDescriptionDefault
cmdNocomtrade only: TOTAL or an HS code of 2, 4 or 6 digits.TOTAL
paisNowdi/irena/who/imf/ilo/unhcr: ISO3 code (irena also accepts the English name).ECU
tipoNoirena only: generacion (GWh), capacidad (MW) or ambos.ambos
claveNoimf/ilo only: SDMX key, dot-separated (ECU.CPI._T.IX.M).
desdeNoStart: a year (AAAA) for wdi/irena/who/unhcr, a date (AAAA-MM-DD) for xm, a period (AAAA, AAAA-MM) for imf/ilo.
flujoNocomtrade only: X (exports), M (imports) or ambos.ambos
hastaNoEnd, same format as desde.
limitNocatalog/flow listings only: maximum rows (1-200).
queryNowdi/who/imf/ilo: catalog search text, used when indicador is empty.
socioNocomtrade: partner as ISO3 (USA, CHN, COL, PER, PAN, ESP, NLD, ITA...) or M49 number; empty = 0 (World).
formatNotext summary (default) or json structured result.text
fuenteYeswdi, irena, xm, comtrade, imf, who, ilo or unhcr.
periodoNocomtrade only: one period, AAAA (frecuencia A) or AAAAMM (frecuencia M).
sentidoNoxm only: exportaciones (Colombia to Ecuador) or importaciones (Ecuador to Colombia).exportaciones
ultimosNoimf/ilo only: last N observations per series.
conexionNoirena only: All, On-grid or Off-grid.All
indicadorNowdi/who: indicator code.
agregacionNoxm only: dia or mes.dia
frecuenciaNocomtrade only: A (annual) or M (monthly).A
tecnologiaNoirena only: technology label substring (solar, hydro, Total Renewable...).

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so safety is covered. The description adds real behavior beyond that: the dual mode where an empty indicador/flow triggers a catalog listing rather than a data fetch, plus per-source semantics (xm is cross-border power flows, comtrade is bilateral trade). It omits any note on auth, rate limits, or result size.

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?

Two sentences, no filler, with the core purpose front-loaded before the source mapping. The second sentence is dense and slightly ambiguous ('Without indicador/flow'), which keeps it just under a 5.

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

Completeness3/5

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

For a 20-parameter, no-output-schema dispatcher this is adequate but thin. It explains source selection and catalog discovery, yet says nothing about the shape of returned data (text summary vs json is only in the schema) or which parameter combinations are valid per source, which is the main risk area for a multi-source tool.

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

Parameters4/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, but the description earns extra by decoding the `fuente` enum values and explaining the indicador/query interaction that the schema alone leaves implicit. It does not clarify how the source-specific parameters (clave, sentido, tecnologia, etc.) combine when several are supplied.

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

Purpose4/5

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

The description names a specific verb+resource (retrieve international series for Ecuador) and enumerates the eight `fuente` sources with a short gloss for each (wdi=World Bank, irena=electricity, xm=Colombia-Ecuador power flows, comtrade=UN bilateral trade, etc.). That is far more specific than the tool name alone. It does not, however, position itself against nearby siblings such as get_cepalstat_indicador or search_indicadores_bce, so it stays short of a 5.

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

Usage Guidelines3/5

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

It gives one genuine workflow hint: with an empty indicador/flow, wdi/who/imf/ilo return their catalog, and `query` is the search text. That is useful implied usage. It never states when to pick this tool over the BCE or CEPALSTAT alternatives, and there are no exclusions or prerequisites, so guidance remains partial.

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

get_sgr_sitrep_archivosVer reportes SITREP de un evento SGRA
Read-only

SITREP PDF links (national, provincial, cantonal) for one SGR event page from search_sgr_sitreps. Returns links, not contents.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
evento_urlYesAn event URL from search_sgr_sitreps's "url" field (must be on gestionderiesgos.gob.ec).

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint and destructiveHint, so safety is covered. The description adds genuinely new behavioral context beyond the structured fields: the tool returns link references rather than document contents, which sets expectations about the response.

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?

Two short sentences, zero filler, with the scope and return-type qualifier front-loaded. Every clause earns its place.

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 simple read-only link extractor with no output schema, the description covers what is returned and what is not. It does not mention the text/json format toggle, though the schema documents that parameter adequately.

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 coverage is 100%, and the schema already documents both parameters, including that evento_url must come from search_sgr_sitreps and reside on gestionderiesgos.gob.ec. The description restates the source of evento_url, adding little beyond the schema, so the baseline 3 applies.

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?

The description names a specific verb and resource ('SITREP PDF links... for one SGR event page') and scopes it (national, provincial, cantonal). It explicitly distinguishes itself from the sibling search_sgr_sitreps by stating the URL comes from that tool, and 'Returns links, not contents' separates it from read_pdf.

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?

It states the prerequisite source for the required argument ('from search_sgr_sitreps'), which is a clear when-to-use signal, and 'Returns links, not contents' implicitly routes the agent to read_pdf for actual content. No explicit when-not or exclusion is spelled out, keeping it just under a 5.

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

get_sipa_resumen_indicadoresVer el Resumen de Indicadores anual de SIPAB
Read-only

Monthly PDF links of SIPA's (MAG) "Resumen de Indicadores" for one year, 2018 onward.

ParametersJSON Schema
NameRequiredDescriptionDefault
anioYesYear, e.g. 2025.
formatNotext summary (default) or json structured result.text

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, and destructiveHint=false, so the safety profile is covered. The description usefully adds that the return is a set of monthly PDF *links* (not embedded data) and that coverage starts in 2018, which is genuine context beyond the annotations, but it says nothing about pagination or whether a download step follows.

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?

A single tight sentence with the resource and scope front-loaded; zero filler. It is arguably too terse for the amount of behavior an agent must infer, but as pure structure it is efficient.

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

Completeness3/5

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

For a link-listing tool with no output schema, the description conveys what is returned and the year floor, which covers the essentials. It stops short of explaining how the linked PDFs are subsequently retrieved (e.g. via a download sibling) or the response shape, leaving the hub-and-spoke flow implicit.

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 coverage is 100%, so both parameters are already documented, making 3 the baseline. The description adds one meaningful constraint not in the schema ('2018 onward' bounds on 'anio'), but does not elaborate on the format enum's effect.

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

Purpose4/5

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

States a specific resource ('SIPA's (MAG) Resumen de Indicadores') and the exact content returned ('Monthly PDF links'), with a scope qualifier ('for one year, 2018 onward'). It is clear enough that an agent can distinguish it from archive-listing siblings, though it never names an alternative directly.

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

Usage Guidelines2/5

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

The description reports the 2018-onward coverage boundary but gives no guidance on when to pick this tool versus the many other archive/indicator siblings, and no prerequisites or exclusions. An agent must infer usage purely from the resource name.

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

get_sri_ruc_infoConsultar información pública de un RUCA
Read-only

Public SRI record for one 13-digit RUC: name, status, type, activity, dates and registered establishments. No tax amounts.

ParametersJSON Schema
NameRequiredDescriptionDefault
rucYesExact 13-digit Ecuadorian RUC
formatNotext summary (default) or json structured result.text
include_establecimientosNoInclude registered establishments

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds genuine behavioral context beyond that: it identifies the data as public SRI records and explicitly scopes out tax amounts, telling the agent what will NOT be returned.

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?

Two tight sentences with zero waste. The core resource and identifier format are front-loaded, and the scope caveat is a short, high-value clause.

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?

With no output schema, the description usefully lists the return fields, and annotations plus full schema coverage handle safety and parameters. It is close to complete, though it does not describe output shape or behavior for invalid/missing RUCs.

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 schema already documents all three parameters (ruc, format, include_establecimientos). The description echoes the 13-digit RUC constraint and the establishments field but adds no syntax or formatting detail beyond what is already structured.

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

Purpose4/5

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

States a specific verb+resource (public SRI record for one 13-digit RUC) and enumerates the fields returned (name, status, type, activity, dates, establishments). The 'one 13-digit RUC' phrasing implicitly differentiates it from search_sri_ruc, but it never names that sibling explicitly.

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

Usage Guidelines3/5

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

Usage is only implied: the singular 'for one 13-digit RUC' suggests a single-record lookup, and 'No tax amounts' hints at the scope boundary, but there is no explicit when-to-use statement or reference to search_sri_ruc for bulk/multi-record lookups.

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

get_sut_indicador_schemaVer campos de un indicador del SUT o la JudicaturaA
Read-only

Queryable fields of one SUT or Judicatura dashboard (fuente): columns, measures ([medida]/[suma]/[promedio]) and date levels, for query_sut_indicador.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
fuenteNosut (default) | judicaturasut
indicadorYesA key from list_catalogo(fuente=<fuente>).

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, destructiveHint=false, so the safety profile is covered. The description adds real value beyond annotations by disclosing the shape of the result — columns, measures with the [medida]/[suma]/[promedio] syntax, and date levels — which matters because there is no output schema.

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?

A single front-loaded sentence with no filler; the return-content detail is packed into parentheticals. Slightly dense but every clause earns its place.

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?

With no output schema, the description correctly fills the gap by describing the returned field categories and the measure syntax. Annotations cover safety and the schema covers all parameters, so nothing essential is missing.

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%, and the three parameters (format, fuente, indicador) are fully documented in the schema. The description merely echoes '(fuente)' and adds no syntax or constraint beyond what the schema already provides, so the baseline 3 applies.

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

Purpose4/5

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

States a specific resource (queryable fields of a SUT/Judicatura dashboard) and enumerates what those fields are: columns, measures, and date levels. It also hints at its relationship to query_sut_indicador and list_catalogo, so an agent can place it, though the verb is implicit rather than explicit.

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

Usage Guidelines3/5

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

The phrase 'for query_sut_indicador' implies this is a prerequisite/discovery step for that sibling, which is useful context. However, it never states when to call it versus alternatives (e.g. list_catalogo) or any condition, so usage is implied rather than guided.

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

get_tramite_estadisticasVer estadísticas de uso de un trámiteA
Read-only

Monthly attentions (people served) and complaints for one gob.ec trámite since mid-2021, one trámite at a time. Take tramite_id from search_tramites; for requirements and cost use get_tramite_info.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
tramite_idYesThe procedure ID (e.g. "11752")

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so safety is covered. The description adds genuinely useful behavioral context beyond them: the data returned (monthly attentions/complaints), the coverage start date (mid-2021), and the single-trámite scope. It stops short of noting rate limits or result-size behavior, so it is not a 5.

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?

Two dense sentences, front-loaded with what the tool returns and its scope, followed by the routing guidance. No filler or restatement of the name/title.

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, yet the description names the returned metrics and their granularity, and the schema's format enum covers the output shape. For a two-parameter read tool with annotations handling safety, nothing an agent needs to call it correctly is missing.

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

Parameters4/5

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

Schema description coverage is 100%, so both parameters are documented, making 3 the floor. The description adds value beyond the schema by telling the agent where tramite_id comes from (search_tramites), which the schema's bare example '11752' does not convey.

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+resource (monthly attentions and complaints for one gob.ec trámite), including the temporal scope (since mid-2021) and the one-trámite-at-a-time constraint. It also names the sibling to use for other trámite data, so an agent can distinguish it 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 Guidelines5/5

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

Gives an explicit prerequisite ('Take tramite_id from search_tramites') and routes the agent away from this tool for other needs ('for requirements and cost use get_tramite_info'). The when-to-use and the alternative are both stated, not inferred.

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

get_tramite_infoVer detalle de un trámite gubernamentalA
Read-only

One gob.ec trámite's requirements, beneficiaries, cost and responsible institution (tramite_id from search_tramites).

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
tramite_idYesThe procedure ID (e.g. "18009")

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds that the payload covers requirements, beneficiaries, cost and responsible institution, which is useful, but says nothing about auth, rate limits, caching, or error behavior.

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?

A single compact sentence with the resource front-loaded and no filler. It is a noun-phrase fragment rather than a full sentence, which is terse to the point of being clipped, but nothing is wasted.

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?

With no output schema, the description compensates well by naming the returned fields, so an agent knows roughly what it will get. It is still light on preconditions and does not address the format parameter's effect, leaving a small gap.

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 both parameters (tramite_id and format) are already documented, which sets the baseline at 3. The description contributes one genuine extra: the provenance of tramite_id from search_tramites, but it does not touch the format option at all.

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?

Names the specific resource (a gob.ec trámite) and enumerates exactly what it returns: requirements, beneficiaries, cost, and responsible institution. The parenthetical linking to search_tramites also separates it from siblings like get_tramite_estadisticas, which covers statistics rather than detail.

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

Usage Guidelines3/5

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

The parenthetical '(tramite_id from search_tramites)' implies the required upstream lookup, so usage is inferable, but there is no explicit statement of when to call this versus search_tramites or get_tramite_estadisticas, and no exclusions or prerequisites stated.

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

investigate_datasetInvestigar un dataset en un solo pasoA
Read-only

One-step shortcut: search CKAN, pick the top dataset and preview its first readable resource. Use the individual tools when the top hit isn't the right one.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch keywords (e.g. "empleo", "SRI recaudación")
formatNotext summary (default) or json structured result.text
sourceNoCKAN portal; nacional (default), cuenca, latacunga or iadb.nacional
preview_rowsNoData rows to preview from the chosen resource (default: 10, max: 50)

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/openWorldHint/destructiveHint=false, so safety is covered. The description adds genuine behavioral context beyond that: this is a chained operation (search + select + preview) and it silently falls back to the 'first readable resource' rather than failing, which tells the agent the result may come from an indirectly chosen resource.

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?

Two tight sentences with the primary purpose front-loaded and the fallback guidance second. No filler or restatement of the name/title.

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 4-param, no-output-schema tool with annotations covering the safety profile, the description covers what the tool does and when to prefer it. It could say more about behavior when no dataset matches or the preview is empty, but nothing essential for correct invocation is missing.

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 all four parameters (query, format, source, preview_rows) are already fully documented in the schema, including enum values and defaults. The description adds no syntax, format, or constraint detail beyond what the schema provides, so the baseline 3 applies.

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 chained behavior: search CKAN, take the top dataset, preview its first readable resource. This is clearly distinguishable from siblings like search_datasets and preview_resource_data, since it explicitly frames itself as the combined shortcut of those operations.

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 a clear when-to-use (one-step shortcut) and an explicit when-not-to-use condition: 'Use the individual tools when the top hit isn't the right one.' It stops short of naming which sibling tools to fall back on, so the agent must infer the alternatives from the tool list.

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

list_aip_aerodromosListar aeródromos con ficha AIP publicadaA
Read-only

ICAO codes and names of aerodromes/helipads with a published AIP AD 2 page (DGAC eAIP). Next: get_aip_aerodromo.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds one genuinely useful behavioral constraint — results are limited to aerodromes with a published AIP AD 2 page — but says nothing about result size, pagination, or completeness of the listing.

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?

Two short sentences with zero filler: the scope/filter constraint is front-loaded and the follow-up tool is appended as a route hint. Every clause earns its place.

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 one-parameter, no-output-schema list tool, the description names the returned fields and the inclusion filter, which is most of what an agent needs. A brief note on volume/ordering would close the remaining gap.

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?

Only one optional parameter (format, text/json) and schema description coverage is 100%, so the schema fully documents it. The description adds no format or output-shape detail beyond the schema, which is the expected baseline for a single well-described param.

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 the specific resource (aerodromes/helipads with a published AIP AD 2 page in the DGAC eAIP) and the exact payload returned (ICAO codes and names). It also names the sibling whose scope it differs from, so an agent can separate it from get_aip_aerodromo 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?

The trailing 'Next: get_aip_aerodromo' establishes the intended two-step flow (list here, then fetch details), which is clear context for when to use it. It stops short of explicit exclusions or stating when NOT to call it, so it falls just short of a 5.

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

list_archivo_seccionesListar secciones de un archivo institucionalA
Read-only

List the sections of one institution's document archive (ARCSA, Superbancos, SEPS, INEVAL, SGR, Educación Superior, SIPA, Petroecuador, Energy Ministry, CNE, BVG, BVQ). Next: get_archivo_seccion(fuente, seccion).

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
fuenteYesOne of arcsa, superbancos, seps, ineval, sgr, senescyt, sipa, petroecuador, energia, cne, bvg, bvq.

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=true, so the safety profile is covered. The description adds the enumeration of valid sources and the downstream call, but says nothing about result ordering, size, or whether sections are stable identifiers.

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?

Two tight sentences: the purpose first, the next-step routing second. No padding, and the actionable 'Next:' directive is front-loaded in the second clause.

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 simple read-only two-parameter list tool with full schema coverage and annotations, the description covers purpose, valid inputs, and the follow-up call. What's missing is result-shape detail (count/format specifics), but that is minor for such a simple 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 coverage is 100% and both parameters (fuente enum, format enum) are fully described in the schema. The description's source list mirrors the fuente enum and adds no new syntax or semantics beyond the schema.

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 (list) and resource (sections of one institution's document archive), and enumerates the valid instituciones (ARCSA, Superbancos, etc.). Clearly distinguishable from the sibling get_archivo_seccion, which fetches a single section.

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?

Explicitly names the natural next step: get_archivo_seccion(fuente, seccion). This defines the two-step workflow, though it doesn't name when to skip this and call get_archivo_seccion directly if you already know the section.

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

list_categoriesListar categorías temáticasA
Read-only

Thematic categories of a CKAN portal with dataset counts; pass a name as search_datasets' category.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
sourceNoCKAN portal; nacional (default), cuenca, latacunga or iadb.nacional

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnly=true, destructive=false and openWorld=true, so the safety profile is covered. The description adds that results carry dataset counts and that names feed search_datasets, but says nothing about portal scope behavior, caching, or result completeness across the four sources.

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?

A single dense sentence: what the tool returns first, then how to use the output. No filler, no repetition of the title.

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?

No output schema exists, so the description usefully discloses the return shape (categories plus dataset counts), which is the key missing piece. What remains thin is the multi-portal 'source' semantics and any sibling differentiation, but the core need is met for a zero-required-parameter list 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 coverage is 100% and both parameters are fully enumerated, so the schema carries the load. The description adds no meaning about 'source' (which portal variant) or 'format' beyond what the schema already states, making baseline 3 appropriate.

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

Purpose4/5

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

States the resource precisely — thematic categories of a CKAN portal, with dataset counts — so an agent knows it is an enumeration tool. The verb 'list' is only implied via the name, and it does not distinguish itself from the adjacent get_category_info sibling, which keeps it out of 5 territory.

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

Usage Guidelines3/5

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

It gives a downstream workflow hint ('pass a name as search_datasets' category'), which is genuinely useful routing information. However, it never states when to call this versus get_category_info or list_catalogo, nor any prerequisites, so usage is only implied.

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

list_dataset_resourcesListar los recursos de un datasetA
Read-only

Files (resources) in a CKAN dataset with format, size, URL and dates, flagging name groups that look like periodic series. Next: preview_resource_data or query_resource_data.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
sourceNoCKAN portal; nacional (default), cuenca, latacunga or iadb.nacional
dataset_idYesThe dataset ID or slug

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds genuinely useful behavior beyond that: the shape of the returned listing (format, size, URL, dates) and the fact that periodic-series name groups are flagged, which an agent could not infer from schema or annotations. Pagination/limits for large datasets remain unstated.

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?

Two short sentences with zero filler: the listing scope is front-loaded and the follow-up routing is compressed into a single clause. Every phrase carries information.

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?

There is no output schema, and the description compensates by naming the returned fields and the series-flagging behavior. Minor gaps remain: what a 'periodic series' flag actually looks like in the text vs json output, and whether results are capped or paginated for datasets with many resources.

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%, with both enums (format, source) and dataset_id fully documented in the schema, so the baseline is 3. The description adds nothing about the 'source' portal switch or the text-vs-json output choice, so it does not exceed the baseline.

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 ('Files (resources) in a CKAN dataset') and even enumerates the fields returned (format, size, URL, dates) plus a distinctive derived behavior (flagging name groups that look like periodic series). An agent can distinguish this from get_dataset_info (metadata) and get_resource_info (single resource) without opening a 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?

The trailing 'Next: preview_resource_data or query_resource_data' explicitly routes the agent to the follow-up tool once a resource is identified, which is real selection guidance. It stops short of stating when NOT to use this tool (e.g., use get_dataset_info for dataset-level metadata, or detect_series_pattern for the series analysis itself), so no exclusions are given.

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

list_institucionesListar instituciones públicas de gob.ecA
Read-only

List or search public institutions registered on gob.ec, with their IDs.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (1-based, default: 1, only used without query)
queryNoOptional search term (e.g. "SRI", "salud", "rentas")
formatNotext summary (default) or json structured result.text

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety and openness profile is covered. The description adds only the fact that IDs are returned, which is genuinely useful for chaining, but it says nothing about pagination limits, result caps, or the difference between the text and json formats.

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?

A single front-loaded sentence with no filler; the core resource and the returned identifier are stated immediately. It is efficient, though arguably too sparse to guide invocation on its own.

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 three-parameter, all-optional lookup with no output schema, the combination of the description, the fully documented schema, and clear read-only annotations gives the agent enough to call it correctly. The missing piece is pagination/result-size expectations for the list mode, which is a modest gap.

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% and each parameter is documented in the schema itself, including the page/query interaction and the format enum. The description adds no extra semantics, so the baseline 3 for a fully documented schema is correct.

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

Purpose4/5

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

States a specific verb pair (list/search) applied to a clearly bounded resource (public institutions registered on gob.ec) and notes the payload includes IDs. It does not name the sibling get_institucion_info, so the agent must infer that this is the discovery step preceding it.

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

Usage Guidelines3/5

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

"List or search" implies two modes (browse vs. query), and the schema backs that with 'only used without query', but the description never states when to prefer one mode or when to move on to get_institucion_info after obtaining an ID. Usage is implied rather than prescribed.

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

list_sat_tsunamiListar estaciones del SAT de tsunamiA
Read-only

SGR tsunami early-warning (SAT) stations with codes and coordinates: a static station list, not alerts. For recent seismic events use search_sismos.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax stations to include in the response (default 30)
formatNotext summary (default) or json structured result.text

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and destructiveHint=false, so safety is covered. The description adds meaningful behavioral context beyond that: it is a static list, not an alert feed, and it returns codes and coordinates. It does not cover pagination or rate limits, but the added distinction is valuable.

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?

Two short sentences with zero waste. The core purpose and scope are front-loaded, and the sibling alternative follows naturally.

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?

For a simple static list with a fully documented two-parameter schema and no output schema, the description is complete enough: it states what the tool returns (codes and coordinates), what it is not (alerts), and when to use a sibling instead.

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 coverage is 100% and both parameters (limit, format) have complete descriptions, so the schema already carries parameter meaning. The description does not add syntax or format details for limit or format, making the baseline 3 appropriate.

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?

The description states a specific resource (SGR tsunami early-warning SAT stations), its key output fields (codes and coordinates), and explicitly distinguishes itself from alerts. The sibling differentiation is clear: 'For recent seismic events use search_sismos.'

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

Usage Guidelines5/5

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

It provides explicit when-not guidance ('not alerts') and names the alternative for a different need ('For recent seismic events use search_sismos'). The scope of this tool, a static station list, is stated directly.

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

list_zip_contentsListar el contenido de un archivo ZIPA
Read-only

List a remote ZIP's members (name, size) via HTTP Range requests, without downloading it; works for archives far beyond 5 MB. No ZIP64.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesDirect URL to a .zip file (from another tool's result, e.g. get_inec_publicacion_archivos, search_archivos(fuente='censo')).
limitNoMax members returned (default 200, max 1000).
formatNotext summary (default) or json structured result.text
offsetNoPagination offset over the member list.

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly/openWorld/non-destructive, but the description adds real behavioral context: it works over HTTP Range requests without downloading the archive, handles archives well beyond 5 MB, and explicitly does not support ZIP64. That limitation disclosure is exactly the kind of trait annotations cannot express.

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?

A single front-loaded sentence delivering mechanism, return shape, and the size/ZIP64 caveats with zero filler. Nothing to trim.

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 4-param read-only tool with no output schema, the description covers the operation, the return fields, and the key scale/ZIP64 constraints. Pagination behavior (limit/offset) is only covered by the schema, which is acceptable but leaves a small gap.

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% and all four parameters are documented there, including the URL provenance hint. The description adds no parameter-level meaning beyond what the schema already carries, so the baseline 3 applies.

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 (list), resource (remote ZIP members), and even the mechanism (HTTP Range requests) plus the returned fields (name, size). No sibling tool lists ZIP contents, so it is trivially distinguishable from the rest of the catalog.

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

Usage Guidelines3/5

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

The description implies usage context ('without downloading it', 'works for archives far beyond 5 MB') which helps an agent decide to call it for large remote archives, but it never states when not to use it or names an alternative (e.g. download_resource). Usage is inferable, not explicit.

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

lookup_ubicacionBuscar división político-administrativa del EcuadorA
Read-only

Look up Ecuador's provinces, cantons and parroquias (rural and urban) with INEC codes, region and population. For parroquias, filter by canton and/or provincia.

ParametersJSON Schema
NameRequiredDescriptionDefault
nivelNoauto | provincia | canton | parroquiaauto
queryNoName or code (e.g. "Pichincha", "Cuenca", "Tumbaco", "170150")
cantonNoOptional canton filter (useful for parroquias)
formatNotext summary (default) or json structured result.text
regionNoOptional natural region for provinces/cantons
provinciaNoOptional province filter

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. Description adds that INEC codes, region, and population are returned and that parroquias can be filtered, but does not mention pagination, limits, or exact return shape.

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?

Two tight sentences: first states the resource and fields, second states the filter rule. No redundancy or 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?

Given six optional params, read-only annotations, and no output schema, the description is sufficient to call correctly. It could say more about default 'auto' behavior or text vs json, but those are already in the schema.

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 coverage is 100% and every parameter is described there, so the schema carries the detail. The description only reinforces the canton/provincia filters for parroquias; baseline 3 is appropriate.

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 (look up) and resource (Ecuador's provinces, cantons, parroquias, INEC codes, region, population). Clearly distinguishable from tax/company/dataset siblings; no other sibling handles political-administrative divisions.

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?

Explicitly says 'For parroquias, filter by canton and/or provincia', giving condition-level guidance. No when-not-use or named alternative, but the niche is clear enough that no other tool competes.

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

preview_resource_dataPrevisualizar los datos de un recursoA
Read-only

First rows of a CKAN resource as a table: CSV/TSV, JSON/GeoJSON, XLS/XLSX/XLSB, ODS, and ZIP/tar.gz wrapping a CSV. Max 5 MB; for DataStore resources prefer query_resource_data.

ParametersJSON Schema
NameRequiredDescriptionDefault
rowsNoNumber of data rows to preview (default: 20, max: 100)
formatNotext summary (default) or json structured result.text
sourceNoCKAN portal; nacional (default), cuenca, latacunga or iadb.nacional
resource_idYesThe resource UUID (get it from list_dataset_resources)

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=true, so safety is covered. The description adds real behavior beyond them: the 5 MB size ceiling, the accepted file formats, and the fact that ZIP/tar.gz archives containing a CSV are unwrapped and previewed.

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?

Two sentences, zero filler. The capability and format list come first, with the limit and routing hint compressed into the trailing clause.

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?

With no output schema, the description still conveys the return shape ('as a table', text vs json via schema). It does not mention pagination, error behavior for oversized files, or which portal index to consult, but the essentials for a correct call are present.

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 rows/format/source/resource_id are all documented in the schema (defaults, max 100, enums). The description adds no per-parameter syntax or format detail beyond the 5 MB cap, so the baseline 3 applies.

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 (preview) plus resource (CKAN resource) and even the shape of the result ('as a table'). The supported format list and the explicit hand-off to query_resource_data for DataStore resources separate it from siblings like download_resource and query_resource_data.

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?

Names a concrete alternative and the condition selecting it: 'for DataStore resources prefer query_resource_data'. It does not state when to prefer download_resource or list_dataset_resources instead, so the routing guidance is clear but not exhaustive.

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

query_resource_dataConsultar los datos de un recurso (DataStore)A
Read-only

Query a tabular CKAN resource through the DataStore without downloading it: full-text query, exact filters (filters_json), sort and pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
rowsNoNumber of records to return (default 20, max 100)
sortNoOptional sort expression, e.g. "anio desc"
queryNoOptional full-text search across datastore fields
formatNotext summary (default) or json structured result.text
offsetNoPagination offset (default 0)
sourceNoCKAN portal; nacional (default), cuenca, latacunga or iadb.nacional
resource_idYesResource UUID (from list_dataset_resources)
filters_jsonNoOptional JSON object of exact field filters, e.g. '{"provincia":"Pichincha"}'

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, so the safety profile is covered structurally. The description adds that the operation runs through the DataStore server-side (no file download), which is useful behavioral context, but it omits rate limits, auth requirements, and result-size behavior beyond what the schema's rows/filters_json say.

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?

A single tightly-packed sentence that front-loads the core action and scope, then lists the key capabilities. Nothing is wasted and no filler is present.

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 read-only query tool with 8 well-documented parameters, one required field, and annotations covering the safety profile, the description gives an agent enough to select and call it. The return shape is not described, but the format enum (text/json) in the schema partly mitigates that.

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 parameter meaning is already fully documented in the schema. The description names the same capabilities (full-text query, filters_json, sort, pagination) without adding syntax, format, or edge-case detail beyond the schema, so the baseline 3 applies.

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

Purpose4/5

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

States a specific verb (Query) and resource (tabular CKAN resource through the DataStore), and the phrase 'without downloading it' implicitly carves it out from siblings like download_resource and preview_resource_data. No sibling is named explicitly, but the resource and scope are unambiguous.

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

Usage Guidelines3/5

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

The phrase 'without downloading it' implies the tool is for inspecting/filtering data rather than retrieving the file, which suggests when to prefer it over download_resource. However, there is no explicit when-to-use/when-not guidance or direct routing to alternatives such as preview_resource_data or list_dataset_resources.

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

query_sut_indicadorConsultar datos de un indicador del SUT o la JudicaturaA
Read-only

Live query of one SUT or Consejo de la Judicatura dashboard's data model (fuente): choose campos, optional equality filtros (plain columns only) and a row limite. Take the indicador from list_catalogo(fuente) and its valid campos from get_sut_indicador_schema.

ParametersJSON Schema
NameRequiredDescriptionDefault
camposYesField labels exactly as returned by get_sut_indicador_schema.
formatNotext summary (default) or json structured result.text
fuenteNosut (default) | judicaturasut
limiteNoRow cap applied server-side by the query itself (clamped to 20000; the result carries truncado=true when the cap was reached).
filtrosNoOptional {campo: valor} equality filters, plain columns only.
indicadorYesA key from list_catalogo(fuente=<fuente>).

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds meaningful context with 'Live query' (freshness) and the plain-columns filter restriction, but defers the row cap and truncado=true flag entirely to the schema, so it does not go far beyond the structured fields.

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?

Two sentences, front-loaded with the core action and then the input-sourcing recipe. No filler, and the most decision-relevant information (what it queries, where inputs come from) leads.

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?

With no output schema, the description should hint at returns; it notes the row limite cap indirectly and the format param (text vs json) is documented, but it does not describe the result shape or the truncado flag. The input workflow is complete, so only the return-side detail is thin.

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 every parameter is already documented, including the value sourcing for indicador and campos. The description restates this workflow guidance rather than adding syntax or format detail the schema lacks; the 100%-coverage baseline of 3 applies.

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 (live query) and resource (one SUT or Consejo de la Judicatura dashboard's data model), scoped to a single indicador. It distinguishes itself from siblings by naming list_catalogo and get_sut_indicador_schema as the sources for its inputs, so an agent can place it in the toolchain.

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 a clear workflow: pull the indicador from list_catalogo(fuente) and valid campos from get_sut_indicador_schema, plus the constraint that filtros work on plain columns only. It stops short of explicit when-not-to-use or an alternative tool for cases outside this data model.

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

read_pdfExtraer texto de un PDFA
Read-only

Extract text from a PDF at a direct URL (max 5 MB, 20 pages per call; pages selects a range). No OCR: scanned PDFs come back empty.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesDirect URL to the PDF file
pagesNoPage range, 1-indexed (e.g. "3", "1-5", "1,4,9").
formatNotext summary (default) or json structured result.text

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so safety is covered. The description adds real context beyond that: a 5 MB / 20-page ceiling and, critically, that there is no OCR so scanned PDFs return empty rather than erroring. This is exactly the kind of silent-failure disclosure an agent needs.

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?

Two short sentences, fully front-loaded: the action first, then constraints and the failure mode. Not a wasted word; the parenthetical carries real information.

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?

With no output schema, the description still conveys the return shape indirectly (text summary vs json are in the format enum; "come back empty" implies the text result). Combined with 100% schema coverage, an agent has what it needs to call this correctly, though a hint about the json result structure would complete it.

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% and the schema already documents url, the 1-indexed pages range syntax, and the text/json enum. The description restates only that pages selects a range, adding no syntax or format detail beyond the schema. Baseline 3 is appropriate.

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: "Extract text from a PDF at a direct URL." No sibling tool does PDF text extraction (the rest are search/get/list tools over Ecuadorian datasets), so it is trivially distinguishable. The scope qualifiers (URL, 5 MB, 20 pages) sharpen rather than blur the purpose.

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

Usage Guidelines3/5

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

The description implies usage conditions by requiring a "direct URL" and capping size/pages, which tells the agent when the call will succeed. However, it never states when to prefer this over alternatives (e.g. preview_resource_data, list_zip_contents for extracting content from other file types). Usage is inferable but not explicit.

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

search_andaBuscar encuestas y censos en ANDAA
Read-only

Search INEC's ANDA catalog of 437+ surveys and censuses; the broadest INEC index. Entries without microdata point to search_inec_estadisticas. Next: get_anda_survey_info.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage of results, 1-based (default: 1); see total/total_pages
limitNoResults per page (default: 10, max: 50)
queryNoSearch keywords (e.g. "empleo", "REEM", "censo agropecuario")
formatNotext summary (default) or json structured result.text

TDQS

A4/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so safety and openness are covered. The description adds catalog size and the fact that some entries lack microdata, but says nothing about pagination limits, result shape, or rate behavior; with annotations doing the heavy lifting, this is a modest but real addition.

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 dense clauses with zero filler: purpose and scope first, then the disambiguating alternative, then the follow-up tool. Front-loaded and appropriately sized for a list/search tool.

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?

With four optional parameters, full schema coverage and no output schema, the definition covers what an agent needs to call it and where to go next. It stops short of five only because nothing describes what a result entry looks like or how total/total_pages behave in practice.

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 page, limit, query and format are all documented with defaults, ranges and an example. The description adds no semantics beyond that; a baseline 3 is appropriate when the schema fully carries the parameter burden.

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?

Specific verb (Search) + named resource (INEC's ANDA catalog of 437+ surveys and censuses) plus a scope claim ('the broadest INEC index'). It is clearly distinguishable from the sibling search_inec_estadisticas, which it names, so an agent need not open either schema to tell them apart.

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?

Explicitly routes the agent onward ('Next: get_anda_survey_info') and gives a disambiguation rule ('Entries without microdata point to search_inec_estadisticas'). However, the rule applies at the result-entry level rather than stating upfront when to pick this search over the other INEC search tools, so no true when-not-to-use guidance is given.

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

search_archivosBuscar archivos publicados por una instituciónA
Read-only

File links from one institution's catalog, filtered by text: SRI, MEF, SENAE, Census 2022, MINEDEC, SENESCYT, MSP, CNIG, Trabajo, ARCOTEL and BCE (remesas, comex prices, latest publications). Links, not contents.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax files returned (1-100, default 50).
queryNoFree text matched (accent-insensitive) against each file's title and source-specific fields.
formatNotext summary (default) or json structured result.text
fuenteYesCatalog to search; see the list above.
offsetNoPagination offset over the matched files.
formatoNoOptional exact file format (PDF, XLSX, CSV, ZIP...); not for sri_datasets, sri_recaudacion or censo.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, openWorld, non-destructive), and the description adds a genuinely useful behavioral fact beyond them: it returns links, not file contents. It also signals that recency varies by source ('latest publications'). It does not describe pagination behavior or result volumes.

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?

Two sentences, scope front-loaded ('File links from one institution's catalog, filtered by text') with the clarifying 'Links, not contents' tacked on at the end. The institution list is long but carries source-enumeration value; little waste overall.

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 6-parameter, read-only search tool with full schema coverage, an annotations safety profile and no output schema, the description covers purpose, search scope, sources and output type. Minor gaps in how text matching behaves and pagination limits remain.

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 schema already documents all six parameters and the enum values. The description adds only human-readable groupings of the fuente enum (SRI, MEF, SENAE, BCE sub-catalogs), which is a marginal semantic gain over structured data.

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

Purpose4/5

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

States a specific verb+resource — retrieving file links from one institution's catalog, filtered by text — and enumerates the source institutions. The clause 'Links, not contents' distinguishes it from content-fetching siblings like read_pdf or download_resource, though it never names a sibling outright.

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

Usage Guidelines3/5

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

Usage is implied: query a single institution's catalog by text. There is no explicit statement of when to prefer this over search_datasets, list_archivo_secciones, or the many other search_* siblings, and no exclusions or prerequisites are given.

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

search_auditoresBuscar auditores externos autorizadosA
Read-only

Search Supercías' registry of 1,447 authorized external auditors by name or ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results (default 20, max 100)
queryNoFree text matched against auditor name or identificación (RUC/cédula), accent-insensitive
formatNotext summary (default) or json structured result.text
offsetNoPagination offset over the matched set
provinciaNoOptional province filter, e.g. "PICHINCHA" (substring match)

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare read-only, non-destructive, open-world behavior, so the bar is lower. The description adds that the registry is a fixed count (1,447) and search is by name or ID, but says nothing about match behavior, pagination, or rate limits beyond what the schema covers.

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?

A single front-loaded sentence of about 15 words with no filler. Every clause earns its place by naming the source, scope, and lookup keys.

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 read-only search tool with full schema coverage and no output schema, the description covers purpose and scope adequately. Minor gaps remain around matching behavior and result format, but the schema carries most of the load.

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 schema already documents all five parameters including accent-insensitive matching and the province substring filter. The description repeats only the name/ID matching idea already in the schema, adding no new parameter semantics. Baseline 3 applies.

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 (Search), resource (Supercías' registry of authorized external auditors), and scope (by name or ID), with the registry size as context. It is clearly distinguishable from siblings like get_auditor_info (detail lookup) and search_companias (different registry).

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

Usage Guidelines3/5

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

The 'by name or ID' phrasing implies a lookup use case, but there is no explicit when-to-use vs get_auditor_info or when-not-to-use guidance. Usage is only implied.

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

search_bce_calendarioBuscar el calendario de publicaciones del BCEA
Read-only

BCE's forward-looking statistical release calendar: dates, category, periodicity and reference period. solo_proximas=true keeps upcoming releases. Says when data will be published, not the data itself; for values use get_indicador_bce.

ParametersJSON Schema
NameRequiredDescriptionDefault
desdeNoRestrict to release date >= this date (YYYY-MM-DD).
hastaNoRestrict to release date <= this date (YYYY-MM-DD).
limitNoMax results (1-200, default 50).
queryNoFree text matched against the publication name or its observations note (accent-insensitive).
formatNotext summary (default) or json structured result.text
offsetNoPagination offset over the matched set.
categoriaNoExact category filter (accent-insensitive), e.g. "cuentas nacionales", "balanza de pagos y comercio exterior".
periodicidadNoExact periodicity filter, e.g. "Mensual", "Anual", "Trimestral", "Semanal".
solo_proximasNoIf true, only releases scheduled today or later.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, destructiveHint=false, so safety is covered. The description adds useful behavioral context about the nature of the result set (a schedule of future releases, not observations) and the solo_proximas filter's effect.

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 compact clauses, front-loaded with purpose and followed by the filter hint and the disambiguation pointer. No filler sentences.

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 9-parameter, no-required-args search tool with no output schema, the description adequately conveys what comes back (publication dates plus metadata) and how to disambiguate from the value-fetching sibling. Minor gap: it doesn't describe pagination behavior, though offset/limit are schema-documented.

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 all nine parameters are already documented (date bounds, limit range, offset, categoria/periodicidad examples, format enum). The description only restates solo_proximas, adding no meaning beyond the schema; baseline 3 applies.

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+resource ('BCE's forward-looking statistical release calendar') and enumerates the returned fields (dates, category, periodicity, reference period). It explicitly separates itself from the sibling get_indicador_bce, which returns values rather than publication dates.

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

Usage Guidelines5/5

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

Gives an explicit routing rule: this tool 'says when data will be published, not the data itself; for values use get_indicador_bce.' An agent can pick between the two without opening either schema.

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

search_bce_iemBuscar tablas del boletín IEM del BCEA
Read-only

Search the Excel tables of BCE's monthly IEM bulletin (trade by country, debt, fiscal, oil, GDP detail). historico=true searches past bulletins. Next: get_bce_iem_table.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax tables returned (default 20).
queryNoFree text matched against table titles and sections (accent-insensitive).
formatNotext summary (default) or json structured result.text
offsetNoPagination offset over the matched set.
historicoNoAlso search past monthly bulletins, not just the latest.
desde_anioNoEarliest bulletin year to search (implies historico).
hasta_anioNoLatest bulletin year to search (implies historico).
hash_archivosNoDownload each discovered XLSX and report its SHA-256 (operator audit; slow).
guardar_catalogoNoSave the full assembled catalog under IEM_CATALOG_DIR.
max_hash_archivosNoCap on files hashed when hash_archivos is set.

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, and destructiveHint=false, covering the safety profile. The description adds the historico=true behavior for past bulletins and the workflow handoff, but does not mention rate limits, auth needs, or the slow nature of hash_archivos (which is only in the schema).

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 sentences with zero waste, front-loading the core purpose before the historico flag and the next-step handoff. Every sentence earns its place by adding scope or workflow guidance.

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?

Given 10 optional parameters, full schema coverage, and no output schema, the description covers the core purpose, key behavioral flag (historico), and the next tool. It omits what the search returns (e.g., table identifiers or metadata) and pagination/format behavior, but those gaps are minor and largely covered by the schema.

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 all 10 parameters are already documented in the input schema. The description's note that 'historico=true searches past bulletins' largely duplicates the schema's own description and adds no new syntax or meaning; the baseline 3 is appropriate.

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 ('Search') and resource ('Excel tables of BCE's monthly IEM bulletin') with scope categories (trade by country, debt, fiscal, oil, GDP detail). The explicit 'Next: get_bce_iem_table' distinguishes it from the retrieval sibling, so an agent can tell them apart 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?

Provides clear usage context: use for searching IEM tables, with historico=true for past bulletins, and the next step is get_bce_iem_table. No explicit exclusions or alternatives (e.g., search_bce_paginas) are named, but the context is sufficient to infer when to use it.

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

search_bce_paginasBuscar páginas de publicaciones del BCEA
Read-only

BCE publication pages with file archives: indices (sector bulletins, price and confidence indices, FX, balance of payments; some back to 2004) or cuentas_nacionales (annual, quarterly, regional accounts, input-output, IMAEC). Next: get_bce_pagina_archivos(pagina_id).

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoFree text matched (accent-insensitive) against the page's title, category or id.
formatNotext summary (default) or json structured result.text
catalogoYesindices or cuentas_nacionales.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare the safe read-only, open-world, non-destructive profile, so the description only needs to add context. It discloses the resource scope (archives dating to 2004) and the follow-up call, but says nothing about return format, pagination, or result size, and no output schema exists to cover that gap.

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?

Two tight sentences with the resource named first and the workflow directive last; the parenthetical enumeration is dense but each item is informative. No filler or restatement of the title.

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

Completeness3/5

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

Given no output schema, the description should ideally indicate what a result looks like, but it only states the pages contain file archives. It does cover resource scope and the next call, which is enough to decide to use it, but return-shape details are missing.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3, but the description adds real meaning to the enum values: "indices" is unpacked as sector bulletins, price/confidence indices, FX and balance of payments (some back to 2004), and "cuentas_nacionales" as annual/quarterly/regional accounts, input-output and IMAEC. That enriches the enum semantics beyond the schema's bare labels.

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

Purpose4/5

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

States a specific verb (search) and resource (BCE publication pages) and enumerates the two catalog groupings it covers, so an agent knows it targets archival publication pages rather than indicators or series. It does not directly differentiate itself from other BCE search siblings like search_bce_indicadores or search_bce_iem.

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?

Provides an explicit next-step routing ("Next: get_bce_pagina_archivos(pagina_id)"), which tells the agent how this tool fits into a two-call workflow. It lacks explicit when-not-to-use guidance or comparison against the other BCE search tools.

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

search_biinec_extrasBuscar registros exclusivos de BIINECA
Read-only

Small curated list of INEC BIINEC registries found nowhere else (e.g. environmental modules). A last resort; not a live BIINEC search.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoFree text matched against the registry's name/description (accent-insensitive).
formatNotext summary (default) or json structured result.text

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so safety is covered. The description adds a genuine behavioral trait beyond them: the result set is small, curated, and static rather than a live query, which tells the agent not to expect comprehensive or fresh coverage. Return format and pagination are not described, but that is a minor gap here.

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?

Two compact sentences with no filler. The scope constraint (curated, unique-only) is front-loaded and the disambiguation ('not a live BIINEC search') follows immediately, making it easy to scan and act on.

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 2-parameter, no-required-args, read-only search tool with no output schema, the description covers scope, usage posture, and data nature adequately. It lacks any indication of result size limits or how matches are ranked/returned, which is a small remaining gap.

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%: both 'query' (accent-insensitive free text matched against name/description) and 'format' (text vs json) are fully documented in the schema. The description adds no additional parameter meaning, so the baseline of 3 applies.

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

Purpose4/5

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

The description states a specific verb (search) and a precisely scoped resource: a small curated list of INEC BIINEC registries 'found nowhere else (e.g. environmental modules).' It contrasts itself against a live BIINEC search, though it does not name a specific sibling tool, so an agent gets the scope but must infer the exact alternative.

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?

'A last resort; not a live BIINEC search' gives clear when-to-use context (only after other sources fail) and an implicit exclusion (do not use for general BIINEC lookups). It stops short of naming the tool to use instead, so routing is implied rather than explicit.

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

search_capas_geoBuscar capas de un geoportal (INAMHI o MAG)A
Read-only

Search layers of a GeoServer geoportal: inamhi (rainfall normals and anomalies, WRF forecast grids, watersheds) or mag (agro zoning, land cover, agricultural censuses, rural cadastre, agroclimatic risk). solo_wfs=true keeps layers with attribute data.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoFree text matched (accent-insensitive) against the layer's id, name, title or abstract.
formatNotext summary (default) or json structured result.text
fuenteYesinamhi or mag.
solo_wfsNoOnly return layers with WFS (attribute data).
categoriaNoOnly for fuente="mag": one of its 8 categories.

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safe/live-remote nature is covered structurally. The description adds only one behavioral fact — that solo_wfs=true keeps layers with attribute data — and says nothing about pagination, result caps or rate limits against the live GeoServer.

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?

Two sentences, no filler, with the resource and both source vocabularies front-loaded before the filtering behavior. Every clause carries information an agent can act on.

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?

With five parameters, full schema coverage, and annotations carrying the safety profile, the description covers selection adequately. The notable gap is the absence of an output schema and any hint of what a match looks like (fields returned), plus no pointer to the sibling that retrieves actual layer data.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3; the description earns above that by enriching the fuente enum with concrete content taxonomies for each portal, which the schema only labels 'inamhi or mag'. It restates solo_wfs, which the schema already explains.

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 (search) and resource (layers of a GeoServer geoportal), and enumerates what each source contains (rainfall normals, WRF grids, watersheds for inamhi; agro zoning, land cover, cadastre for mag). This is enough to distinguish it from data-retrieval siblings like get_capa_geo_datos or generic searchers.

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

Usage Guidelines3/5

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

Usage is implied by 'search layers' and by the source enumeration, but the description never says when to reach for this versus get_capa_geo_datos (fetch a layer's data) or other sibling searchers. No exclusions or prerequisites are given.

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

search_cepalstat_indicadoresBuscar indicadores en CEPALSTATA
Read-only

Search CEPALSTAT's 2,059 regional indicators (demographic, economic, environmental, SDG). Next: get_cepalstat_indicador for Ecuador's values.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNo"es" (default) or "en"es
queryNoFree text matched (accent-insensitive) against the indicator's name or its thematic-area breadcrumb, e.g. "poblacion", "pobreza", "comercio exterior".
formatNotext summary (default) or json structured result.text

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so the safety profile is covered. The description adds the corpus size (2,059 indicators) and the workflow handoff, but says nothing about result limits, pagination, or how an empty query behaves despite query defaulting to ''.

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?

Two sentences, zero filler, with the resource and corpus size front-loaded before the routing hint. Nothing could be cut without losing information.

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?

For a read-only, three-optional-parameter search tool with a fully documented schema and no output schema to explain, the definition covers the essentials: what is searched, how broad the corpus is, and which tool to call next with the results.

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% and each parameter (lang, query, format) carries its own description including an example and accent-insensitivity note. The description adds no parameter meaning beyond the schema, so the baseline of 3 applies.

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 (search) and resource (CEPALSTAT's 2,059 regional indicators) with the topical scope spelled out (demographic, economic, environmental, SDG). It also names the sibling get_cepalstat_indicador as the follow-up, so an agent can distinguish it from the value-fetching tool 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 Guidelines3/5

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

The only guidance is the terse 'Next: get_cepalstat_indicador for Ecuador's values', which implies a search-then-fetch workflow but never states when to prefer this tool over the many other search_* statistics siblings (search_inec_estadisticas, search_indicadores_bce, query_sut_indicador). Usage is inferable rather than explicit.

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

search_companiasBuscar compañías en el registro de SupercíasA
Read-only

Search Supercías' registry of 226k+ companies by name or RUC: legal status, incorporation, representative, capital, CIIU, address. The first call may ask you to retry in 1-2 min while the export downloads.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results (default 20, max 100)
queryNoFree text matched against company name or RUC (accent-insensitive)
formatNotext summary (default) or json structured result.text
offsetNoPagination offset over the matched set
provinciaNoOptional province filter, e.g. "PICHINCHA" (substring match)
situacion_legalNoOptional legal status filter, e.g. "ACTIVA", "DISOLUCIÓN"

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds genuinely non-obvious behavioral context: the first call may ask the agent to retry in 1-2 minutes while the export downloads. That is exactly the kind of trait the schema cannot express.

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?

Two sentences, front-loaded with purpose then the operational caveat, with no filler. Efficient and appropriately sized for the tool's complexity.

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?

Covers purpose, matchable keys, returned fields, and the first-call latency behavior, with annotations supplying the safety profile and the schema covering all parameters; no output schema means the field list in the description does useful work. Slightly short on pagination/filter interaction, but otherwise complete.

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 limit, query, format, offset, provincia and situacion_legal are already fully documented. The description only restates the name/RUC matching and legal-status filter (situacion_legal) without adding syntax, format or value details beyond the schema, so the baseline 3 applies.

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

Purpose4/5

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

States a specific verb (Search) plus the exact resource (Supercías' registry of 226k+ companies) and enumerates the returned fields (legal status, incorporation, representative, capital, CIIU, address). It clearly marks this as a broad lookup, implicitly distinguishable from the detail-oriented sibling get_compania_info, though it never names a sibling explicitly.

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

Usage Guidelines3/5

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

"Search ... by name or RUC" implies the intended usage context, and the retry note hints at first-call behavior. However, it never states when NOT to use this tool or routes the agent to get_compania_info for detail lookups, so guidance remains implied rather than explicit.

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

search_contratosBuscar procesos de contratación pública (SERCOP)B
Read-only

Search SERCOP public procurement (OCDS) by keyword (min 3 characters), year, buyer or supplier.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoResults page (1-based)
yearNoContract year (2015–current).
buyerNoOptional buyer/institution keyword (min 3 chars)
queryYesKeyword (min 3 chars), e.g. "medicinas", "vialidad", "software"
formatNotext summary (default) or json structured result.text
supplierNoOptional supplier keyword (min 3 chars)

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so the safety and scope profile is covered. The description adds the minimum keyword length constraint (min 3 characters), which is useful operational context, but it says nothing about pagination behavior, rate limits, or result shape.

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?

A single front-loaded sentence with no filler; the search facets are listed compactly and the min-length constraint is inline. It is efficiently sized, though very terse for a six-parameter tool.

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

Completeness3/5

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

For a moderately complex search tool with six parameters, the description is minimal but the schema carries full parameter documentation and annotations cover the safety profile. It omits any mention of the page and format parameters or expected result nature, so it is adequate rather than complete.

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 schema already documents all six parameters including defaults, the year range, and the format enum. The description merely restates the same facets (keyword, year, buyer, supplier) without adding format syntax or examples, so baseline 3 is appropriate.

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

Purpose4/5

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

States a specific verb (Search) and resource (SERCOP public procurement, OCDS) plus the facets it searches by, so the agent immediately knows what the tool does. It is clearly distinct from data-lookup siblings like get_contrato_info, though it never explicitly names that sibling as the detail-lookup counterpart.

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

Usage Guidelines2/5

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

The description says what can be searched but never states when to use this tool versus alternatives such as get_contrato_info or search_organizations. There are no exclusions, prerequisites, or routing hints, leaving the agent to infer usage from the name alone.

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

search_cortesBuscar cronogramas de cortes de luzA
Read-only

Scheduled power-cut PDFs of one utility: eeq (Quito, 2023-2024 blackout crises) or centrosur (Azuay, Cañar, Morona Santiago, 2023 on). Next: get_cortes_horarios with a file's archivo.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoFree text matched (accent-insensitive) against the file's period, date, title or URL, e.g. "noviembre", "2024-10".
formatNotext summary (default) or json structured result.text
distribuidoraYeseeq or centrosur.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint and destructiveHint=false, so safety is covered. The description adds genuinely new behavior: results are PDF file listings and the required continuation is passing a file's 'archivo' to get_cortes_horarios. Pagination and rate limits are unstated, keeping it from a 5.

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?

Two tight sentences with zero filler: the resource scope is front-loaded and the follow-up step is appended last. Every clause earns its place.

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?

There is no output schema, but the description conveys the return type (PDFs) and the next action, which is what an agent needs for this search tool. Missing detail on result format or counts keeps it just short of complete.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds real meaning by expanding the bare enum values 'eeq'/'centrosur' with their geography and date ranges (Quito 2023-2024; Azuay, Cañar, Morona Santiago 2023 on), which helps an agent choose the right distribuidora.

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

Purpose4/5

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

The description names a concrete resource (scheduled power-cut PDFs) and scopes it to two specific utilities with geography and time coverage, so an agent knows exactly what corpus is searched. The verb is only implied by the tool name rather than stated outright, which keeps it short of a 5.

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?

It explicitly routes the agent forward: 'Next: get_cortes_horarios with a file's archivo.' That is a clear workflow instruction naming the sibling. It does not state when not to use this tool, but there is no competing cortes-search sibling, so the gap is minor.

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

search_datasetsBuscar datasets en el portal de datos abiertosA
Read-only

Search CKAN open-data datasets (national portal by default; see source). Use sort="recent" without a query to browse new or updated datasets. Next: list_dataset_resources. For trámites, regulations or contracts use search_ecuador.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (1-based, default: 1)
sortNo"relevance" (default, CKAN's own ranking) or "recent" (sort by metadata_modified descending, to discover newly added or freshly refreshed datasets)relevance
queryNoSearch keywords (e.g. "empleo", "salud", "presupuesto", "SRI recaudación").
fieldsNoComma-separated dataset keys to keep in the JSON output (e.g. "name,title,metadata_modified"); applied after compact.
formatNotext summary (default) or json structured result.text
sourceNoCKAN portal; nacional (default), cuenca, latacunga or iadb.nacional
compactNoShrink each dataset in the JSON output to id, name, title, metadata_modified, organization and its resources (id, name, format, size, url).
categoryNoOptional category filter (e.g. "sal" for Salud, "edu" for Educación).
page_sizeNoResults per page (default: 20, max: 100)

TDQS

A4.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds useful context (default portal, browse-without-query behavior) but says nothing about pagination limits beyond the schema, rate limits, or result shape, so it only modestly exceeds the annotations.

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, front-loaded with purpose and followed by the two highest-value usage hints (browse mode and the sibling handoff). No 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 9-parameter, zero-required search tool with no output schema, the description covers purpose, fallback source, browsing mode, follow-up tool and domain routing. It stops short of describing output format behavior (text vs json interplay with compact/fields), but the annotations and schema carry that load.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds real meaning on top: it explains the intent of sort="recent" (browse without a query) and clarifies portal defaulting via "see source", which is behavioral guidance the enum definitions alone do not convey.

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+resource ("Search CKAN open-data datasets") and immediately scopes the default source. It distinguishes itself from siblings by naming search_ecuador for trámites/regulations/contracts, so an agent can route without opening any schema.

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

Usage Guidelines5/5

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

Explicit when-to-use guidance: sort="recent" with no query to browse new/updated datasets, a named next step (list_dataset_resources), and a named alternative domain (search_ecuador). This is exactly the routing detail agents need.

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

search_ecuadorBuscar en todas las fuentes de EcuadorA
Read-only

Unified first-step search across CKAN datasets, organizations, gob.ec trámites and regulations, SERCOP contracts and SGR risk events, a few hits per source. Drill down with the source-specific get_* tools; for CKAN datasets alone use search_datasets.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results per section (default 5, max 10)
queryYesSearch terms in Spanish (e.g. "salud", "RUC", "medicinas")
formatNotext summary (default) or json structured result.text

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false, openWorldHint=true), lowering the bar. The description adds meaningful behavioral context not in annotations: it returns only 'a few hits per source' rather than exhaustive results, which sets correct expectations about output volume. It does not describe ordering or pagination, so it falls just short of a 5.

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?

Two sentences, no filler. The source inventory and the two routing alternatives (get_* drill-down, search_datasets) are front-loaded, making the definition scannable and action-oriented.

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?

For a read-only, first-step discovery search with no output schema and annotations already covering safety, this description is sufficient: it identifies sources, result granularity, and the correct follow-up tools. Nothing an agent needs to invoke it correctly is missing.

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 schema already documents query (Spanish terms), limit (default 5, max 10), and format (text/json). Baseline 3 is correct; the description's 'a few hits per source' loosely matches the limit semantics but adds no new parameter-level detail.

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 a clearly bounded scope: a unified first-step search across named source families (CKAN datasets, organizations, gob.ec trámites/regulations, SERCOP contracts, SGR risk events). It explicitly distinguishes itself from search_datasets and the source-specific get_* tools, so an agent can route without opening another schema.

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

Usage Guidelines5/5

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

Explicit ordering guidance: use this as the first step, drill down with the source-specific get_* tools, and use search_datasets when only CKAN datasets are needed. This is a rare, complete when/when-not/alternative statement.

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

search_eventos_riesgoBuscar eventos de riesgo del SGRA
Read-only

Current and recent SGR (Gestión de Riesgos) risk events from the live COE feed: landslides, floods, structural damage, with location, status and impacts. No history; for past event dossiers use search_sgr_sitreps.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax events to return (default 15, max 100)
queryNoFree text (sector, cause, description keywords)
cantonNoCanton filter (e.g. "Quito")
estadoNoStatus filter (e.g. "Seguimiento", "Cierre")
eventoNoEvent type filter (e.g. "Deslizamiento", "Inundación", "Aluvión")
formatNotext summary (default) or json structured result.text
provinciaNoProvince filter (e.g. "Pichincha")

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, openWorld, non-destructive), so the bar is lower. The description still adds real behavioral context: the data comes from a live COE feed, is current/recent only, and has no history. It stops short of describing pagination or refresh/rate behavior.

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?

Two dense sentences, front-loaded with scope and content, then the disambiguation. No filler; every clause earns its place.

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?

No output schema exists, so the description carries the return-shape burden and does so partially by naming location, status and impacts. Combined with full schema coverage and annotations, it is nearly complete for a filtered-search tool; only deeper result-shape detail is absent.

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 schema already documents all seven filters. The description's mention of event types and location/status/impacts loosely maps to the evento, canton/provincia and estado filters but adds no syntax or format detail beyond the schema. Baseline 3 applies.

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 (search) and resource (SGR/COE risk events) and enumerates the content returned: landslides, floods, structural damage with location, status and impacts. It explicitly distinguishes itself from the sibling search_sgr_sitreps by declaring 'No history'.

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

Usage Guidelines5/5

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

Gives the when ('current and recent ... from the live COE feed') and the when-not plus alternative ('No history; for past event dossiers use search_sgr_sitreps'). The routing decision is fully specified without inference.

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

search_indicadores_bceBuscar el catálogo estadístico del BCEA
Read-only

Search BCEData indicator groups (monetary, fiscal, external, real sector), matching series names too. Not CPI or poverty (INEC). First call after 24h can take 10-15 s. Next: get_indicador_bce.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results (default 20, max 100)
queryNoFree text matched against the group's description, its section/subsection, and its individual series labels (accent-insensitive)
formatNotext summary (default) or json structured result.text
offsetNoPagination offset over the matched set

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly/openWorld/non-destructive, but the description adds a genuinely useful behavioral caveat absent from structured data: cold-start latency of 10-15 s after 24h. This is exactly the kind of operational detail that prevents a timeout-driven retry storm.

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 compact sentences front-loading purpose, then the exclusion, then the latency plus next-step. No filler and no repetition of schema content.

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 four-parameter search with full schema coverage and a safety-covering annotation set, the description supplies the missing pieces an agent needs — domain scope, sibling exclusion, latency, and the follow-up call. Minor gaps (e.g., pagination strategy across offset/limit) are already handled by the schema, so this is nearly complete.

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% — limit, query, format, and offset are each documented in the schema, including the accent-insensitive matching rule. The description reinforces that series names are matched, but adds no syntax or default detail beyond the schema, so baseline 3 applies.

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 ('Search BCEData indicator groups'), scopes the domain (monetary, fiscal, external, real sector) and the matching behavior (series names too). It also explicitly excludes a confusing sibling domain (CPI/poverty = INEC) and names the follow-up tool, so an agent can distinguish it from search_inec_estadisticas and others.

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 an explicit negative boundary ('Not CPI or poverty (INEC)') and a clear next step ('Next: get_indicador_bce'), which routes the agent through a two-call workflow. It stops short of naming when to prefer other BCE siblings (e.g., search_bce_iem, search_bce_paginas), so it is strong but not fully exhaustive.

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

search_inec_estadisticasBuscar temas estadísticos del INECA
Read-only

INEC's ~75 statistical topic pages on ecuadorencifras.gob.ec (IPC, ENEMDU, pobreza, cuentas nacionales...), where published aggregate series live. Next: get_inec_estadistica_files.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results (default 30, max 100)
queryNoFree text matched against the topic name (accent-insensitive), e.g. "precios", "empleo", "pobreza".
formatNotext summary (default) or json structured result.text
offsetNoPagination offset over the matched set

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, openWorldHint=true, destructiveHint=false). The description adds domain context beyond that: the source domain, the approximate page count (~75), and the nature of the content (topic pages hosting aggregate series), which helps the agent understand what it will retrieve.

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?

Two tightly written sentences, zero filler, with the resource and its scope front-loaded before the workflow pointer.

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 paginated search tool with full schema coverage and no output schema, the description is nearly complete: it says what is searched and what the results conceptually are. It stops short of explaining result shape, but annotations and schema carry most of the load.

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 schema already documents limit, query, format, and offset with examples. The description adds no parameter syntax or semantics beyond that, so baseline 3 applies.

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

Purpose4/5

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

States a specific resource — INEC's ~75 statistical topic pages on ecuadorencifras.gob.ec — with concrete topical examples (IPC, ENEMDU, pobreza) and clarifies these are where aggregate series live. It distinguishes the workflow from get_inec_estadistica_files by naming it as the next step, though it doesn't contrast with search_inec_publicaciones or search_biinec_extras.

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

Usage Guidelines3/5

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

"Next: get_inec_estadistica_files" conveys the intended workflow (find a topic, then fetch its files), which implies when to use this vs that tool. However, it gives no explicit when-to-use or when-not-to-use guidance versus the other INEC search siblings, leaving the agent to infer.

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

search_inec_publicacionesBuscar publicaciones de Ecuador en CifrasA
Read-only

Every INEC post on Ecuador en Cifras, newest first; use for the latest release of an operation (topic pages can go stale). Next: get_inec_publicacion_archivos.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results (default 20, max 100).
queryNoFree text matched against title/content (e.g. "ENEMDU anual 2025", "inflación julio", "censo").
formatNotext summary (default) or json structured result.text
offsetNoPagination offset over the matched set.

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so safety is covered. The description adds genuine behavioral value by stating ordering ('newest first') and completeness ('Every INEC post'), plus the downstream tool to call.

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?

Two compact clauses, zero filler, with the ordering constraint front-loaded ahead of the usage hint. Every phrase earns its place.

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 search/list tool with full schema coverage, no output schema, and read-only annotations, the description is nearly complete and points to the follow-up tool. It omits what a 'post' contains or pagination expectations, but those are minor.

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% (limit, query, format, offset all documented), so the schema carries parameter meaning. The description adds no syntax or filtering detail beyond it, making the baseline 3 appropriate.

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

Purpose4/5

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

States a specific verb+resource: lists every INEC post on 'Ecuador en Cifras', ordered newest first. It distinguishes itself from stale topic pages, though it doesn't explicitly contrast with the close sibling search_inec_estadisticas. An agent can still tell what it returns.

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 clear context ('use for the latest release of an operation') and a routing hint ('Next: get_inec_publicacion_archivos'). It lacks explicit when-not-to-use or a named alternative among the many search_* siblings, so it stops short of full routing guidance.

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

search_infomies_bases_mensualesBuscar bases mensuales de infoMIESA
Read-only

infoMIES monthly program databases, serie "anc" (economic inclusion) or "is" (social inclusion). Closed years have one year-end file. .rar files: links only.

ParametersJSON Schema
NameRequiredDescriptionDefault
anioNoSpecific year to fetch, e.g. 2024.
queryNoFree text matched (accent-insensitive) against the file's label, year, or URL, e.g. "julio", "2023".
serieYes"anc" or "is".
formatNotext summary (default) or json structured result.text

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral notes ('closed years have one year-end file', '.rar files: links only'), but does not describe pagination or return format beyond that, so a baseline-plus score is appropriate.

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?

Very short and front-loads the resource, then the series and file behavior. Slightly telegraphic fragments ('.rar files: links only.') but every clause carries domain information with no 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 4-parameter read-only search tool with 100% schema coverage and no output schema, the description supplies the domain context an agent needs (series meaning, file semantics). Only the lack of explicit usage routing to siblings leaves a minor gap.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3, but the description genuinely adds meaning to the required 'serie' enum by expanding 'anc' to economic inclusion and 'is' to social inclusion, which the schema only lists as opaque codes. This is real value beyond the structured field.

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

Purpose4/5

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

States a specific resource (infoMIES monthly program databases) and enumerates the two series, distinguishing content types. It is clearly a search/lookup tool, though it does not explicitly distinguish itself from the sibling search_infomies_boletines_zonales, so no sibling differentiation is present.

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

Usage Guidelines3/5

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

The description explains domain facts (the two series, that closed years have one year-end file, that .rar entries yield links only) but never states when to use this tool versus alternatives or any prerequisites. Usage is only implied through the content description.

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

search_infomies_boletines_zonalesBuscar boletines zonales de infoMIESA
Read-only

infoMIES zonal bulletins: modo="zonal" (per-zone .rar, 2017-2021, needs zona) or "consolidado" (yearly XLSX 2021-2026, still updated). Returns links.

ParametersJSON Schema
NameRequiredDescriptionDefault
anioNoSpecific year to fetch.
modoNo"zonal" or "consolidado".zonal
zonaNoRequired for modo="zonal": one of "zona-1-bz".."zona-9-bz".
queryNoFree text matched (accent-insensitive) against the file's label, year, or URL.
formatNotext summary (default) or json structured result.text

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already establish readOnly/openWorld/non-destructive, so the bar is lower; the description adds genuinely useful traits beyond them — the archive format per mode, the per-year file cadence, and that the consolidado series is still being updated. It omits auth/rate-limit behavior and the download-vs-metadata distinction, but 'Returns links' clarifies the output nature.

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?

A single dense sentence, front-loaded with the resource name, that conveys modes, formats, date ranges, and the zona requirement with zero 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?

With no output schema, 'Returns links' correctly sets expectations, and both modes plus their coverage windows are documented. Minor gaps remain around the default text vs json format and result volume/pagination, but nothing critical to calling the tool is missing.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3; the description goes further by explaining that zonal mode yields per-zone .rar files requiring zona and that consolidado yields yearly XLSX, giving semantic meaning to the modo enum beyond the schema's bare '"zonal" or "consolidado"'. It says nothing extra about anio, query, or format.

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

Purpose4/5

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

Names the specific resource (infoMIES zonal bulletins) and enumerates both retrieval modes with their deliverable formats (.rar per zone vs yearly XLSX), so an agent knows exactly what it fetches. It does not, however, distinguish itself from the sibling search_infomies_bases_mensuales, which is the nearest alternative.

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?

The description implicitly routes mode selection by pairing each option with its coverage window (zonal 2017-2021, consolidado 2021-2026 and still updated) and states that zona is needed only for zonal. There is no explicit when-not or named alternative, but the context needed to pick a mode is present.

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

search_informes_igepnBuscar informes sísmicos y volcánicos del IG-EPNA
Read-only

Search IG-EPN's PDF report archive: seismic bulletins and volcanic alerts/reports, by year and group. Next: get_informe_igepn to read one. For raw earthquake data use search_sismos.

ParametersJSON Schema
NameRequiredDescriptionDefault
anioNoReport year (0 = current year)
grupoNo"sismico" | "volcanico" | "" (both)
limitNoMax reports to return (default 15, max 30)
queryNoFree text over report name/volcano (e.g. "cotopaxi", "trimestral")
formatNotext summary (default) or json structured result.text

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered structurally. The description adds that the corpus is PDF reports and hints at a two-step retrieve-then-read workflow, but says nothing about result volume, pagination, or ranking behavior. Adequate but not rich given the annotations do the heavy lifting.

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?

Two sentences that are entirely front-loaded: the verb+resource+scope comes first, then the next-step and alternative routing. No sentence is filler; each clause earns its place.

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?

Five optional parameters, no required params, no output schema, and annotations covering safety - so the description only needs to establish scope and routing, which it does. The minor gap is that it does not describe what a result record looks like or how 'limit' interacts with the archive size, but that is largely handled by the schema.

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 all five parameters (anio, grupo, limit, query, format) are already documented in the schema, including the '0 = current year' and '"" = both' conventions. The description adds no parameter syntax or semantics beyond what the schema provides, so the baseline 3 applies.

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 (Search) and resource (IG-EPN's PDF report archive: seismic bulletins and volcanic alerts/reports) plus the scoping dimension (by year and group). It is clearly distinguishable from siblings search_sismos (raw earthquake data) and get_informe_igepn (reading a single report).

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

Usage Guidelines5/5

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

Explicitly routes the agent: 'Next: get_informe_igepn to read one' establishes the follow-up step, and 'For raw earthquake data use search_sismos' names the alternative and the condition that selects it. Both when-to-use-this and when-to-use-something-else are covered.

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

search_organizationsBuscar organizaciones publicadorasA
Read-only

Search the institutions publishing on a CKAN portal (98+ on the national one: INEC, SRI, MSP, BCE...). Returns the slugs get_organization_info takes; to find datasets by topic use search_datasets.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (1-based, default: 1)
queryNoOptional search term (e.g. "salud", "SRI", "INEC")
formatNotext summary (default) or json structured result.text
sourceNoCKAN portal; nacional (default), cuenca, latacunga or iadb.nacional
page_sizeNoResults per page (default: 20, max: 100)

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover read-only, open-world, and non-destructive safety. The description adds valuable behavioral context by stating the return type ('slugs get_organization_info takes') and scope (98+ institutions), though it omits pagination and response-shape details.

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?

Two sentences with zero waste: the purpose and scope are front-loaded, the return-type integration follows, and the sibling routing closes the definition. Every sentence earns its place.

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 search tool with 100% schema coverage and annotations covering safety, the description is nearly complete: it states purpose, scale, return type, and alternative. It could say more about return structure or pagination behavior since no output schema exists, but it is sufficient 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 100%, so the schema already documents all five parameters including defaults and enums. The description adds no parameter-level syntax or format details beyond what the schema provides, making the baseline 3 appropriate.

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 ('Search the institutions publishing on a CKAN portal'), gives scale and examples (98+ on national: INEC, SRI, MSP, BCE), and distinguishes from search_datasets. An agent can tell this apart from sibling tools 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 Guidelines5/5

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

Explicitly names the alternative for a different goal ('to find datasets by topic use search_datasets') and explains the downstream use ('Returns the slugs get_organization_info takes'), giving clear when-to-use and alternative-condition guidance.

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

search_rankingRankear compañías por indicadores financierosB
Read-only

Rank Supercías companies by financial indicators for one fiscal year (last five years), optionally by CIIU letter. descending=true for top-N by a column.

ParametersJSON Schema
NameRequiredDescriptionDefault
anioNoFiscal year filter; defaults to the latest available year (the latest year may still be incomplete while filings arrive).
limitNoMax results (default 20, max 100).
formatNotext summary (default) or json structured result.text
offsetNoPagination offset.
ciiu_n1NoOptional CIIU level-1 filter, e.g. "C", "G", "I".
order_byNoColumn to sort by (e.g. "posicion_general", "activos", "roe").posicion_general
descendingNoSet true for "top N" style queries (e.g. highest ingresos_ventas/roe first).

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so the safety profile is covered. The description adds useful scope constraints (single fiscal year, five-year window, CIIU filtering), but says nothing about result size, pagination behavior, or ranking methodology.

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?

Two compact sentences with the ranking scope front-loaded and no filler. It is slightly cryptic in places (e.g. the trailing 'top-N by a column' clause) but every sentence carries weight.

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

Completeness3/5

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

For a seven-parameter tool with no output schema, the description covers scope but not what the ranked result contains (columns, ordering semantics beyond a sort key, output row shape). Schema and annotations carry the rest, so it is adequate but not complete.

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 all seven parameters are already documented in the schema, and the baseline is 3. The description reinforces the meaning of ciiu_n1, anio and descending (top-N), but adds no syntax or format detail beyond what the schema provides.

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

Purpose4/5

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

States a specific verb and resource: 'Rank Supercías companies by financial indicators', with additional scope (one fiscal year, last five years, optional CIIU letter). This clearly separates it from sibling lookups like search_companias or get_financials, though it never names an alternative explicitly.

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

Usage Guidelines2/5

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

There is no guidance on when to pick ranking versus single-company financial retrieval (get_financials) or plain company search (search_companias). The only hint is 'descending=true for top-N by a column', which is parameter usage, not tool-selection guidance.

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

search_regulacionesBuscar regulaciones publicadas en gob.ecB
Read-only

Search or list regulations published on gob.ec, with Registro Oficial references when available.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number when query is empty (1-based)
queryNoKeywords (e.g. "datos personales", "tránsito", "LOTAIP")
formatNotext summary (default) or json structured result.text

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, covering the safety profile. The description adds that results may include Registro Oficial references, which is useful return-value context, but it does not disclose pagination behavior, rate limits, or other operational traits beyond what annotations provide.

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?

The description is a single well-formed sentence with no wasted words, and the core action is front-loaded. Every clause contributes to the purpose.

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 simple three-parameter search tool with rich annotations and full schema coverage, the description provides adequate context: what it searches, where, and a hint about return content. It could be more complete by explaining pagination behavior or the default output format, but the essential information is present.

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 schema fully documents page, query, and format. The description adds no parameter-level detail beyond what the schema already provides, making 3 the appropriate baseline.

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

Purpose4/5

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

The description names a specific verb (Search or list) and resource (regulations published on gob.ec), and adds a scope detail about Registro Oficial references. It does not explicitly differentiate itself from the sibling get_regulacion_info, but the search/list framing implies a contrast with detail-retrieval tools.

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

Usage Guidelines2/5

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

There is no explicit when-to-use guidance, no mention of when not to use it, and no named alternative such as get_regulacion_info. The description states what the tool does but leaves the agent to infer when it should be preferred over sibling tools.

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

search_sgr_sitrepsBuscar informes de situación (SITREP) del SGRA
Read-only

SGR's archive of ~54 adverse-event dossiers 2016-2026 (earthquakes, rainy and fire seasons, volcanic activity) with status. Next: get_sgr_sitrep_archivos(evento_url) for the SITREP PDFs.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoFree text matched (accent-insensitive) against the event's titulo, estado, or descripcion, e.g. "terremoto", "en curso", "manabi".
formatNotext summary (default) or json structured result.text

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and destructiveHint=false, so safety is covered. The description adds valuable scope: archive size, date range, event categories, and the next-step tool, though it omits return-format or pagination behavior.

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?

Two tightly packed sentences with no waste. The resource scope is front-loaded, followed immediately by the next action.

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 simple two-parameter search tool with full schema coverage, safety annotations, and no output schema, the description gives enough orientation: archive scope, status, and the downstream PDF tool. It could state more clearly what a call returns, but the essentials are present.

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 query and format parameters are fully documented in the input schema. The description does not add syntax or matching details beyond what the schema already provides, making the baseline 3 appropriate.

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

Purpose4/5

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

The description names the specific resource: SGR's archive of adverse-event dossiers from 2016-2026, with event types and status. It distinguishes this tool from the downstream get_sgr_sitrep_archivos tool, but it does not explicitly state the action 'search' beyond what the tool name implies.

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?

It gives clear context for when the archive is useful and explicitly routes the agent to get_sgr_sitrep_archivos(evento_url) for PDFs. It does not mention exclusions or when to prefer other sibling search tools, so it stops short of full alternative guidance.

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

search_siniestros_antBuscar siniestros de tránsito (ANT)B
Read-only

Find Ecuador road-crash (siniestros de tránsito) data from ANT records: INEC quarterly/annual releases with XLSX/CSV microdata plus CKAN datasets (SPPAT deaths, ANT). ant.gob.ec is unreachable.

ParametersJSON Schema
NameRequiredDescriptionDefault
anioNoYear filter on the title (0 = all years)
limitNoMax items per source (default 10, max 30)
queryNoOptional words that must appear in the title (e.g. "trimestre")
formatNotext summary (default) or json structured result.text
con_archivosNoAttach file links to this many newest INEC releases (default 2, max 5; 0 = none)

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already cover the safety profile (readOnly, openWorld, non-destructive). The description adds useful context about source composition (INEC XLSX/CSV microdata, CKAN SPPAT deaths) and the unreachable ANT site, but omits details about result structure, pagination, or coverage limits.

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?

The description is compact and front-loaded, with the core purpose stated first and supporting source details following. Every sentence, including the note about ant.gob.ec being unreachable, earns its place.

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

Completeness3/5

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

Given the multi-source search scope and absence of an output schema, the description is somewhat thin. It identifies the data and sources, and the schema covers the format parameter, but it does not describe what a result contains or how multiple sources are combined, leaving an agent partially informed.

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 every parameter is already documented in the schema. The description adds no parameter-level meaning beyond what the structured fields provide, making the baseline 3 appropriate.

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

Purpose4/5

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

The description states a specific verb (Find) and resource (Ecuador road-crash data from ANT records) and names the underlying sources (INEC releases and CKAN datasets). It does not explicitly differentiate from siblings like search_inec_publicaciones or search_datasets, so it falls short of a 5.

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

Usage Guidelines2/5

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

There is no explicit when-to-use guidance or named alternatives. The note that 'ant.gob.ec is unreachable' hints at why this tool exists but does not tell the agent when to choose it over the many other search tools available.

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

search_sismosBuscar sismos recientes en EcuadorA
Read-only

Recent earthquakes from the IG-EPN catalog feed: magnitude, depth, coordinates, time and place. Filter by text, minimum magnitude and days.

ParametersJSON Schema
NameRequiredDescriptionDefault
diasNoOnly events from the last N days (0 = all available)
limitNoMax events to return (default 15, max 100)
queryNoFree text over location/id (e.g. "Quito", "Esmeraldas")
formatNotext summary (default) or json structured result.text
magnitud_minimaNoMinimum magnitude (e.g. 4.0)

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds the data source (IG-EPN catalog) and the returned field set, but says nothing about freshness, pagination, or how 'recent' is bounded beyond what the schema's dias parameter already states.

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?

Two tight sentences, front-loaded with what the tool returns before the filter list. No filler, though the title's 'Buscar' is what supplies the action verb.

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?

With 5 optional parameters but no output schema, the description usefully enumerates the returned fields and names the source, and the schema covers all filters. Enough for an agent to call it correctly; only the definition of 'recent' and any result-shape nuances are left implicit.

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 every parameter is already documented in the schema. The description's 'filter by text, minimum magnitude and days' merely restates query, magnitud_minima and dias without adding syntax, format, or edge-case detail. Baseline 3 applies when the schema does the heavy lifting.

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

Purpose4/5

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

States a specific resource (recent earthquakes) and its source (the IG-EPN catalog feed), plus the data fields surfaced (magnitude, depth, coordinates, time, place). The verb is carried by the title rather than the description, and no sibling is named to differentiate it from search_informes_igepn or search_eventos_riesgo, but the purpose is unmistakable.

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

Usage Guidelines3/5

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

The second sentence explains what can be filtered (text, minimum magnitude, days), which implies usage, but there is no explicit when-to-use, when-not, or named alternative among the many search_* siblings. Guidance is inferable rather than stated.

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

search_sri_rucBuscar contribuyentes por razón socialA
Read-only

Find SRI taxpayers by partial razón social or trade name (min 4 characters) when the RUC is unknown. SRI caps results at 100.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNotext summary (default) or json structured result.text
razon_socialYesText to search (min 4 characters), e.g. "BANANERA"
max_resultadosNoHow many results to return with full detail (max 100)

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral context by noting the SRI-side cap of 100 results and the minimum search length.

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?

Two tight sentences with no filler. The core search behavior and the RUC-unknown condition are front-loaded, followed by the result cap.

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 simple read-only search tool with full parameter descriptions and a low parameter count, the definition gives enough to invoke it correctly. It could mention what identifying fields are returned, but that is a minor omission given there is no output schema.

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 schema already documents all three parameters, including the min-4 rule, max-100 cap, and format enum. The description repeats the min length and cap but adds no syntax or format guidance beyond the schema.

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?

The description states a specific verb (Find) and resource (SRI taxpayers), names the searchable fields (partial razón social or trade name), and explicitly distinguishes the tool from RUC-based lookup by saying 'when the RUC is unknown'.

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?

It gives a clear usage condition: use when the RUC is unknown, with a minimum of 4 characters. The sibling get_sri_ruc_info is implied as the alternative when the RUC is known, but that routing is not stated explicitly.

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

search_tramitesBuscar trámites gubernamentales en gob.ecA
Read-only

Search gob.ec government procedures (trámites). Pass institution_id (SRI=8, IESS=163, Registro Civil=23, ANT=48, Cancillería=6; others via list_instituciones) for relevant results.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (1-based, default: 1).
queryNoKeywords to filter results (e.g. "RUC", "inscripción RUC persona natural").
formatNotext summary (default) or json structured result.text
institution_idNoInstitution ID (strongly recommended for relevant results)

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint and destructiveHint=false, so the safety profile is covered without the description. The description adds the useful behavioral note that omitting institution_id degrades result relevance. It says nothing about pagination limits or the text/json output distinction beyond the schema.

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?

Two sentences, front-loaded with the action and then the critical parameter guidance. The dense ID list is justified because it is non-derivable, though the parenthetical is heavy enough to slightly blunt readability.

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 read-only search tool with no output schema and full schema coverage, the description supplies the essentials: what it searches, the key filter and its values, and the fallback for unknown IDs. It could note paging or what a result contains, but nothing blocks correct invocation.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description genuinely adds meaning by mapping institution_id values (SRI=8, IESS=163, Registro Civil=23, ANT=48, Cancillería=6) that the schema only calls 'Institution ID'. This is exactly the kind of lookup data an agent cannot derive from the structured fields alone.

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

Purpose4/5

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

States a specific verb and resource: 'Search gob.ec government procedures (trámites).' That clearly separates it from get_tramite_info, get_tramite_estadisticas and list_instituciones, which it even references as the source of other IDs. It stops short of a crisp one-line scope statement, but the intent is unmistakable.

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 a concrete usage condition: pass institution_id for relevant results, and consult list_instituciones when the institution isn't in the listed set. It routes the agent to a sibling tool by name. No explicit exclusions or 'when not to use', so it falls just short of a 5.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 83 tool updatesv0.13.0
    • Changeddetect_series_pattern1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changeddownload_anda_microdata1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changeddownload_resource1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_aip_aerodromo1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_anda_survey_info1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_archivo_seccion1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_arconel_reporte1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_auditor_info1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_aviso_aeronautico1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_bce_iem_table1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_bce_indicador_diario1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_bce_pagina_archivos1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_capa_geo_datos1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_category_info1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_cenace_tablero1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_cepalstat_indicador1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_certificado_cumplimiento_patronal1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_compania_info1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_contraloria_informe1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_contrato_info1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_cortes_horarios1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_dataset_info1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_energia_ecuador_snapshot1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_financials1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_iess_archivos1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_indicador_bce1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_inec_estadistica_files1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_inec_publicacion_archivos1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_informe_igepn1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_institucion_info1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_organization_info1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_regulacion_info1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_resource_info1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_serie_internacional1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_sgr_sitrep_archivos1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_sipa_resumen_indicadores1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_sri_ruc_info1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_sut_indicador_schema1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_tramite_estadisticas1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedget_tramite_info1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedinvestigate_dataset1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedlist_aip_aerodromos1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedlist_archivo_secciones1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedlist_catalogo1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedlist_categories1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedlist_dataset_resources1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedlist_instituciones1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedlist_sat_tsunami1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedlist_zip_contents1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedlookup_ubicacion1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedpreview_resource_data1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedquery_resource_data1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedquery_sut_indicador2 fields changed
      • changedInput schema / properties / limite / description
        Previous value: -"Row cap applied server-side by the query itself."New value: +"Row cap applied server-side by the query itself (clamped to 20000; the result carries truncado=true when the cap was reached)."
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedread_pdf1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_anda1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_archivos1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_auditores1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_bce_calendario1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_bce_iem1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_bce_paginas1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_biinec_extras1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_capas_geo1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_cepalstat_indicadores1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_companias1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_contratos1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_cortes1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_datasets1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_ecuador1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_eventos_riesgo1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_indicadores_bce1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_inec_estadisticas1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_inec_publicaciones1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_infomies_bases_mensuales1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_infomies_boletines_zonales1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_informes_igepn1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_organizations1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_ranking1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_regulaciones1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_sgr_sitreps1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_siniestros_ant1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_sismos1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_sri_ruc1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
    • Changedsearch_tramites1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "additionalProperties": true,
        -  "type": "object"
        -}New value: +null
  2. 14 tool updatesv0.12.0
    • Changeddownload_anda_microdata1 field changed
      • changedInput schema / properties / idno / description
        Previous value: -"Survey identifier from search_anda (the \"idno\" field)"New value: +"Survey idno or numeric id from search_anda (the \"idno\" or \"id\" field)"
    • Changedget_anda_survey_info1 field changed
      • changedInput schema / properties / idno / description
        Previous value: -"Survey identifier from search_anda (the \"idno\" field)"New value: +"Survey idno or numeric id from search_anda (\"idno\" or \"id\" field)"
    • Changedget_archivo_seccion2 fields changed
      • changedInput schema / properties / fuente / description
        Previous value: -"One of arcsa, superbancos, seps, ineval, sgr, senescyt, sipa."New value: +"One of arcsa, superbancos, seps, ineval, sgr, senescyt, sipa, petroecuador, energia, cne, bvg, bvq."
      • changedInput schema / properties / fuente / enum
        Previous value: -[
        -  "arcsa",
        -  "superbancos",
        -  "seps",
        -  "ineval",
        -  "sgr",
        -  "senescyt",
        -  "sipa"
        -]New value: +[
        +  "arcsa",
        +  "superbancos",
        +  "seps",
        +  "ineval",
        +  "sgr",
        +  "senescyt",
        +  "sipa",
        +  "petroecuador",
        +  "energia",
        +  "cne",
        +  "bvg",
        +  "bvq"
        +]
    • Changedget_inec_estadistica_files1 field changed
      • addedInput schema / properties / year
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "integer"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Optional reference year; keeps only that year's files (each file carries a \"year\" parsed from its name or folder)"
        +}
    • Changedget_serie_internacional14 fields changed
      • addedInput schema / properties / clave
        Added value: +{
        +  "default": "",
        +  "description": "imf/ilo only: SDMX key, dot-separated (ECU.CPI._T.IX.M).",
        +  "type": "string"
        +}
      • addedInput schema / properties / cmd
        Added value: +{
        +  "default": "TOTAL",
        +  "description": "comtrade only: TOTAL or an HS code of 2, 4 or 6 digits.",
        +  "type": "string"
        +}
      • changedInput schema / properties / desde / description
        Previous value: -"Start: a year (AAAA) for wdi/irena, a date (AAAA-MM-DD) for xm."New value: +"Start: a year (AAAA) for wdi/irena/who/unhcr, a date (AAAA-MM-DD) for xm, a period (AAAA, AAAA-MM) for imf/ilo."
      • addedInput schema / properties / flujo
        Added value: +{
        +  "default": "ambos",
        +  "description": "comtrade only: X (exports), M (imports) or ambos.",
        +  "type": "string"
        +}
      • addedInput schema / properties / frecuencia
        Added value: +{
        +  "default": "A",
        +  "description": "comtrade only: A (annual) or M (monthly).",
        +  "enum": [
        +    "A",
        +    "M"
        +  ],
        +  "type": "string"
        +}
      • changedInput schema / properties / fuente / description
        Previous value: -"wdi, irena or xm."New value: +"wdi, irena, xm, comtrade, imf, who, ilo or unhcr."
      • changedInput schema / properties / fuente / enum
        Previous value: -[
        -  "wdi",
        -  "irena",
        -  "xm"
        -]New value: +[
        +  "wdi",
        +  "irena",
        +  "xm",
        +  "comtrade",
        +  "imf",
        +  "who",
        +  "ilo",
        +  "unhcr"
        +]
      • changedInput schema / properties / indicador / description
        Previous value: -"wdi only: WDI code."New value: +"wdi/who: indicator code."
      • changedInput schema / properties / limit / description
        Previous value: -"wdi catalog search only: maximum indicators (1-200)."New value: +"catalog/flow listings only: maximum rows (1-200)."
      • changedInput schema / properties / pais / description
        Previous value: -"wdi/irena: ISO3 code (irena also accepts the English name)."New value: +"wdi/irena/who/imf/ilo/unhcr: ISO3 code (irena also accepts the English name)."
      • addedInput schema / properties / periodo
        Added value: +{
        +  "default": "",
        +  "description": "comtrade only: one period, AAAA (frecuencia A) or AAAAMM (frecuencia M).",
        +  "type": "string"
        +}
      • changedInput schema / properties / query / description
        Previous value: -"wdi only: catalog search text, used when indicador is empty."New value: +"wdi/who/imf/ilo: catalog search text, used when indicador is empty."
      • addedInput schema / properties / socio
        Added value: +{
        +  "default": "",
        +  "description": "comtrade: partner as ISO3 (USA, CHN, COL, PER, PAN, ESP, NLD, ITA...) or M49 number; empty = 0 (World).",
        +  "type": "string"
        +}
      • addedInput schema / properties / ultimos
        Added value: +{
        +  "default": 0,
        +  "description": "imf/ilo only: last N observations per series.",
        +  "type": "integer"
        +}
    • Changedget_sri_ruc_info2 fields changed
      • changedInput schema / properties / include_establecimientos / description
        Previous value: -"incluir establecimientos registrados"New value: +"Include registered establishments"
      • changedInput schema / properties / ruc / description
        Previous value: -"RUC ecuatoriano exacto de 13 dígitos"New value: +"Exact 13-digit Ecuadorian RUC"
    • Changedget_sut_indicador_schema2 fields changed
      • addedInput schema / properties / fuente
        Added value: +{
        +  "default": "sut",
        +  "description": "sut (default) | judicatura",
        +  "enum": [
        +    "sut",
        +    "judicatura"
        +  ],
        +  "type": "string"
        +}
      • changedInput schema / properties / indicador / description
        Previous value: -"A key from list_catalogo(fuente='sut')."New value: +"A key from list_catalogo(fuente=<fuente>)."
    • Changedlist_archivo_secciones2 fields changed
      • changedInput schema / properties / fuente / description
        Previous value: -"One of arcsa, superbancos, seps, ineval, sgr, senescyt, sipa."New value: +"One of arcsa, superbancos, seps, ineval, sgr, senescyt, sipa, petroecuador, energia, cne, bvg, bvq."
      • changedInput schema / properties / fuente / enum
        Previous value: -[
        -  "arcsa",
        -  "superbancos",
        -  "seps",
        -  "ineval",
        -  "sgr",
        -  "senescyt",
        -  "sipa"
        -]New value: +[
        +  "arcsa",
        +  "superbancos",
        +  "seps",
        +  "ineval",
        +  "sgr",
        +  "senescyt",
        +  "sipa",
        +  "petroecuador",
        +  "energia",
        +  "cne",
        +  "bvg",
        +  "bvq"
        +]
    • Changedlist_catalogo1 field changed
      • changedInput schema / properties / fuente / enum
        Previous value: -[
        -  "arconel",
        -  "bce_diarios",
        -  "contraloria",
        -  "iess",
        -  "sut"
        -]New value: +[
        +  "arconel",
        +  "bce_diarios",
        +  "contraloria",
        +  "iess",
        +  "sut",
        +  "judicatura"
        +]
    • Changedquery_sut_indicador2 fields changed
      • addedInput schema / properties / fuente
        Added value: +{
        +  "default": "sut",
        +  "description": "sut (default) | judicatura",
        +  "enum": [
        +    "sut",
        +    "judicatura"
        +  ],
        +  "type": "string"
        +}
      • changedInput schema / properties / indicador / description
        Previous value: -"A key from list_catalogo(fuente='sut')."New value: +"A key from list_catalogo(fuente=<fuente>)."
    • Changedsearch_anda2 fields changed
      • changedInput schema / properties / limit / description
        Previous value: -"Max results (default: 10, max: 50)"New value: +"Results per page (default: 10, max: 50)"
      • addedInput schema / properties / page
        Added value: +{
        +  "default": 1,
        +  "description": "Page of results, 1-based (default: 1); see total/total_pages",
        +  "type": "integer"
        +}
    • Changedsearch_datasets2 fields changed
      • addedInput schema / properties / compact
        Added value: +{
        +  "default": false,
        +  "description": "Shrink each dataset in the JSON output to id, name, title, metadata_modified, organization and its resources (id, name, format, size, url).",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / fields
        Added value: +{
        +  "default": "",
        +  "description": "Comma-separated dataset keys to keep in the JSON output (e.g. \"name,title,metadata_modified\"); applied after compact.",
        +  "type": "string"
        +}
    • Addedsearch_siniestros_ant
    • Changedsearch_sri_ruc2 fields changed
      • changedInput schema / properties / max_resultados / description
        Previous value: -"Cuántos resultados con detalle completo devolver (máx 100)"New value: +"How many results to return with full detail (max 100)"
      • changedInput schema / properties / razon_social / description
        Previous value: -"Texto a buscar (mínimo 4 caracteres), ej."New value: +"Text to search (min 4 characters), e.g. \"BANANERA\""
  3. 21 tool updatesv0.11.0
    • Changedget_arconel_reporte1 field changed
      • changedInput schema / properties / tipo / description
        Previous value: -"Report name as listed by `list_arconel_reportes` (accent/case-insensitive), e.g. \"Balance Energía\", \"Pérdidas\", \"Medidores Catastro\"."New value: +"Report name as listed by `list_catalogo(fuente='arconel')` (accent/case-insensitive), e.g. \"Balance Energía\", \"Pérdidas\", \"Medidores Catastro\"."
    • Addedget_aviso_aeronautico
    • Changedget_bce_indicador_diario1 field changed
      • changedInput schema / properties / archivo / description
        Previous value: -"A file name from list_bce_indicadores_diarios."New value: +"A file name from list_catalogo(fuente='bce_diarios')."
    • Changedget_contraloria_informe1 field changed
      • changedInput schema / properties / informe_id / description
        Previous value: -"An id from list_contraloria_informes"New value: +"An id from list_catalogo(fuente='contraloria')"
    • Removedget_metar
    • Removedget_notam
    • Addedget_serie_internacional
    • Removedget_sigmet
    • Changedget_sut_indicador_schema1 field changed
      • changedInput schema / properties / indicador / description
        Previous value: -"A key from list_sut_indicadores."New value: +"A key from list_catalogo(fuente='sut')."
    • Removedlist_arconel_reportes
    • Removedlist_bce_indicadores_diarios
    • Addedlist_catalogo
    • Removedlist_contraloria_informes
    • Removedlist_iess_colecciones
    • Removedlist_sut_indicadores
    • Changedlist_zip_contents1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"Direct URL to a .zip file (from another tool's result, e.g. get_inec_publicacion_archivos, search_archivos(fuente=\"censo\"))."New value: +"Direct URL to a .zip file (from another tool's result, e.g. get_inec_publicacion_archivos, search_archivos(fuente='censo'))."
    • Changedquery_sut_indicador1 field changed
      • changedInput schema / properties / indicador / description
        Previous value: -"A key from list_sut_indicadores."New value: +"A key from list_catalogo(fuente='sut')."
    • Changedsearch_archivos2 fields changed
      • addedInput schema / properties / formato
        Added value: +{
        +  "default": "",
        +  "description": "Optional exact file format (PDF, XLSX, CSV, ZIP...); not for sri_datasets, sri_recaudacion or censo.",
        +  "type": "string"
        +}
      • changedInput schema / properties / fuente / enum
        Previous value: -[
        -  "sri_datasets",
        -  "sri_recaudacion",
        -  "mef",
        -  "senae",
        -  "censo",
        -  "minedec",
        -  "senescyt",
        -  "msp",
        -  "cnig",
        -  "trabajo_boletin",
        -  "salarios",
        -  "arcotel_boletines",
        -  "arcotel_mensuales"
        -]New value: +[
        +  "sri_datasets",
        +  "sri_recaudacion",
        +  "mef",
        +  "senae",
        +  "censo",
        +  "minedec",
        +  "senescyt",
        +  "msp",
        +  "cnig",
        +  "trabajo_boletin",
        +  "salarios",
        +  "arcotel_boletines",
        +  "arcotel_mensuales",
        +  "bce_remesas",
        +  "bce_precios_comex",
        +  "bce_publicaciones"
        +]
    • Removedsearch_bce_precios_comex
    • Removedsearch_bce_publicaciones
    • Removedsearch_bce_remesas
  4. 116 tool updatesv0.10.0
    • Removedaudit_bce_catalog
    • Removedcompare_bce_sources
    • Changeddetect_series_pattern5 fields changed
      • addedInput schema / properties / dataset_id / description
        Added value: +"The dataset ID or slug"
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / resource_id_new / description
        Added value: +"Optional -- newer resource ID to compare (auto-detected from the dataset's periodic-name group if omitted)"
      • addedInput schema / properties / resource_id_old / description
        Added value: +"Optional -- older resource ID to compare (auto-detected if omitted)."
      • addedInput schema / properties / source / description
        Added value: +"CKAN portal; nacional (default), cuenca, latacunga or iadb."
    • Changeddownload_anda_microdata2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / idno / description
        Added value: +"Survey identifier from search_anda (the \"idno\" field)"
    • Changeddownload_resource3 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / resource_id / description
        Added value: +"The resource UUID (get it from list_dataset_resources)"
      • addedInput schema / properties / source / description
        Added value: +"CKAN portal; nacional (default), cuenca, latacunga or iadb."
    • Changedget_aip_aerodromo2 fields changed
      • addedInput schema / properties / designador / description
        Added value: +"ICAO code of the aerodrome/helipad, e.g. SEQM (Quito — Mariscal Sucre), SEGU (Guayaquil — José Joaquín de Olmedo), SECU (Cuenca — Mariscal Lamar)."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
    • Changedget_anda_survey_info2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / idno / description
        Added value: +"Survey identifier from search_anda (the \"idno\" field)"
    • Changedget_archivo_seccion3 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / fuente / description
        Added value: +"One of arcsa, superbancos, seps, ineval, sgr, senescyt, sipa."
      • addedInput schema / properties / seccion / description
        Added value: +"A section `id` from list_archivo_secciones."
    • Changedget_arconel_reporte6 fields changed
      • addedInput schema / properties / anio / description
        Added value: +"Year, 1998-current."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / grupo / description
        Added value: +"todos | cnel | empresas_electricas."
      • addedInput schema / properties / max_paginas / description
        Added value: +"Maximum pages to read (1-40, default 10)."
      • addedInput schema / properties / mes / description
        Added value: +"1-12, only for report types with a month filter (e.g. per-parish reports); others already break down by month."
      • addedInput schema / properties / tipo / description
        Added value: +"Report name as listed by `list_arconel_reportes` (accent/case-insensitive), e.g. \"Balance Energía\", \"Pérdidas\", \"Medidores Catastro\"."
    • Changedget_auditor_info2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / identificacion / description
        Added value: +"The auditor's RUC or cédula"
    • Removedget_bce_cuentas_nacionales_archivo
    • Changedget_bce_iem_table6 fields changed
      • addedInput schema / properties / boletin_numero / description
        Added value: +"Past bulletin number from search_bce_iem(historico=true); 0 means the latest."
      • addedInput schema / properties / desde / description
        Added value: +"Earliest period to include, as YYYY, YYYY-MM or a month-year label."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / hasta / description
        Added value: +"Latest period to include, same formats as desde."
      • addedInput schema / properties / rows / description
        Added value: +"Max rows returned (1-100, default 20)."
      • addedInput schema / properties / table_id / description
        Added value: +"A table_id from search_bce_iem."
    • Changedget_bce_indicador_diario6 fields changed
      • addedInput schema / properties / archivo / description
        Added value: +"A file name from list_bce_indicadores_diarios."
      • addedInput schema / properties / codigo / description
        Added value: +"A \"Código Variable Dinámica\" from that same archivo."
      • addedInput schema / properties / desde / description
        Added value: +"Optional start date YYYY-MM-DD."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / hasta / description
        Added value: +"Optional end date YYYY-MM-DD."
      • addedInput schema / properties / ultimos_n / description
        Added value: +"Most recent N observations when no date range is given."
    • Removedget_bce_indice_archivo
    • Addedget_bce_pagina_archivos
    • Addedget_capa_geo_datos
    • Changedget_category_info4 fields changed
      • addedInput schema / properties / category / description
        Added value: +"Category slug/name from list_categories"
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / include_datasets / description
        Added value: +"Include sample datasets in the category (default True)"
      • addedInput schema / properties / source / description
        Added value: +"CKAN portal; nacional (default), cuenca, latacunga or iadb."
    • Changedget_cenace_tablero2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / tablero / description
        Added value: +"One of the 5 names above."
    • Removedget_centrosur_cortes_horarios
    • Changedget_cepalstat_indicador4 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / indicator_id / description
        Added value: +"An \"indicator_id\" from search_cepalstat_indicadores."
      • addedInput schema / properties / lang / description
        Added value: +"\"es\" (default) or \"en\""
      • addedInput schema / properties / pais / description
        Added value: +"Country to filter to (accent-insensitive, e.g. \"Ecuador\", \"Peru\")."
    • Changedget_certificado_cumplimiento_patronal2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / identificacion / description
        Added value: +"A 10-digit cédula or 13-digit RUC."
    • Changedget_compania_info2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / ruc / description
        Added value: +"The company's 13-digit RUC"
    • Changedget_contraloria_informe3 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / informe_id / description
        Added value: +"An id from list_contraloria_informes"
      • addedInput schema / properties / rows / description
        Added value: +"Number of data rows to preview (default: 50, max: 200)"
    • Changedget_contrato_info2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / ocid / description
        Added value: +"Open Contracting ID, e.g. \"ocds-5wno2w-001-LICO-GPLR-2020-2805\""
    • Addedget_cortes_horarios
    • Changedget_dataset_info3 fields changed
      • addedInput schema / properties / dataset_id / description
        Added value: +"The dataset ID or slug (e.g. \"registro-estadistico-de-recursos-y-actividades-de-salud-2019\")"
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / source / description
        Added value: +"CKAN portal; nacional (default), cuenca, latacunga or iadb."
    • Removedget_eeq_cortes_horarios
    • Changedget_energia_ecuador_snapshot2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / query / description
        Added value: +"Free text matched (accent-insensitive) against canton or sectores."
    • Changedget_financials3 fields changed
      • addedInput schema / properties / anio / description
        Added value: +"Optional single fiscal year filter."
      • addedInput schema / properties / expediente_or_ruc / description
        Added value: +"The company's Supercías \"expediente\" number (from search_companias/get_compania_info) or its 13-digit RUC."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
    • Changedget_iess_archivos4 fields changed
      • addedInput schema / properties / anio / description
        Added value: +"Filter to one year."
      • addedInput schema / properties / coleccion / description
        Added value: +"\"boletines\" (Boletines Estadísticos, annual, 1978- 2024 confirmed), \"estudios_actuariales\" (actuarial valuation studies per fund, published only for a handful…"
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / query / description
        Added value: +"Free text matched (accent-insensitive) against título (and descripción/grupo where the collection has one)."
    • Removedget_inamhi_capa_datos
    • Changedget_indicador_bce6 fields changed
      • addedInput schema / properties / desde / description
        Added value: +"Start period as YYYY-MM."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / frecuencia / description
        Added value: +"Semanal | Mensual | Trimestral | Anual."
      • addedInput schema / properties / hasta / description
        Added value: +"End period as YYYY-MM."
      • addedInput schema / properties / id_grupo / description
        Added value: +"The group id from search_indicadores_bce."
      • addedInput schema / properties / unidad / description
        Added value: +"Varies by group (e.g. \"Millones de USD\", \"Indice\", \"Porcentaje\")."
    • Changedget_inec_estadistica_files2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / url / description
        Added value: +"A topic URL from search_inec_estadisticas's \"url\" field (must be on ecuadorencifras.gob.ec)"
    • Changedget_inec_publicacion_archivos2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / post / description
        Added value: +"Either the numeric \"id\" from search_inec_publicaciones, or the publication's full ecuadorencifras.gob.ec URL."
    • Changedget_informe_igepn6 fields changed
      • addedInput schema / properties / anio / description
        Added value: +"Report year (0 = current year) -- same value used to find it"
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / grupo / description
        Added value: +"\"sismico\" | \"volcanico\" | \"\" (both) -- same value used to find it"
      • addedInput schema / properties / nombre / description
        Added value: +"Exact report name from search_informes_igepn (e.g. \"Informe Diario 2022-071\")"
      • addedInput schema / properties / pages / description
        Added value: +"Page range, 1-indexed (e.g. \"3\", \"1-5\")."
      • addedInput schema / properties / volcan / description
        Added value: +"Volcano name, only needed to disambiguate a duplicate nombre"
    • Changedget_institucion_info2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / institucion_id / description
        Added value: +"Institution ID (e.g. \"8\")"
    • Changedget_metar2 fields changed
      • addedInput schema / properties / designador / description
        Added value: +"ICAO code of the aerodrome/helipad, e.g. SEQM (Quito — Mariscal Sucre), SEGU (Guayaquil — José Joaquín de Olmedo), SECU (Cuenca — Mariscal Lamar)."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
    • Changedget_notam2 fields changed
      • addedInput schema / properties / designador / description
        Added value: +"ICAO code of the aerodrome/helipad, e.g. SEQM (Quito — Mariscal Sucre), SEGU (Guayaquil — José Joaquín de Olmedo), SECU (Cuenca — Mariscal Lamar)."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
    • Changedget_organization_info4 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / organization_id / description
        Added value: +"The organization slug (e.g. \"sri-servicio-de-rentas-internas\")"
      • addedInput schema / properties / query / description
        Added value: +"Free text matched (accent-insensitive) against each dataset's title."
      • addedInput schema / properties / source / description
        Added value: +"CKAN portal; nacional (default), cuenca, latacunga or iadb."
    • Changedget_regulacion_info2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / regulacion_id / description
        Added value: +"Regulation ID (e.g. \"5051\")"
    • Changedget_resource_info3 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / resource_id / description
        Added value: +"The resource UUID"
      • addedInput schema / properties / source / description
        Added value: +"CKAN portal; nacional (default), cuenca, latacunga or iadb."
    • Changedget_sgr_sitrep_archivos2 fields changed
      • addedInput schema / properties / evento_url / description
        Added value: +"An event URL from search_sgr_sitreps's \"url\" field (must be on gestionderiesgos.gob.ec)."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
    • Changedget_sigmet1 field changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
    • Removedget_sipa_geoportal_capa_datos
    • Changedget_sipa_resumen_indicadores2 fields changed
      • addedInput schema / properties / anio / description
        Added value: +"Year, e.g. 2025."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
    • Changedget_sri_ruc_info3 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / include_establecimientos / description
        Added value: +"incluir establecimientos registrados"
      • addedInput schema / properties / ruc / description
        Added value: +"RUC ecuatoriano exacto de 13 dígitos"
    • Changedget_sut_indicador_schema2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / indicador / description
        Added value: +"A key from list_sut_indicadores."
    • Changedget_tramite_estadisticas2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / tramite_id / description
        Added value: +"The procedure ID (e.g. \"11752\")"
    • Changedget_tramite_info2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / tramite_id / description
        Added value: +"The procedure ID (e.g. \"18009\")"
    • Changedinvestigate_dataset4 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / preview_rows / description
        Added value: +"Data rows to preview from the chosen resource (default: 10, max: 50)"
      • addedInput schema / properties / query / description
        Added value: +"Search keywords (e.g. \"empleo\", \"SRI recaudación\")"
      • addedInput schema / properties / source / description
        Added value: +"CKAN portal; nacional (default), cuenca, latacunga or iadb."
    • Changedlist_aip_aerodromos1 field changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
    • Changedlist_archivo_secciones2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / fuente / description
        Added value: +"One of arcsa, superbancos, seps, ineval, sgr, senescyt, sipa."
    • Changedlist_arconel_reportes1 field changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
    • Changedlist_bce_indicadores_diarios1 field changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
    • Removedlist_capabilities
    • Changedlist_categories2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / source / description
        Added value: +"CKAN portal; nacional (default), cuenca, latacunga or iadb."
    • Changedlist_contraloria_informes1 field changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
    • Changedlist_dataset_resources3 fields changed
      • addedInput schema / properties / dataset_id / description
        Added value: +"The dataset ID or slug"
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / source / description
        Added value: +"CKAN portal; nacional (default), cuenca, latacunga or iadb."
    • Changedlist_iess_colecciones1 field changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
    • Changedlist_instituciones3 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / page / description
        Added value: +"Page number (1-based, default: 1, only used without query)"
      • addedInput schema / properties / query / description
        Added value: +"Optional search term (e.g. \"SRI\", \"salud\", \"rentas\")"
    • Changedlist_sat_tsunami2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / limit / description
        Added value: +"Max stations to include in the response (default 30)"
    • Changedlist_sut_indicadores1 field changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
    • Changedlist_zip_contents4 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / limit / description
        Added value: +"Max members returned (default 200, max 1000)."
      • addedInput schema / properties / offset / description
        Added value: +"Pagination offset over the member list."
      • addedInput schema / properties / url / description
        Added value: +"Direct URL to a .zip file (from another tool's result, e.g. get_inec_publicacion_archivos, search_archivos(fuente=\"censo\"))."
    • Changedlookup_ubicacion6 fields changed
      • addedInput schema / properties / canton / description
        Added value: +"Optional canton filter (useful for parroquias)"
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / nivel / description
        Added value: +"auto | provincia | canton | parroquia"
      • addedInput schema / properties / provincia / description
        Added value: +"Optional province filter"
      • addedInput schema / properties / query / description
        Added value: +"Name or code (e.g. \"Pichincha\", \"Cuenca\", \"Tumbaco\", \"170150\")"
      • addedInput schema / properties / region / description
        Added value: +"Optional natural region for provinces/cantons"
    • Changedpreview_resource_data4 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / resource_id / description
        Added value: +"The resource UUID (get it from list_dataset_resources)"
      • addedInput schema / properties / rows / description
        Added value: +"Number of data rows to preview (default: 20, max: 100)"
      • addedInput schema / properties / source / description
        Added value: +"CKAN portal; nacional (default), cuenca, latacunga or iadb."
    • Changedquery_resource_data8 fields changed
      • addedInput schema / properties / filters_json / description
        Added value: +"Optional JSON object of exact field filters, e.g. '{\"provincia\":\"Pichincha\"}'"
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / offset / description
        Added value: +"Pagination offset (default 0)"
      • addedInput schema / properties / query / description
        Added value: +"Optional full-text search across datastore fields"
      • addedInput schema / properties / resource_id / description
        Added value: +"Resource UUID (from list_dataset_resources)"
      • addedInput schema / properties / rows / description
        Added value: +"Number of records to return (default 20, max 100)"
      • addedInput schema / properties / sort / description
        Added value: +"Optional sort expression, e.g. \"anio desc\""
      • addedInput schema / properties / source / description
        Added value: +"CKAN portal; nacional (default), cuenca, latacunga or iadb."
    • Changedquery_sut_indicador5 fields changed
      • addedInput schema / properties / campos / description
        Added value: +"Field labels exactly as returned by get_sut_indicador_schema."
      • addedInput schema / properties / filtros / description
        Added value: +"Optional {campo: valor} equality filters, plain columns only."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / indicador / description
        Added value: +"A key from list_sut_indicadores."
      • addedInput schema / properties / limite / description
        Added value: +"Row cap applied server-side by the query itself."
    • Changedread_pdf3 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / pages / description
        Added value: +"Page range, 1-indexed (e.g. \"3\", \"1-5\", \"1,4,9\")."
      • addedInput schema / properties / url / description
        Added value: +"Direct URL to the PDF file"
    • Changedsearch_anda3 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / limit / description
        Added value: +"Max results (default: 10, max: 50)"
      • addedInput schema / properties / query / description
        Added value: +"Search keywords (e.g. \"empleo\", \"REEM\", \"censo agropecuario\")"
    • Addedsearch_archivos
    • Removedsearch_arcotel
    • Changedsearch_auditores5 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / limit / description
        Added value: +"Max results (default 20, max 100)"
      • addedInput schema / properties / offset / description
        Added value: +"Pagination offset over the matched set"
      • addedInput schema / properties / provincia / description
        Added value: +"Optional province filter, e.g. \"PICHINCHA\" (substring match)"
      • addedInput schema / properties / query / description
        Added value: +"Free text matched against auditor name or identificación (RUC/cédula), accent-insensitive"
    • Changedsearch_bce_calendario9 fields changed
      • addedInput schema / properties / categoria / description
        Added value: +"Exact category filter (accent-insensitive), e.g. \"cuentas nacionales\", \"balanza de pagos y comercio exterior\"."
      • addedInput schema / properties / desde / description
        Added value: +"Restrict to release date >= this date (YYYY-MM-DD)."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / hasta / description
        Added value: +"Restrict to release date <= this date (YYYY-MM-DD)."
      • addedInput schema / properties / limit / description
        Added value: +"Max results (1-200, default 50)."
      • addedInput schema / properties / offset / description
        Added value: +"Pagination offset over the matched set."
      • addedInput schema / properties / periodicidad / description
        Added value: +"Exact periodicity filter, e.g. \"Mensual\", \"Anual\", \"Trimestral\", \"Semanal\"."
      • addedInput schema / properties / query / description
        Added value: +"Free text matched against the publication name or its observations note (accent-insensitive)."
      • addedInput schema / properties / solo_proximas / description
        Added value: +"If true, only releases scheduled today or later."
    • Removedsearch_bce_cuentas_nacionales
    • Changedsearch_bce_iem10 fields changed
      • addedInput schema / properties / desde_anio / description
        Added value: +"Earliest bulletin year to search (implies historico)."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / guardar_catalogo / description
        Added value: +"Save the full assembled catalog under IEM_CATALOG_DIR."
      • addedInput schema / properties / hash_archivos / description
        Added value: +"Download each discovered XLSX and report its SHA-256 (operator audit; slow)."
      • addedInput schema / properties / hasta_anio / description
        Added value: +"Latest bulletin year to search (implies historico)."
      • addedInput schema / properties / historico / description
        Added value: +"Also search past monthly bulletins, not just the latest."
      • addedInput schema / properties / limit / description
        Added value: +"Max tables returned (default 20)."
      • addedInput schema / properties / max_hash_archivos / description
        Added value: +"Cap on files hashed when hash_archivos is set."
      • addedInput schema / properties / offset / description
        Added value: +"Pagination offset over the matched set."
      • addedInput schema / properties / query / description
        Added value: +"Free text matched against table titles and sections (accent-insensitive)."
    • Removedsearch_bce_indices
    • Addedsearch_bce_paginas
    • Changedsearch_bce_precios_comex2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / query / description
        Added value: +"Free text matched against the file's label, page title, or page id (accent-insensitive), e.g. \"importacion\", \"exportacion\"."
    • Changedsearch_bce_publicaciones3 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / formato / description
        Added value: +"Exact match against the derived format — PDF, XLSX, XLS, CSV, ZIP, HTML."
      • addedInput schema / properties / query / description
        Added value: +"Free text matched against the publication's title (accent-insensitive)."
    • Changedsearch_bce_remesas2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / query / description
        Added value: +"Free text matched against the file's label or URL (accent-insensitive), e.g. \"historica\", \"entidad\", \"bdd\"."
    • Changedsearch_biinec_extras2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / query / description
        Added value: +"Free text matched against the registry's name/description (accent-insensitive)."
    • Addedsearch_capas_geo
    • Removedsearch_censo_recursos
    • Removedsearch_centrosur_cortes
    • Changedsearch_cepalstat_indicadores3 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / lang / description
        Added value: +"\"es\" (default) or \"en\""
      • addedInput schema / properties / query / description
        Added value: +"Free text matched (accent-insensitive) against the indicator's name or its thematic-area breadcrumb, e.g. \"poblacion\", \"pobreza\", \"comercio exterior\"."
    • Removedsearch_cnig_femicidios
    • Changedsearch_companias6 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / limit / description
        Added value: +"Max results (default 20, max 100)"
      • addedInput schema / properties / offset / description
        Added value: +"Pagination offset over the matched set"
      • addedInput schema / properties / provincia / description
        Added value: +"Optional province filter, e.g. \"PICHINCHA\" (substring match)"
      • addedInput schema / properties / query / description
        Added value: +"Free text matched against company name or RUC (accent-insensitive)"
      • addedInput schema / properties / situacion_legal / description
        Added value: +"Optional legal status filter, e.g. \"ACTIVA\", \"DISOLUCIÓN\""
    • Changedsearch_contratos6 fields changed
      • addedInput schema / properties / buyer / description
        Added value: +"Optional buyer/institution keyword (min 3 chars)"
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / page / description
        Added value: +"Results page (1-based)"
      • addedInput schema / properties / query / description
        Added value: +"Keyword (min 3 chars), e.g. \"medicinas\", \"vialidad\", \"software\""
      • addedInput schema / properties / supplier / description
        Added value: +"Optional supplier keyword (min 3 chars)"
      • addedInput schema / properties / year / description
        Added value: +"Contract year (2015–current)."
    • Addedsearch_cortes
    • Changedsearch_datasets7 fields changed
      • addedInput schema / properties / category / description
        Added value: +"Optional category filter (e.g. \"sal\" for Salud, \"edu\" for Educación)."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / page / description
        Added value: +"Page number (1-based, default: 1)"
      • addedInput schema / properties / page_size / description
        Added value: +"Results per page (default: 20, max: 100)"
      • addedInput schema / properties / query / description
        Added value: +"Search keywords (e.g. \"empleo\", \"salud\", \"presupuesto\", \"SRI recaudación\")."
      • addedInput schema / properties / sort / description
        Added value: +"\"relevance\" (default, CKAN's own ranking) or \"recent\" (sort by metadata_modified descending, to discover newly added or freshly refreshed datasets)"
      • addedInput schema / properties / source / description
        Added value: +"CKAN portal; nacional (default), cuenca, latacunga or iadb."
    • Changedsearch_ecuador3 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / limit / description
        Added value: +"Max results per section (default 5, max 10)"
      • addedInput schema / properties / query / description
        Added value: +"Search terms in Spanish (e.g. \"salud\", \"RUC\", \"medicinas\")"
    • Removedsearch_eeq_cortes
    • Changedsearch_eventos_riesgo7 fields changed
      • addedInput schema / properties / canton / description
        Added value: +"Canton filter (e.g. \"Quito\")"
      • addedInput schema / properties / estado / description
        Added value: +"Status filter (e.g. \"Seguimiento\", \"Cierre\")"
      • addedInput schema / properties / evento / description
        Added value: +"Event type filter (e.g. \"Deslizamiento\", \"Inundación\", \"Aluvión\")"
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / limit / description
        Added value: +"Max events to return (default 15, max 100)"
      • addedInput schema / properties / provincia / description
        Added value: +"Province filter (e.g. \"Pichincha\")"
      • addedInput schema / properties / query / description
        Added value: +"Free text (sector, cause, description keywords)"
    • Removedsearch_gacetas_inmunoprevenibles
    • Removedsearch_inamhi_capas
    • Changedsearch_indicadores_bce4 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / limit / description
        Added value: +"Max results (default 20, max 100)"
      • addedInput schema / properties / offset / description
        Added value: +"Pagination offset over the matched set"
      • addedInput schema / properties / query / description
        Added value: +"Free text matched against the group's description, its section/subsection, and its individual series labels (accent-insensitive)"
    • Changedsearch_inec_estadisticas4 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / limit / description
        Added value: +"Max results (default 30, max 100)"
      • addedInput schema / properties / offset / description
        Added value: +"Pagination offset over the matched set"
      • addedInput schema / properties / query / description
        Added value: +"Free text matched against the topic name (accent-insensitive), e.g. \"precios\", \"empleo\", \"pobreza\"."
    • Changedsearch_inec_publicaciones4 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / limit / description
        Added value: +"Max results (default 20, max 100)."
      • addedInput schema / properties / offset / description
        Added value: +"Pagination offset over the matched set."
      • addedInput schema / properties / query / description
        Added value: +"Free text matched against title/content (e.g. \"ENEMDU anual 2025\", \"inflación julio\", \"censo\")."
    • Changedsearch_infomies_bases_mensuales4 fields changed
      • addedInput schema / properties / anio / description
        Added value: +"Specific year to fetch, e.g. 2024."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / query / description
        Added value: +"Free text matched (accent-insensitive) against the file's label, year, or URL, e.g. \"julio\", \"2023\"."
      • addedInput schema / properties / serie / description
        Added value: +"\"anc\" or \"is\"."
    • Changedsearch_infomies_boletines_zonales5 fields changed
      • addedInput schema / properties / anio / description
        Added value: +"Specific year to fetch."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / modo / description
        Added value: +"\"zonal\" or \"consolidado\"."
      • addedInput schema / properties / query / description
        Added value: +"Free text matched (accent-insensitive) against the file's label, year, or URL."
      • addedInput schema / properties / zona / description
        Added value: +"Required for modo=\"zonal\": one of \"zona-1-bz\"..\"zona-9-bz\"."
    • Changedsearch_informes_igepn5 fields changed
      • addedInput schema / properties / anio / description
        Added value: +"Report year (0 = current year)"
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / grupo / description
        Added value: +"\"sismico\" | \"volcanico\" | \"\" (both)"
      • addedInput schema / properties / limit / description
        Added value: +"Max reports to return (default 15, max 30)"
      • addedInput schema / properties / query / description
        Added value: +"Free text over report name/volcano (e.g. \"cotopaxi\", \"trimestral\")"
    • Removedsearch_mef_fiscal
    • Removedsearch_minedec_matricula
    • Changedsearch_organizations5 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / page / description
        Added value: +"Page number (1-based, default: 1)"
      • addedInput schema / properties / page_size / description
        Added value: +"Results per page (default: 20, max: 100)"
      • addedInput schema / properties / query / description
        Added value: +"Optional search term (e.g. \"salud\", \"SRI\", \"INEC\")"
      • addedInput schema / properties / source / description
        Added value: +"CKAN portal; nacional (default), cuenca, latacunga or iadb."
    • Changedsearch_ranking7 fields changed
      • addedInput schema / properties / anio / description
        Added value: +"Fiscal year filter; defaults to the latest available year (the latest year may still be incomplete while filings arrive)."
      • addedInput schema / properties / ciiu_n1 / description
        Added value: +"Optional CIIU level-1 filter, e.g. \"C\", \"G\", \"I\"."
      • addedInput schema / properties / descending / description
        Added value: +"Set true for \"top N\" style queries (e.g. highest ingresos_ventas/roe first)."
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / limit / description
        Added value: +"Max results (default 20, max 100)."
      • addedInput schema / properties / offset / description
        Added value: +"Pagination offset."
      • addedInput schema / properties / order_by / description
        Added value: +"Column to sort by (e.g. \"posicion_general\", \"activos\", \"roe\")."
    • Changedsearch_regulaciones3 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / page / description
        Added value: +"Page number when query is empty (1-based)"
      • addedInput schema / properties / query / description
        Added value: +"Keywords (e.g. \"datos personales\", \"tránsito\", \"LOTAIP\")"
    • Removedsearch_salarios_sectoriales
    • Removedsearch_senescyt_estadisticas
    • Changedsearch_sgr_sitreps2 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / query / description
        Added value: +"Free text matched (accent-insensitive) against the event's titulo, estado, or descripcion, e.g. \"terremoto\", \"en curso\", \"manabi\"."
    • Removedsearch_sipa_geoportal_capas
    • Changedsearch_sismos5 fields changed
      • addedInput schema / properties / dias / description
        Added value: +"Only events from the last N days (0 = all available)"
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / limit / description
        Added value: +"Max events to return (default 15, max 100)"
      • addedInput schema / properties / magnitud_minima / description
        Added value: +"Minimum magnitude (e.g. 4.0)"
      • addedInput schema / properties / query / description
        Added value: +"Free text over location/id (e.g. \"Quito\", \"Esmeraldas\")"
    • Removedsearch_sri_datasets
    • Removedsearch_sri_estadisticas_recaudacion
    • Changedsearch_sri_ruc3 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / max_resultados / description
        Added value: +"Cuántos resultados con detalle completo devolver (máx 100)"
      • addedInput schema / properties / razon_social / description
        Added value: +"Texto a buscar (mínimo 4 caracteres), ej."
    • Removedsearch_trabajo_boletin_anual
    • Changedsearch_tramites4 fields changed
      • addedInput schema / properties / format / description
        Added value: +"text summary (default) or json structured result."
      • addedInput schema / properties / institution_id / description
        Added value: +"Institution ID (strongly recommended for relevant results)"
      • addedInput schema / properties / page / description
        Added value: +"Page number (1-based, default: 1)."
      • addedInput schema / properties / query / description
        Added value: +"Keywords to filter results (e.g. \"RUC\", \"inscripción RUC persona natural\")."
  5. 123 tool updatesv0.8.14
    • Changedaudit_bce_catalog7 fields changed
      • removedInput schema / properties / auditar_grid / title
        Removed value: -"Auditar Grid"
      • removedInput schema / properties / comparar_anterior / title
        Removed value: -"Comparar Anterior"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / guardar_snapshot / title
        Removed value: -"Guardar Snapshot"
      • removedInput schema / properties / incluir_grupos / title
        Removed value: -"Incluir Grupos"
      • removedInput schema / title
        Removed value: -"audit_bce_catalogArguments"
      • removedOutput schema / title
        Removed value: -"audit_bce_catalogDictOutput"
    • Changedcompare_bce_sources7 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / guardar_revision / title
        Removed value: -"Guardar Revision"
      • removedInput schema / properties / historico / title
        Removed value: -"Historico"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"compare_bce_sourcesArguments"
      • removedOutput schema / title
        Removed value: -"compare_bce_sourcesDictOutput"
    • Changeddetect_series_pattern7 fields changed
      • removedInput schema / properties / dataset_id / title
        Removed value: -"Dataset Id"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / resource_id_new / title
        Removed value: -"Resource Id New"
      • removedInput schema / properties / resource_id_old / title
        Removed value: -"Resource Id Old"
      • removedInput schema / properties / source / title
        Removed value: -"Source"
      • removedInput schema / title
        Removed value: -"detect_series_patternArguments"
      • removedOutput schema / title
        Removed value: -"detect_series_patternDictOutput"
    • Changeddownload_anda_microdata4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / idno / title
        Removed value: -"Idno"
      • removedInput schema / title
        Removed value: -"download_anda_microdataArguments"
      • removedOutput schema / title
        Removed value: -"download_anda_microdataDictOutput"
    • Changeddownload_resource5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / resource_id / title
        Removed value: -"Resource Id"
      • removedInput schema / properties / source / title
        Removed value: -"Source"
      • removedInput schema / title
        Removed value: -"download_resourceArguments"
      • removedOutput schema / title
        Removed value: -"download_resourceDictOutput"
    • Changedget_aip_aerodromo4 fields changed
      • removedInput schema / properties / designador / title
        Removed value: -"Designador"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"get_aip_aerodromoArguments"
      • removedOutput schema / title
        Removed value: -"get_aip_aerodromoDictOutput"
    • Changedget_anda_survey_info4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / idno / title
        Removed value: -"Idno"
      • removedInput schema / title
        Removed value: -"get_anda_survey_infoArguments"
      • removedOutput schema / title
        Removed value: -"get_anda_survey_infoDictOutput"
    • Addedget_archivo_seccion
    • Changedget_arconel_reporte8 fields changed
      • removedInput schema / properties / anio / title
        Removed value: -"Anio"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / grupo / title
        Removed value: -"Grupo"
      • removedInput schema / properties / max_paginas / title
        Removed value: -"Max Paginas"
      • removedInput schema / properties / mes / title
        Removed value: -"Mes"
      • removedInput schema / properties / tipo / title
        Removed value: -"Tipo"
      • removedInput schema / title
        Removed value: -"get_arconel_reporteArguments"
      • removedOutput schema / title
        Removed value: -"get_arconel_reporteDictOutput"
    • Removedget_arcsa_categoria_archivos
    • Changedget_auditor_info4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / identificacion / title
        Removed value: -"Identificacion"
      • removedInput schema / title
        Removed value: -"get_auditor_infoArguments"
      • removedOutput schema / title
        Removed value: -"get_auditor_infoDictOutput"
    • Changedget_bce_cuentas_nacionales_archivo5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / max_archivos / title
        Removed value: -"Max Archivos"
      • removedInput schema / properties / pagina_id / title
        Removed value: -"Pagina Id"
      • removedInput schema / title
        Removed value: -"get_bce_cuentas_nacionales_archivoArguments"
      • removedOutput schema / title
        Removed value: -"get_bce_cuentas_nacionales_archivoDictOutput"
    • Changedget_bce_iem_table8 fields changed
      • removedInput schema / properties / boletin_numero / title
        Removed value: -"Boletin Numero"
      • removedInput schema / properties / desde / title
        Removed value: -"Desde"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / hasta / title
        Removed value: -"Hasta"
      • removedInput schema / properties / rows / title
        Removed value: -"Rows"
      • removedInput schema / properties / table_id / title
        Removed value: -"Table Id"
      • removedInput schema / title
        Removed value: -"get_bce_iem_tableArguments"
      • removedOutput schema / title
        Removed value: -"get_bce_iem_tableDictOutput"
    • Changedget_bce_indicador_diario8 fields changed
      • removedInput schema / properties / archivo / title
        Removed value: -"Archivo"
      • removedInput schema / properties / codigo / title
        Removed value: -"Codigo"
      • removedInput schema / properties / desde / title
        Removed value: -"Desde"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / hasta / title
        Removed value: -"Hasta"
      • removedInput schema / properties / ultimos_n / title
        Removed value: -"Ultimos N"
      • removedInput schema / title
        Removed value: -"get_bce_indicador_diarioArguments"
      • removedOutput schema / title
        Removed value: -"get_bce_indicador_diarioDictOutput"
    • Changedget_bce_indice_archivo6 fields changed
      • removedInput schema / properties / anio / title
        Removed value: -"Anio"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / max_archivos / title
        Removed value: -"Max Archivos"
      • removedInput schema / properties / pagina_id / title
        Removed value: -"Pagina Id"
      • removedInput schema / title
        Removed value: -"get_bce_indice_archivoArguments"
      • removedOutput schema / title
        Removed value: -"get_bce_indice_archivoDictOutput"
    • Changedget_category_info6 fields changed
      • removedInput schema / properties / category / title
        Removed value: -"Category"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / include_datasets / title
        Removed value: -"Include Datasets"
      • removedInput schema / properties / source / title
        Removed value: -"Source"
      • removedInput schema / title
        Removed value: -"get_category_infoArguments"
      • removedOutput schema / title
        Removed value: -"get_category_infoDictOutput"
    • Changedget_cenace_tablero4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / tablero / title
        Removed value: -"Tablero"
      • removedInput schema / title
        Removed value: -"get_cenace_tableroArguments"
      • removedOutput schema / title
        Removed value: -"get_cenace_tableroDictOutput"
    • Changedget_centrosur_cortes_horarios5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / url / title
        Removed value: -"Url"
      • removedInput schema / title
        Removed value: -"get_centrosur_cortes_horariosArguments"
      • removedOutput schema / title
        Removed value: -"get_centrosur_cortes_horariosDictOutput"
    • Changedget_cepalstat_indicador6 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / indicator_id / title
        Removed value: -"Indicator Id"
      • removedInput schema / properties / lang / title
        Removed value: -"Lang"
      • removedInput schema / properties / pais / title
        Removed value: -"Pais"
      • removedInput schema / title
        Removed value: -"get_cepalstat_indicadorArguments"
      • removedOutput schema / title
        Removed value: -"get_cepalstat_indicadorDictOutput"
    • Changedget_certificado_cumplimiento_patronal4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / identificacion / title
        Removed value: -"Identificacion"
      • removedInput schema / title
        Removed value: -"get_certificado_cumplimiento_patronalArguments"
      • removedOutput schema / title
        Removed value: -"get_certificado_cumplimiento_patronalDictOutput"
    • Changedget_compania_info4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / ruc / title
        Removed value: -"Ruc"
      • removedInput schema / title
        Removed value: -"get_compania_infoArguments"
      • removedOutput schema / title
        Removed value: -"get_compania_infoDictOutput"
    • Changedget_contraloria_informe5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / informe_id / title
        Removed value: -"Informe Id"
      • removedInput schema / properties / rows / title
        Removed value: -"Rows"
      • removedInput schema / title
        Removed value: -"get_contraloria_informeArguments"
      • removedOutput schema / title
        Removed value: -"get_contraloria_informeDictOutput"
    • Changedget_contrato_info4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / ocid / title
        Removed value: -"Ocid"
      • removedInput schema / title
        Removed value: -"get_contrato_infoArguments"
      • removedOutput schema / title
        Removed value: -"get_contrato_infoDictOutput"
    • Changedget_dataset_info5 fields changed
      • removedInput schema / properties / dataset_id / title
        Removed value: -"Dataset Id"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / source / title
        Removed value: -"Source"
      • removedInput schema / title
        Removed value: -"get_dataset_infoArguments"
      • removedOutput schema / title
        Removed value: -"get_dataset_infoDictOutput"
    • Changedget_eeq_cortes_horarios5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / slug / title
        Removed value: -"Slug"
      • removedInput schema / title
        Removed value: -"get_eeq_cortes_horariosArguments"
      • removedOutput schema / title
        Removed value: -"get_eeq_cortes_horariosDictOutput"
    • Changedget_energia_ecuador_snapshot4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"get_energia_ecuador_snapshotArguments"
      • removedOutput schema / title
        Removed value: -"get_energia_ecuador_snapshotDictOutput"
    • Changedget_financials5 fields changed
      • removedInput schema / properties / anio / title
        Removed value: -"Anio"
      • removedInput schema / properties / expediente_or_ruc / title
        Removed value: -"Expediente Or Ruc"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"get_financialsArguments"
      • removedOutput schema / title
        Removed value: -"get_financialsDictOutput"
    • Changedget_iess_archivos6 fields changed
      • removedInput schema / properties / anio / title
        Removed value: -"Anio"
      • removedInput schema / properties / coleccion / title
        Removed value: -"Coleccion"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"get_iess_archivosArguments"
      • removedOutput schema / title
        Removed value: -"get_iess_archivosDictOutput"
    • Changedget_inamhi_capa_datos5 fields changed
      • removedInput schema / properties / count / title
        Removed value: -"Count"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / layer_name / title
        Removed value: -"Layer Name"
      • removedInput schema / title
        Removed value: -"get_inamhi_capa_datosArguments"
      • removedOutput schema / title
        Removed value: -"get_inamhi_capa_datosDictOutput"
    • Changedget_indicador_bce8 fields changed
      • removedInput schema / properties / desde / title
        Removed value: -"Desde"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / frecuencia / title
        Removed value: -"Frecuencia"
      • removedInput schema / properties / hasta / title
        Removed value: -"Hasta"
      • removedInput schema / properties / id_grupo / title
        Removed value: -"Id Grupo"
      • removedInput schema / properties / unidad / title
        Removed value: -"Unidad"
      • removedInput schema / title
        Removed value: -"get_indicador_bceArguments"
      • removedOutput schema / title
        Removed value: -"get_indicador_bceDictOutput"
    • Changedget_inec_estadistica_files4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / url / title
        Removed value: -"Url"
      • removedInput schema / title
        Removed value: -"get_inec_estadistica_filesArguments"
      • removedOutput schema / title
        Removed value: -"get_inec_estadistica_filesDictOutput"
    • Changedget_inec_publicacion_archivos4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / post / title
        Removed value: -"Post"
      • removedInput schema / title
        Removed value: -"get_inec_publicacion_archivosArguments"
      • removedOutput schema / title
        Removed value: -"get_inec_publicacion_archivosDictOutput"
    • Removedget_ineval_familia_archivos
    • Changedget_informe_igepn8 fields changed
      • removedInput schema / properties / anio / title
        Removed value: -"Anio"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / grupo / title
        Removed value: -"Grupo"
      • removedInput schema / properties / nombre / title
        Removed value: -"Nombre"
      • removedInput schema / properties / pages / title
        Removed value: -"Pages"
      • removedInput schema / properties / volcan / title
        Removed value: -"Volcan"
      • removedInput schema / title
        Removed value: -"get_informe_igepnArguments"
      • removedOutput schema / title
        Removed value: -"get_informe_igepnDictOutput"
    • Changedget_institucion_info4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / institucion_id / title
        Removed value: -"Institucion Id"
      • removedInput schema / title
        Removed value: -"get_institucion_infoArguments"
      • removedOutput schema / title
        Removed value: -"get_institucion_infoDictOutput"
    • Changedget_metar4 fields changed
      • removedInput schema / properties / designador / title
        Removed value: -"Designador"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"get_metarArguments"
      • removedOutput schema / title
        Removed value: -"get_metarDictOutput"
    • Changedget_notam4 fields changed
      • removedInput schema / properties / designador / title
        Removed value: -"Designador"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"get_notamArguments"
      • removedOutput schema / title
        Removed value: -"get_notamDictOutput"
    • Changedget_organization_info6 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / organization_id / title
        Removed value: -"Organization Id"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / source / title
        Removed value: -"Source"
      • removedInput schema / title
        Removed value: -"get_organization_infoArguments"
      • removedOutput schema / title
        Removed value: -"get_organization_infoDictOutput"
    • Changedget_regulacion_info4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / regulacion_id / title
        Removed value: -"Regulacion Id"
      • removedInput schema / title
        Removed value: -"get_regulacion_infoArguments"
      • removedOutput schema / title
        Removed value: -"get_regulacion_infoDictOutput"
    • Changedget_resource_info5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / resource_id / title
        Removed value: -"Resource Id"
      • removedInput schema / properties / source / title
        Removed value: -"Source"
      • removedInput schema / title
        Removed value: -"get_resource_infoArguments"
      • removedOutput schema / title
        Removed value: -"get_resource_infoDictOutput"
    • Removedget_senescyt_biblioteca_categoria_archivos
    • Removedget_seps_seccion_archivos
    • Removedget_sgr_biblioteca_categoria_archivos
    • Changedget_sgr_sitrep_archivos4 fields changed
      • removedInput schema / properties / evento_url / title
        Removed value: -"Evento Url"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"get_sgr_sitrep_archivosArguments"
      • removedOutput schema / title
        Removed value: -"get_sgr_sitrep_archivosDictOutput"
    • Changedget_sigmet3 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"get_sigmetArguments"
      • removedOutput schema / title
        Removed value: -"get_sigmetDictOutput"
    • Changedget_sipa_geoportal_capa_datos5 fields changed
      • removedInput schema / properties / count / title
        Removed value: -"Count"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / layer_id / title
        Removed value: -"Layer Id"
      • removedInput schema / title
        Removed value: -"get_sipa_geoportal_capa_datosArguments"
      • removedOutput schema / title
        Removed value: -"get_sipa_geoportal_capa_datosDictOutput"
    • Removedget_sipa_modulo_archivos
    • Changedget_sipa_resumen_indicadores4 fields changed
      • removedInput schema / properties / anio / title
        Removed value: -"Anio"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"get_sipa_resumen_indicadoresArguments"
      • removedOutput schema / title
        Removed value: -"get_sipa_resumen_indicadoresDictOutput"
    • Changedget_sri_ruc_info5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / include_establecimientos / title
        Removed value: -"Include Establecimientos"
      • removedInput schema / properties / ruc / title
        Removed value: -"Ruc"
      • removedInput schema / title
        Removed value: -"get_sri_ruc_infoArguments"
      • removedOutput schema / title
        Removed value: -"get_sri_ruc_infoDictOutput"
    • Removedget_superbancos_seccion_archivos
    • Changedget_sut_indicador_schema4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / indicador / title
        Removed value: -"Indicador"
      • removedInput schema / title
        Removed value: -"get_sut_indicador_schemaArguments"
      • removedOutput schema / title
        Removed value: -"get_sut_indicador_schemaDictOutput"
    • Changedget_tramite_estadisticas4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / tramite_id / title
        Removed value: -"Tramite Id"
      • removedInput schema / title
        Removed value: -"get_tramite_estadisticasArguments"
      • removedOutput schema / title
        Removed value: -"get_tramite_estadisticasDictOutput"
    • Changedget_tramite_info4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / tramite_id / title
        Removed value: -"Tramite Id"
      • removedInput schema / title
        Removed value: -"get_tramite_infoArguments"
      • removedOutput schema / title
        Removed value: -"get_tramite_infoDictOutput"
    • Changedinvestigate_dataset6 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / preview_rows / title
        Removed value: -"Preview Rows"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / source / title
        Removed value: -"Source"
      • removedInput schema / title
        Removed value: -"investigate_datasetArguments"
      • removedOutput schema / title
        Removed value: -"investigate_datasetDictOutput"
    • Changedlist_aip_aerodromos3 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"list_aip_aerodromosArguments"
      • removedOutput schema / title
        Removed value: -"list_aip_aerodromosDictOutput"
    • Addedlist_archivo_secciones
    • Changedlist_arconel_reportes3 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"list_arconel_reportesArguments"
      • removedOutput schema / title
        Removed value: -"list_arconel_reportesDictOutput"
    • Removedlist_arcsa_categorias
    • Changedlist_bce_indicadores_diarios3 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"list_bce_indicadores_diariosArguments"
      • removedOutput schema / title
        Removed value: -"list_bce_indicadores_diariosDictOutput"
    • Changedlist_capabilities3 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"list_capabilitiesArguments"
      • removedOutput schema / title
        Removed value: -"list_capabilitiesDictOutput"
    • Changedlist_categories4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / source / title
        Removed value: -"Source"
      • removedInput schema / title
        Removed value: -"list_categoriesArguments"
      • removedOutput schema / title
        Removed value: -"list_categoriesDictOutput"
    • Changedlist_contraloria_informes3 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"list_contraloria_informesArguments"
      • removedOutput schema / title
        Removed value: -"list_contraloria_informesDictOutput"
    • Changedlist_dataset_resources5 fields changed
      • removedInput schema / properties / dataset_id / title
        Removed value: -"Dataset Id"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / source / title
        Removed value: -"Source"
      • removedInput schema / title
        Removed value: -"list_dataset_resourcesArguments"
      • removedOutput schema / title
        Removed value: -"list_dataset_resourcesDictOutput"
    • Changedlist_iess_colecciones3 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"list_iess_coleccionesArguments"
      • removedOutput schema / title
        Removed value: -"list_iess_coleccionesDictOutput"
    • Removedlist_ineval_familias
    • Changedlist_instituciones5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / page / title
        Removed value: -"Page"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"list_institucionesArguments"
      • removedOutput schema / title
        Removed value: -"list_institucionesDictOutput"
    • Changedlist_sat_tsunami4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / title
        Removed value: -"list_sat_tsunamiArguments"
      • removedOutput schema / title
        Removed value: -"list_sat_tsunamiDictOutput"
    • Removedlist_senescyt_biblioteca_categorias
    • Removedlist_seps_secciones
    • Removedlist_sgr_biblioteca_categorias
    • Removedlist_sipa_modulos
    • Removedlist_superbancos_secciones
    • Changedlist_sut_indicadores3 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"list_sut_indicadoresArguments"
      • removedOutput schema / title
        Removed value: -"list_sut_indicadoresDictOutput"
    • Changedlist_zip_contents6 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / offset / title
        Removed value: -"Offset"
      • removedInput schema / properties / url / title
        Removed value: -"Url"
      • removedInput schema / title
        Removed value: -"list_zip_contentsArguments"
      • removedOutput schema / title
        Removed value: -"list_zip_contentsDictOutput"
    • Changedlookup_ubicacion8 fields changed
      • removedInput schema / properties / canton / title
        Removed value: -"Canton"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / nivel / title
        Removed value: -"Nivel"
      • removedInput schema / properties / provincia / title
        Removed value: -"Provincia"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / region / title
        Removed value: -"Region"
      • removedInput schema / title
        Removed value: -"lookup_ubicacionArguments"
      • removedOutput schema / title
        Removed value: -"lookup_ubicacionDictOutput"
    • Changedpreview_resource_data6 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / resource_id / title
        Removed value: -"Resource Id"
      • removedInput schema / properties / rows / title
        Removed value: -"Rows"
      • removedInput schema / properties / source / title
        Removed value: -"Source"
      • removedInput schema / title
        Removed value: -"preview_resource_dataArguments"
      • removedOutput schema / title
        Removed value: -"preview_resource_dataDictOutput"
    • Changedquery_resource_data10 fields changed
      • removedInput schema / properties / filters_json / title
        Removed value: -"Filters Json"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / offset / title
        Removed value: -"Offset"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / resource_id / title
        Removed value: -"Resource Id"
      • removedInput schema / properties / rows / title
        Removed value: -"Rows"
      • removedInput schema / properties / sort / title
        Removed value: -"Sort"
      • removedInput schema / properties / source / title
        Removed value: -"Source"
      • removedInput schema / title
        Removed value: -"query_resource_dataArguments"
      • removedOutput schema / title
        Removed value: -"query_resource_dataDictOutput"
    • Changedquery_sut_indicador7 fields changed
      • removedInput schema / properties / campos / title
        Removed value: -"Campos"
      • removedInput schema / properties / filtros / title
        Removed value: -"Filtros"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / indicador / title
        Removed value: -"Indicador"
      • removedInput schema / properties / limite / title
        Removed value: -"Limite"
      • removedInput schema / title
        Removed value: -"query_sut_indicadorArguments"
      • removedOutput schema / title
        Removed value: -"query_sut_indicadorDictOutput"
    • Changedread_pdf5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / pages / title
        Removed value: -"Pages"
      • removedInput schema / properties / url / title
        Removed value: -"Url"
      • removedInput schema / title
        Removed value: -"read_pdfArguments"
      • removedOutput schema / title
        Removed value: -"read_pdfDictOutput"
    • Changedsearch_anda5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_andaArguments"
      • removedOutput schema / title
        Removed value: -"search_andaDictOutput"
    • Changedsearch_arcotel5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / tipo / title
        Removed value: -"Tipo"
      • removedInput schema / title
        Removed value: -"search_arcotelArguments"
      • removedOutput schema / title
        Removed value: -"search_arcotelDictOutput"
    • Changedsearch_auditores7 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / offset / title
        Removed value: -"Offset"
      • removedInput schema / properties / provincia / title
        Removed value: -"Provincia"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_auditoresArguments"
      • removedOutput schema / title
        Removed value: -"search_auditoresDictOutput"
    • Changedsearch_bce_calendario11 fields changed
      • removedInput schema / properties / categoria / title
        Removed value: -"Categoria"
      • removedInput schema / properties / desde / title
        Removed value: -"Desde"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / hasta / title
        Removed value: -"Hasta"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / offset / title
        Removed value: -"Offset"
      • removedInput schema / properties / periodicidad / title
        Removed value: -"Periodicidad"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / solo_proximas / title
        Removed value: -"Solo Proximas"
      • removedInput schema / title
        Removed value: -"search_bce_calendarioArguments"
      • removedOutput schema / title
        Removed value: -"search_bce_calendarioDictOutput"
    • Changedsearch_bce_cuentas_nacionales4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_bce_cuentas_nacionalesArguments"
      • removedOutput schema / title
        Removed value: -"search_bce_cuentas_nacionalesDictOutput"
    • Changedsearch_bce_iem12 fields changed
      • removedInput schema / properties / desde_anio / title
        Removed value: -"Desde Anio"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / guardar_catalogo / title
        Removed value: -"Guardar Catalogo"
      • removedInput schema / properties / hash_archivos / title
        Removed value: -"Hash Archivos"
      • removedInput schema / properties / hasta_anio / title
        Removed value: -"Hasta Anio"
      • removedInput schema / properties / historico / title
        Removed value: -"Historico"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / max_hash_archivos / title
        Removed value: -"Max Hash Archivos"
      • removedInput schema / properties / offset / title
        Removed value: -"Offset"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_bce_iemArguments"
      • removedOutput schema / title
        Removed value: -"search_bce_iemDictOutput"
    • Changedsearch_bce_indices4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_bce_indicesArguments"
      • removedOutput schema / title
        Removed value: -"search_bce_indicesDictOutput"
    • Changedsearch_bce_precios_comex4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_bce_precios_comexArguments"
      • removedOutput schema / title
        Removed value: -"search_bce_precios_comexDictOutput"
    • Changedsearch_bce_publicaciones5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / formato / title
        Removed value: -"Formato"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_bce_publicacionesArguments"
      • removedOutput schema / title
        Removed value: -"search_bce_publicacionesDictOutput"
    • Changedsearch_bce_remesas4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_bce_remesasArguments"
      • removedOutput schema / title
        Removed value: -"search_bce_remesasDictOutput"
    • Changedsearch_biinec_extras4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_biinec_extrasArguments"
      • removedOutput schema / title
        Removed value: -"search_biinec_extrasDictOutput"
    • Changedsearch_censo_recursos6 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / offset / title
        Removed value: -"Offset"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_censo_recursosArguments"
      • removedOutput schema / title
        Removed value: -"search_censo_recursosDictOutput"
    • Changedsearch_centrosur_cortes4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_centrosur_cortesArguments"
      • removedOutput schema / title
        Removed value: -"search_centrosur_cortesDictOutput"
    • Changedsearch_cepalstat_indicadores5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / lang / title
        Removed value: -"Lang"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_cepalstat_indicadoresArguments"
      • removedOutput schema / title
        Removed value: -"search_cepalstat_indicadoresDictOutput"
    • Changedsearch_cnig_femicidios4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_cnig_femicidiosArguments"
      • removedOutput schema / title
        Removed value: -"search_cnig_femicidiosDictOutput"
    • Changedsearch_companias8 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / offset / title
        Removed value: -"Offset"
      • removedInput schema / properties / provincia / title
        Removed value: -"Provincia"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / situacion_legal / title
        Removed value: -"Situacion Legal"
      • removedInput schema / title
        Removed value: -"search_companiasArguments"
      • removedOutput schema / title
        Removed value: -"search_companiasDictOutput"
    • Changedsearch_contratos8 fields changed
      • removedInput schema / properties / buyer / title
        Removed value: -"Buyer"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / page / title
        Removed value: -"Page"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / supplier / title
        Removed value: -"Supplier"
      • removedInput schema / properties / year / title
        Removed value: -"Year"
      • removedInput schema / title
        Removed value: -"search_contratosArguments"
      • removedOutput schema / title
        Removed value: -"search_contratosDictOutput"
    • Changedsearch_datasets9 fields changed
      • removedInput schema / properties / category / title
        Removed value: -"Category"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / page / title
        Removed value: -"Page"
      • removedInput schema / properties / page_size / title
        Removed value: -"Page Size"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / sort / title
        Removed value: -"Sort"
      • removedInput schema / properties / source / title
        Removed value: -"Source"
      • removedInput schema / title
        Removed value: -"search_datasetsArguments"
      • removedOutput schema / title
        Removed value: -"search_datasetsDictOutput"
    • Changedsearch_ecuador5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_ecuadorArguments"
      • removedOutput schema / title
        Removed value: -"search_ecuadorDictOutput"
    • Changedsearch_eeq_cortes4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_eeq_cortesArguments"
      • removedOutput schema / title
        Removed value: -"search_eeq_cortesDictOutput"
    • Changedsearch_eventos_riesgo9 fields changed
      • removedInput schema / properties / canton / title
        Removed value: -"Canton"
      • removedInput schema / properties / estado / title
        Removed value: -"Estado"
      • removedInput schema / properties / evento / title
        Removed value: -"Evento"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / provincia / title
        Removed value: -"Provincia"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_eventos_riesgoArguments"
      • removedOutput schema / title
        Removed value: -"search_eventos_riesgoDictOutput"
    • Changedsearch_gacetas_inmunoprevenibles4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_gacetas_inmunopreveniblesArguments"
      • removedOutput schema / title
        Removed value: -"search_gacetas_inmunopreveniblesDictOutput"
    • Changedsearch_inamhi_capas5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / solo_wfs / title
        Removed value: -"Solo Wfs"
      • removedInput schema / title
        Removed value: -"search_inamhi_capasArguments"
      • removedOutput schema / title
        Removed value: -"search_inamhi_capasDictOutput"
    • Changedsearch_indicadores_bce6 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / offset / title
        Removed value: -"Offset"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_indicadores_bceArguments"
      • removedOutput schema / title
        Removed value: -"search_indicadores_bceDictOutput"
    • Changedsearch_inec_estadisticas6 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / offset / title
        Removed value: -"Offset"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_inec_estadisticasArguments"
      • removedOutput schema / title
        Removed value: -"search_inec_estadisticasDictOutput"
    • Changedsearch_inec_publicaciones6 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / offset / title
        Removed value: -"Offset"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_inec_publicacionesArguments"
      • removedOutput schema / title
        Removed value: -"search_inec_publicacionesDictOutput"
    • Changedsearch_infomies_bases_mensuales6 fields changed
      • removedInput schema / properties / anio / title
        Removed value: -"Anio"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / serie / title
        Removed value: -"Serie"
      • removedInput schema / title
        Removed value: -"search_infomies_bases_mensualesArguments"
      • removedOutput schema / title
        Removed value: -"search_infomies_bases_mensualesDictOutput"
    • Changedsearch_infomies_boletines_zonales7 fields changed
      • removedInput schema / properties / anio / title
        Removed value: -"Anio"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / modo / title
        Removed value: -"Modo"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / zona / title
        Removed value: -"Zona"
      • removedInput schema / title
        Removed value: -"search_infomies_boletines_zonalesArguments"
      • removedOutput schema / title
        Removed value: -"search_infomies_boletines_zonalesDictOutput"
    • Changedsearch_informes_igepn7 fields changed
      • removedInput schema / properties / anio / title
        Removed value: -"Anio"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / grupo / title
        Removed value: -"Grupo"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_informes_igepnArguments"
      • removedOutput schema / title
        Removed value: -"search_informes_igepnDictOutput"
    • Changedsearch_mef_fiscal5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / fuente / title
        Removed value: -"Fuente"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_mef_fiscalArguments"
      • removedOutput schema / title
        Removed value: -"search_mef_fiscalDictOutput"
    • Changedsearch_minedec_matricula4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_minedec_matriculaArguments"
      • removedOutput schema / title
        Removed value: -"search_minedec_matriculaDictOutput"
    • Changedsearch_organizations7 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / page / title
        Removed value: -"Page"
      • removedInput schema / properties / page_size / title
        Removed value: -"Page Size"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / source / title
        Removed value: -"Source"
      • removedInput schema / title
        Removed value: -"search_organizationsArguments"
      • removedOutput schema / title
        Removed value: -"search_organizationsDictOutput"
    • Changedsearch_ranking9 fields changed
      • removedInput schema / properties / anio / title
        Removed value: -"Anio"
      • removedInput schema / properties / ciiu_n1 / title
        Removed value: -"Ciiu N1"
      • removedInput schema / properties / descending / title
        Removed value: -"Descending"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / offset / title
        Removed value: -"Offset"
      • removedInput schema / properties / order_by / title
        Removed value: -"Order By"
      • removedInput schema / title
        Removed value: -"search_rankingArguments"
      • removedOutput schema / title
        Removed value: -"search_rankingDictOutput"
    • Changedsearch_regulaciones5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / page / title
        Removed value: -"Page"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_regulacionesArguments"
      • removedOutput schema / title
        Removed value: -"search_regulacionesDictOutput"
    • Changedsearch_salarios_sectoriales4 fields changed
      • removedInput schema / properties / anio / title
        Removed value: -"Anio"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / title
        Removed value: -"search_salarios_sectorialesArguments"
      • removedOutput schema / title
        Removed value: -"search_salarios_sectorialesDictOutput"
    • Changedsearch_senescyt_estadisticas4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_senescyt_estadisticasArguments"
      • removedOutput schema / title
        Removed value: -"search_senescyt_estadisticasDictOutput"
    • Changedsearch_sgr_sitreps4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_sgr_sitrepsArguments"
      • removedOutput schema / title
        Removed value: -"search_sgr_sitrepsDictOutput"
    • Changedsearch_sipa_geoportal_capas6 fields changed
      • removedInput schema / properties / categoria / title
        Removed value: -"Categoria"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / properties / solo_wfs / title
        Removed value: -"Solo Wfs"
      • removedInput schema / title
        Removed value: -"search_sipa_geoportal_capasArguments"
      • removedOutput schema / title
        Removed value: -"search_sipa_geoportal_capasDictOutput"
    • Changedsearch_sismos7 fields changed
      • removedInput schema / properties / dias / title
        Removed value: -"Dias"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / magnitud_minima / title
        Removed value: -"Magnitud Minima"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_sismosArguments"
      • removedOutput schema / title
        Removed value: -"search_sismosDictOutput"
    • Changedsearch_sri_datasets6 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / offset / title
        Removed value: -"Offset"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_sri_datasetsArguments"
      • removedOutput schema / title
        Removed value: -"search_sri_datasetsDictOutput"
    • Changedsearch_sri_estadisticas_recaudacion6 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / offset / title
        Removed value: -"Offset"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_sri_estadisticas_recaudacionArguments"
      • removedOutput schema / title
        Removed value: -"search_sri_estadisticas_recaudacionDictOutput"
    • Changedsearch_sri_ruc5 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / max_resultados / title
        Removed value: -"Max Resultados"
      • removedInput schema / properties / razon_social / title
        Removed value: -"Razon Social"
      • removedInput schema / title
        Removed value: -"search_sri_rucArguments"
      • removedOutput schema / title
        Removed value: -"search_sri_rucDictOutput"
    • Changedsearch_trabajo_boletin_anual4 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_trabajo_boletin_anualArguments"
      • removedOutput schema / title
        Removed value: -"search_trabajo_boletin_anualDictOutput"
    • Changedsearch_tramites6 fields changed
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / institution_id / title
        Removed value: -"Institution Id"
      • removedInput schema / properties / page / title
        Removed value: -"Page"
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"search_tramitesArguments"
      • removedOutput schema / title
        Removed value: -"search_tramitesDictOutput"
  6. 121 tool updatesv0.8.12
    • First observedaudit_bce_catalog
    • First observedcompare_bce_sources
    • First observeddetect_series_pattern
    • First observeddownload_anda_microdata
    • First observeddownload_resource
    • First observedget_aip_aerodromo
    • First observedget_anda_survey_info
    • First observedget_arconel_reporte
    • First observedget_arcsa_categoria_archivos
    • First observedget_auditor_info
    • First observedget_bce_cuentas_nacionales_archivo
    • First observedget_bce_iem_table
    • First observedget_bce_indicador_diario
    • First observedget_bce_indice_archivo
    • First observedget_category_info
    • First observedget_cenace_tablero
    • First observedget_centrosur_cortes_horarios
    • First observedget_cepalstat_indicador
    • First observedget_certificado_cumplimiento_patronal
    • First observedget_compania_info
    • First observedget_contraloria_informe
    • First observedget_contrato_info
    • First observedget_dataset_info
    • First observedget_eeq_cortes_horarios
    • First observedget_energia_ecuador_snapshot
    • First observedget_financials
    • First observedget_iess_archivos
    • First observedget_inamhi_capa_datos
    • First observedget_indicador_bce
    • First observedget_inec_estadistica_files
    • First observedget_inec_publicacion_archivos
    • First observedget_ineval_familia_archivos
    • First observedget_informe_igepn
    • First observedget_institucion_info
    • First observedget_metar
    • First observedget_notam
    • First observedget_organization_info
    • First observedget_regulacion_info
    • First observedget_resource_info
    • First observedget_senescyt_biblioteca_categoria_archivos
    • First observedget_seps_seccion_archivos
    • First observedget_sgr_biblioteca_categoria_archivos
    • First observedget_sgr_sitrep_archivos
    • First observedget_sigmet
    • First observedget_sipa_geoportal_capa_datos
    • First observedget_sipa_modulo_archivos
    • First observedget_sipa_resumen_indicadores
    • First observedget_sri_ruc_info
    • First observedget_superbancos_seccion_archivos
    • First observedget_sut_indicador_schema
    • First observedget_tramite_estadisticas
    • First observedget_tramite_info
    • First observedinvestigate_dataset
    • First observedlist_aip_aerodromos
    • First observedlist_arconel_reportes
    • First observedlist_arcsa_categorias
    • First observedlist_bce_indicadores_diarios
    • First observedlist_capabilities
    • First observedlist_categories
    • First observedlist_contraloria_informes
    • First observedlist_dataset_resources
    • First observedlist_iess_colecciones
    • First observedlist_ineval_familias
    • First observedlist_instituciones
    • First observedlist_sat_tsunami
    • First observedlist_senescyt_biblioteca_categorias
    • First observedlist_seps_secciones
    • First observedlist_sgr_biblioteca_categorias
    • First observedlist_sipa_modulos
    • First observedlist_superbancos_secciones
    • First observedlist_sut_indicadores
    • First observedlist_zip_contents
    • First observedlookup_ubicacion
    • First observedpreview_resource_data
    • First observedquery_resource_data
    • First observedquery_sut_indicador
    • First observedread_pdf
    • First observedsearch_anda
    • First observedsearch_arcotel
    • First observedsearch_auditores
    • First observedsearch_bce_calendario
    • First observedsearch_bce_cuentas_nacionales
    • First observedsearch_bce_iem
    • First observedsearch_bce_indices
    • First observedsearch_bce_precios_comex
    • First observedsearch_bce_publicaciones
    • First observedsearch_bce_remesas
    • First observedsearch_biinec_extras
    • First observedsearch_censo_recursos
    • First observedsearch_centrosur_cortes
    • First observedsearch_cepalstat_indicadores
    • First observedsearch_cnig_femicidios
    • First observedsearch_companias
    • First observedsearch_contratos
    • First observedsearch_datasets
    • First observedsearch_ecuador
    • First observedsearch_eeq_cortes
    • First observedsearch_eventos_riesgo
    • First observedsearch_gacetas_inmunoprevenibles
    • First observedsearch_inamhi_capas
    • First observedsearch_indicadores_bce
    • First observedsearch_inec_estadisticas
    • First observedsearch_inec_publicaciones
    • First observedsearch_infomies_bases_mensuales
    • First observedsearch_infomies_boletines_zonales
    • First observedsearch_informes_igepn
    • First observedsearch_mef_fiscal
    • First observedsearch_minedec_matricula
    • First observedsearch_organizations
    • First observedsearch_ranking
    • First observedsearch_regulaciones
    • First observedsearch_salarios_sectoriales
    • First observedsearch_senescyt_estadisticas
    • First observedsearch_sgr_sitreps
    • First observedsearch_sipa_geoportal_capas
    • First observedsearch_sismos
    • First observedsearch_sri_datasets
    • First observedsearch_sri_estadisticas_recaudacion
    • First observedsearch_sri_ruc
    • First observedsearch_trabajo_boletin_anual
    • First observedsearch_tramites

TDQS

A3.6/5.0

Scored across 83 tools

Disambiguation4/5

Most tools have clearly distinct scopes, with descriptions that explicitly map each search tool to its source and next-step getters. A few boundaries (e.g., search_inec_publicaciones vs search_inec_estadisticas, search_archivos vs list_catalogo) require careful reading, but the overall set is navigable.

Naming Consistency5/5

Tool names follow a consistent snake_case verb_noun pattern throughout (search_*, get_*, list_*, query_*, download_*, etc.). Minor acronyms like SRI and IESS are used uniformly and do not break the convention.

Tool Count1/5

83 tools is an extreme mismatch for any server surface, far beyond the typical 3–15 range. Even with a broad multi-source domain, this volume imposes high cognitive load and makes tool selection impractical.

Completeness4/5

The surface covers an unusually wide range of Ecuadorian public data sources with search, metadata, download, and preview operations for each. Minor gaps exist for some niche datasets, but most domains have a full search-to-retrieval path.

Maintenance

ActivityActive
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to search, read, and explore thousands of public datasets from Chile's open government data portal (datos.gob.cl) without requiring an API key.
    9 npm
    1
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI agents to query Uruguay's open government data from multiple sources (national catalog, Central Bank, statistics institute, Montevideo city data and transport, and gub.uy service catalog) through a meta-discovery layer.
    5
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables AI assistants to search, explore, and query any CKAN open data portal through natural language, making public datasets accessible without requiring knowledge of the portal's API.
    20
    596 npm
    60
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Connect your ads, shop, analytics, social, CRM and finance platforms once, then let Claude, ChatGPT, Cursor or any MCP client read, join and explain your numbers. Public statistics from the World Bank, IMF, Eurostat, OECD, WHO and SEC filings come as context, searchable and chartable from the same tools. Read-only by design, every number carries its source.
    57
    340 npm
    2
    MIT