Connect

Consultar resoluciones de convenio de la Tesorería

Lee las resoluciones de convenio con la Tesorería General de la República YA sincronizadas de esta conexión: la pantalla «Comprobante de resolución» del portal, con número, fechas y tipo de beneficio.

Tool IDtgr.resoluciones.consultar
Nombre MCPtgr__resoluciones__consultar
Conectortgr
Planoaction
Lee el alcanceconvenios (debe estar habilitado en la conexión)
Scope (permiso)tgr:read
Authnone
Versión1
Sensiblesí
Deprecadono
ComportamientoreadOnly=true, destructive=false, idempotent=true, openWorld=false

Requiere conexión. Indica cuál en cada llamada: header X-Connect-Connection en REST, campo connectionId en el execute de MCP y en las opciones del SDK. No hay resolución implícita, ni siquiera con una sola conexión activa: la conexión es la empresa. El id sale de conexiones.estado.consultar.

Qué hace

Lectura pura: NO contacta a la Tesorería ni dispara una sincronización. Si la empresa no tiene convenios la lista viene vacía con 'pantallaLeidaEn' fechado; si nunca se sincronizó, viene vacía con 'pantallaLeidaEn' en null. Para traer datos nuevos usa 'tgr.conexion.sincronizar'. Pagina con 'cursor'.

Entrada

CampoTipoRequeridoDescripción
numeroResolucionstringnoFiltra por un número de resolución, escrito tal cual lo muestra la Tesorería. Omítelo para ver todas las filas.
cursorstringnoPuntero opaco a la página siguiente. Reenvía tal cual el 'cursor' que devolvió la llamada anterior; nunca lo construyas a mano. Omítelo para pedir la primera página.
limitentero 1-500no · default 100Cuántas filas trae la página, entre 1 y 500. Por omisión, 100.
JSON Schema de entrada
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "numeroResolucion": {
      "description": "Filtra por un número de resolución, escrito tal cual lo muestra la Tesorería. Omítelo para ver todas las filas.",
      "type": "string",
      "minLength": 1,
      "maxLength": 32
    },
    "cursor": {
      "description": "Puntero opaco a la página siguiente. Reenvía tal cual el 'cursor' que devolvió la llamada anterior; nunca lo construyas a mano. Omítelo para pedir la primera página.",
      "type": "string"
    },
    "limit": {
      "default": 100,
      "description": "Cuántas filas trae la página, entre 1 y 500. Por omisión, 100.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  }
}

Ejemplo

curl
curl -X POST https://connect.emisso.ai/api/v1/tools/tgr.resoluciones.consultar/execute \
  -H "Authorization: Bearer connect_sk_…" \
  -H "X-Connect-Connection: conn_9tKfR2mQx4Vb" \
  -H "Content-Type: application/json" \
  -d '{"input":{}}'
SDK TypeScript
const data = await connect.tools.tgr.resoluciones.consultar({}, { connectionId: "conn_9tKfR2mQx4Vb" });
MCP · meta-tool execute
{
  "tool": "tgr.resoluciones.consultar",
  "params": {},
  "connectionId": "conn_9tKfR2mQx4Vb"
}

Salida esperada (200):

{
  "data": {
    "resoluciones": [
      {
        "numeroResolucion": "4455667",
        "fechaResolucion": "2026-03-05",
        "fechaActivacion": "2026-03-10",
        "tipoBeneficio": "CONVENIO DE PAGO",
        "celdas": {
          "no resolucion": "4455667",
          "fecha resolucion": "05/03/2026"
        },
        "observadoEn": "2026-10-02T14:02:11.000Z"
      }
    ],
    "pantallaLeidaEn": "2026-10-02T14:02:11.000Z",
    "cursor": null
  },
  "meta": {
    "request_id": "req_…",
    "tool_id": "tgr.resoluciones.consultar",
    "plane": "action",
    "latency_ms": 24,
    "audit_status": "recorded"
  }
}

Salida

