Skip to main content
Glama

Buscar convocatorias abiertas

buscar_convocatorias
Read-onlyIdempotent

Busca convocatorias de premios y concursos literarios con el plazo abierto: por texto, género, lengua, plazo, edad de quien escribe, cuota, dotación y ámbito. Devuelve primero las que cierran antes, con su página en Convoca y sus bases. Un null no consta en la fuente. Cada convocatoria dice en por_comprobar qué filtro pasa solo porque el dato no consta (compruébalo en las bases), y fuera_por_no_constar cuenta las que un filtro dejó fuera por no tener el dato. Para verlas todas, sigue con el cursor «siguiente»; con breve, cada una en pocos campos, y ver_convocatoria la amplía.

Input Schema

NameRequiredDescriptionDefault
edadNoEdad de quien escribe: quita las que piden otra edad. Las que no dicen edad se quedan.
breveNoCada convocatoria en pocos campos (id, título, cierre, dotación, enlaces y lo que queda por comprobar). ver_convocatoria da el resto.
textoNoPalabras del título o de quien convoca, p. ej. «Sant Jordi» o «Ayuntamiento de Elche».
ambitoNoÁmbito del concurso según la fuente. Las que no lo dicen se quedan.
cursorNoEl «siguiente» de la respuesta anterior, para seguir por donde iba, con los mismos filtros.
generoNocuento es relato y microrrelato; teatro incluye guion; traduccion_ensayo, ensayo y traducción. Las bases que dicen «narrativa» sin más salen con cuento y con novela. La literatura para la infancia no es un género: pide para_la_infancia.
lenguaNoLengua en la que se puede escribir la obra.
limiteNoCuántas devolver como mucho (15 si no se dice).
sin_cuotaNoQuita las que piden pagar por presentarse. Las que no dicen nada de la cuota se quedan, con «cuota» en por_comprobar: casi todas las que hablan de la cuota son gratis, pero hay que mirarlo en las bases.
premio_minimoNoDotación mínima en euros.
cierra_antes_deNoAAAA-MM-DD: solo las que cierran ese día o antes.
para_la_infanciaNoSolo las de literatura para niños y jóvenes (temática «infantil»). Un concurso donde escriben menores no lo es: eso se pide con edad.
solo_sin_residenciaNoSolo las que no piden residir en un sitio concreto.
incluir_por_designacionNoIncluir premios a los que no se presenta una misma, porque las candidaturas las proponen terceros.

Output Schema