CampoTipoRequeridoDescripción
resolucioneslista de objetosíLas resoluciones vigentes en la pantalla, en orden estable.
resoluciones[].numeroResolucionstringsíEl número de la resolución con que la Tesorería otorgó el convenio. Identifica al convenio en las tres pantallas: úsalo para cruzarlas. Es texto: no lo conviertas a número.
resoluciones[].fechaResolucionstringnullsí
resoluciones[].fechaActivacionstringnullsí
resoluciones[].tipoBeneficiostringnullsí
resoluciones[].celdasobjetosíLas celdas de la fila tal como las mostró la Tesorería, por encabezado de columna normalizado. Úsalas cuando un campo derivado venga en null: ahí está el texto original.
resoluciones[].observadoEnstringsíCuándo se vio esta fila en la Tesorería por última vez (ISO 8601). Las filas que dejan de aparecer en la pantalla salen de esta consulta en la sincronización siguiente.
pantallaLeidaEnstringnullsí
cursorstringnullsí
JSON Schema de salida
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "resoluciones": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "numeroResolucion": {
            "type": "string",
            "description": "El número de la resolución con que la Tesorería otorgó el convenio. Identifica al convenio en las tres pantallas: úsalo para cruzarlas. Es texto: no lo conviertas a número."
          },
          "fechaResolucion": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "x-emisso-formato": "AAAA-MM-DD",
            "description": "La fecha de la resolución en formato AAAA-MM-DD, o null si no se pudo parsear. Es un día calendario sin zona horaria: compáralo como texto o con Date.UTC, porque new Date('2026-09-07') es medianoche UTC y en Chile se muestra como el 6. Es el campo que conviene usar para ordenar y filtrar."
          },
          "fechaActivacion": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "x-emisso-formato": "AAAA-MM-DD",
            "description": "La fecha en que se activó el beneficio en formato AAAA-MM-DD, o null si no se pudo parsear. Es un día calendario sin zona horaria: compáralo como texto o con Date.UTC, porque new Date('2026-09-07') es medianoche UTC y en Chile se muestra como el 6. Es el campo que conviene usar para ordenar y filtrar."
          },
          "tipoBeneficio": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "El tipo de beneficio que otorgó la resolución, con el texto de la Tesorería."
          },
          "celdas": {
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "additionalProperties": {
              "type": "string"
            },
            "description": "Las celdas de la fila tal como las mostró la Tesorería, por encabezado de columna normalizado. Úsalas cuando un campo derivado venga en null: ahí está el texto original."
          },
          "observadoEn": {
            "type": "string",
            "description": "Cuándo se vio esta fila en la Tesorería por última vez (ISO 8601). Las filas que dejan de aparecer en la pantalla salen de esta consulta en la sincronización siguiente."
          }
        },
        "required": [
          "numeroResolucion",
          "fechaResolucion",
          "fechaActivacion",
          "tipoBeneficio",
          "celdas",
          "observadoEn"
        ],
        "additionalProperties": false
      },
      "description": "Las resoluciones vigentes en la pantalla, en orden estable."
    },
    "pantallaLeidaEn": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Cuándo se leyó esta pantalla de la Tesorería por última vez (ISO 8601). Es lo que vuelve interpretable una lista vacía: con fecha, la Tesorería mostró la pantalla sin filas; en null, la pantalla todavía no se ha leído (sincroniza con 'tgr.conexion.sincronizar' antes de concluir que no hay nada)."
    },
    "cursor": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Puntero a la página siguiente. Si viene distinto de null hay más filas: vuelve a llamar reenviándolo tal cual en 'cursor'. Un null significa que no queda nada por traer."
    }
  },
  "required": [
    "resoluciones",
    "pantallaLeidaEn",
    "cursor"
  ],
  "additionalProperties": false
}

Errores de esta tool

CódigoHTTPReintentableQué hacer
connection_disabled403noReactívala en /connections o usa otra conexión del mismo sistema.
alcance_not_enabled403noHabilita el alcance en /connections o quítalo del input de la sincronización.

Toda llamada puede devolver además los códigos transversales (validation_error, unauthorized, scope_not_granted, rate_limited, entre otros): el detalle vive en el catálogo de errores.

Próximos pasos

En esta página