NameRequiredDescriptionDefault
avisoNo
totalYesCuántos casan con la búsqueda, en todas las páginas.
ultimaNoPosición del último de esta página.
primeraNoPosición del primero de esta página, desde 1.
datos_deYesCuándo se generaron los datos (ISO 8601): la instantánea.
devueltasYes
siguienteYesCursor de la página siguiente: pásalo en «cursor». null si no hay más.
convocatoriasYes
fuera_por_no_constarNoPor filtro, cuántas quitó porque no tenían el dato.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / genero / description
      Previous value: -"cuento es relato y microrrelato; teatro incluye guion; traduccion_ensayo, ensayo y traducción. La literatura para la infancia no es un género: pide para_la_infancia."New value: +"cuento es relato y microrrelato; teatro incluye guion; traduccion_ensayo, ensayo y traducción. Las bases que dicen «narrativa» sin más salen con cuento y con novela. La literatura para la infancia no es un género: pide para_la_infancia."
  2. Changed1 schema field changed
    • addedInput schema / properties / ambito / description
      Added value: +"Ámbito del concurso según la fuente. Las que no lo dicen se quedan."
  3. Changed4 schema fields changed
    • changedInput schema / properties / genero / description
      Previous value: -"cuento es relato y microrrelato; teatro incluye guion; traduccion_ensayo, ensayo y traducción."New value: +"cuento es relato y microrrelato; teatro incluye guion; traduccion_ensayo, ensayo y traducción. La literatura para la infancia no es un género: pide para_la_infancia."
    • changedInput schema / properties / genero / enum
      Previous value: -[
      -  "poesia",
      -  "novela",
      -  "cuento",
      -  "teatro",
      -  "comic",
      -  "infantil_juvenil",
      -  "traduccion_ensayo",
      -  "no_ficcion",
      -  "obra_publicada",
      -  "otro"
      -]New value: +[
      +  "poesia",
      +  "novela",
      +  "cuento",
      +  "teatro",
      +  "comic",
      +  "traduccion_ensayo",
      +  "no_ficcion",
      +  "obra_publicada",
      +  "otro"
      +]
    • addedInput schema / properties / para_la_infancia
      Added value: +{
      +  "description": "Solo las de literatura para niños y jóvenes (temática «infantil»). Un concurso donde escriben menores no lo es: eso se pide con edad.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / convocatorias / items / properties / tematicas
      Added value: +{
      +  "description": "Etiquetas; «infantil» es literatura para niños y jóvenes.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
  4. Changed1 schema field changed
    • changedInput schema / properties / sin_cuota / description
      Previous value: -"Solo las que dicen que presentarse es gratis. Las que no dicen nada de la cuota se quitan."New value: +"Quita las que piden pagar por presentarse. Las que no dicen nada de la cuota se quedan, con «cuota» en por_comprobar: casi todas las que hablan de la cuota son gratis, pero hay que mirarlo en las bases."
  5. Changed3 schema fields changed
    • addedInput schema / properties / breve
      Added value: +{
      +  "default": false,
      +  "description": "Cada convocatoria en pocos campos (id, título, cierre, dotación, enlaces y lo que queda por comprobar). ver_convocatoria da el resto.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / cursor
      Added value: +{
      +  "description": "El «siguiente» de la respuesta anterior, para seguir por donde iba, con los mismos filtros.",
      +  "maxLength": 300,
      +  "type": "string"
      +}
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "aviso": {
      +      "type": "string"
      +    },
      +    "convocatorias": {
      +      "items": {
      +        "properties": {
      +          "ambito": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "bases": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "cierre": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "condiciones": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "cuota": {
      +            "type": "string"
      +          },
      +          "dias_restantes": {
      +            "type": [
      +              "integer",
      +              "null"
      +            ]
      +          },
      +          "entidad": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "extension": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "extension_max": {
      +            "type": [
      +              "number",
      +              "null"
      +            ]
      +          },
      +          "extension_min": {
      +            "type": [
      +              "number",
      +              "null"
      +            ]
      +          },
      +          "extension_unidad": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "fuente": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "generos": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "id": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "lectura_de_bases": {
      +            "description": "Cómo leyó Convoca las bases; null si no las leyó.",
      +            "properties": {
      +              "comprobadas": {
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              },
      +              "documento": {
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              },
      +              "leidas": {
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              },
      +              "parcial": {
      +                "type": [
      +                  "boolean",
      +                  "null"
      +                ]
      +              }
      +            },
      +            "type": [
      +              "object",
      +              "null"
      +            ]
      +          },
      +          "lenguas": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "pagina": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "plazo_calculado": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "plazo_sin_fecha": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "por_comprobar": {
      +            "description": "Los filtros que pasa solo porque el dato no consta: compruébalo en las bases.",
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "premio": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "premio_cambio_de": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "premio_eur": {
      +            "type": [
      +              "number",
      +              "null"
      +            ]
      +          },
      +          "premio_eur_aproximado": {
      +            "type": "boolean"
      +          },
      +          "premio_importe": {
      +            "type": [
      +              "number",
      +              "null"
      +            ]
      +          },
      +          "premio_moneda": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "presupuesto_eur": {
      +            "type": [
      +              "number",
      +              "null"
      +            ]
      +          },
      +          "quien_puede": {
      +            "properties": {
      +              "edad_max": {
      +                "type": [
      +                  "integer",
      +                  "null"
      +                ]
      +              },
      +              "edad_min": {
      +                "type": [
      +                  "integer",
      +                  "null"
      +                ]
      +              },
      +              "nacionalidad": {
      +                "items": {
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              },
      +              "obra_inedita": {
      +                "type": [
      +                  "boolean",
      +                  "null"
      +                ]
      +              },
      +              "obra_ya_publicada": {
      +                "type": [
      +                  "boolean",
      +                  "null"
      +                ]
      +              },
      +              "por_designacion": {
      +                "type": [
      +                  "boolean",
      +                  "null"
      +                ]
      +              },
      +              "residencia": {
      +                "items": {
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              },
      +              "sexo": {
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              },
      +              "sin_restricciones": {
      +                "type": [
      +                  "boolean",
      +                  "null"
      +                ]
      +              },
      +              "solo_noveles": {
      +                "type": [
      +                  "boolean",
      +                  "null"
      +                ]
      +              },
      +              "texto": {
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              }
      +            },
      +            "type": "object"
      +          },
      +          "registro_oficial": {
      +            "type": [
      +              "object",
      +              "null"
      +            ]
      +          },
      +          "slug_premio": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "titulo": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "id",
      +          "titulo",
      +          "pagina",
      +          "bases",
      +          "cierre"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "datos_de": {
      +      "description": "Cuándo se generaron los datos (ISO 8601): la instantánea.",
      +      "type": "string"
      +    },
      +    "devueltas": {
      +      "type": "integer"
      +    },
      +    "fuera_por_no_constar": {
      +      "additionalProperties": {
      +        "type": "integer"
      +      },
      +      "description": "Por filtro, cuántas quitó porque no tenían el dato.",
      +      "type": "object"
      +    },
      +    "primera": {
      +      "description": "Posición del primero de esta página, desde 1.",
      +      "type": [
      +        "integer",
      +        "null"
      +      ]
      +    },
      +    "siguiente": {
      +      "description": "Cursor de la página siguiente: pásalo en «cursor». null si no hay más.",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "total": {
      +      "description": "Cuántos casan con la búsqueda, en todas las páginas.",
      +      "type": "integer"
      +    },
      +    "ultima": {
      +      "description": "Posición del último de esta página.",
      +      "type": [
      +        "integer",
      +        "null"
      +      ]
      +    }
      +  },
      +  "required": [
      +    "datos_de",
      +    "total",
      +    "devueltas",
      +    "convocatorias",
      +    "siguiente"
      +  ],
      +  "type": "object"
      +}
  6. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the annotations (readOnly/idempotent/non-destructive), the description discloses result ordering (closing soonest first), that records carry a Convoca page and bases, the meaning of null, how por_comprobar flags filters that passed only for lack of data, and that fuera_por_no_constar counts excluded records. These are non-obvious behavioral traits that materially affect interpretation of results.

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

Conciseness4/5

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

Front-loaded with purpose and ordering, then semantics, then pagination/alternatives — a sensible order. It is dense but nearly every clause carries information; the null/por_comprobar sentences are packed tightly and could be split for readability.

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 14-parameter, zero-required search tool with an output schema, the description supplies exactly what structured fields cannot: the missing-data filtering contract, the per-result caveat field, the out-of-scope count, and pagination behavior. Nothing essential to correct invocation 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 a cross-cutting semantic rule — filters never drop records whose data is absent — and by defining the por_comprobar/null framework needed to read filtered output. It does not restate per-parameter syntax, which the schema already handles.

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 (busca) plus resource (convocatorias de premios y concursos literarios) and a hard scope: only those with the deadline open. The multi-axis filter list gives an immediate sense of the tool's surface, differentiating it from ver_convocatoria (detail) and buscar_premios (awards, not open calls).

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 to ver_convocatoria for the full record and explains the cursor for continuing results, plus when to use breve. However it never contrasts itself with the closest sibling, buscar_premios, leaving the agent to infer the boundary between open calls and awards.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources