Consultar cambios de la cartera
Entrega diferencias observadas por Connect, con fecha de fuente y detección separadas.
| Tool ID | pjud.novedades.consultar |
| Nombre MCP | pjud__novedades__consultar |
| Conector | pjud |
| Plano | action |
| Lee el alcance | expedientes (debe estar habilitado en la conexión) |
| Scope (permiso) | pjud:read |
| Auth | none |
| Versión | 1 |
| Sensible | sí |
| Deprecado | no |
| Comportamiento | readOnly=true, destructive=false, idempotent=true, openWorld=false |
Requiere conexión. Indica cuál en cada llamada: header
X-Connect-Connectionen REST, campoconnectionIden elexecutede 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 deconexiones.estado.consultar.
Qué hace
Sin causaIds revisa la cartera vigente; con IDs explícitos permite recuperar el historial de causas retiradas. La carga inicial está excluida por defecto y nunca representa hechos nuevos del día. Consultar no marca novedades como leídas ni envía informes. Sin cambios y revisión incompleta son resultados distintos. Lee exclusivamente datos ya sincronizados de la conexión. Para actualizarlos usa pjud.conexion.sincronizar. Revisa estadoDatos, observadoHasta y cobertura antes de interpretar una lista vacía.
Entrada
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
cursor | string | no | Cursor opaco de la respuesta anterior. Reenvíalo sin construirlo ni modificarlo. |
limit | entero 1-100 | no · default 50 | Máximo de filas por página; conserva el cursor para continuar en el mismo corte. |
desde | string `^(?:(?:\d\d[2468][048] | \d\d[13579][26] | \d\d0[48] |
causaIds | lista de string ^pjc_[a-zA-Z0-9_-]{16,80}$ | no | Limita a estas causas, incluidas las retiradas. Si falta, usa la cartera vigente. |
tipos | lista de "carga_inicial" · "actuacion_incorporada" · "actuacion_actualizada" · "documento_incorporado" · "documento_disponible" · "documento_actualizado" · … | no | Tipos de cambio que quieres incluir en esta consulta. |
incluirCargaInicial | booleano | no · default false | Incluye incorporaciones históricas iniciales; no son hechos nuevos del día. |
JSON Schema de entrada
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"cursor": {
"type": "string",
"minLength": 1,
"maxLength": 4096,
"description": "Cursor opaco de la respuesta anterior. Reenvíalo sin construirlo ni modificarlo."
},
"limit": {
"default": 50,
"description": "Máximo de filas por página; conserva el cursor para continuar en el mismo corte.",
"type": "integer",
"minimum": 1,
"maximum": 100
},
"desde": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
"description": "Instante ISO 8601 con zona horaria."
},
"causaIds": {
"description": "Limita a estas causas, incluidas las retiradas. Si falta, usa la cartera vigente.",
"minItems": 1,
"maxItems": 50,
"type": "array",
"items": {
"type": "string",
"pattern": "^pjc_[a-zA-Z0-9_-]{16,80}$",
"description": "ID obtenido de pjud.causas.consultar. No es el rol escrito en el portal."
}
},
"tipos": {
"description": "Tipos de cambio que quieres incluir en esta consulta.",
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"enum": [
"carga_inicial",
"actuacion_incorporada",
"actuacion_actualizada",
"documento_incorporado",
"documento_disponible",
"documento_actualizado",
"causa_actualizada",
"seccion_actualizada"
],
"description": "Tipo de diferencia observada. Carga inicial corresponde a historia incorporada, no a actividad nueva del día."
}
},
"incluirCargaInicial": {
"default": false,
"description": "Incluye incorporaciones históricas iniciales; no son hechos nuevos del día.",
"type": "boolean"
}
},
"additionalProperties": false
}Salida
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
novedades | lista de objeto | sí | Cambios observados por Connect dentro de la cartera y del corte de consulta. |
novedades[].novedadId | string ^pjn_[a-zA-Z0-9_-]{16,80}$ | sí | Identificador inmutable del cambio detectado por Connect. |
novedades[].causaId | string ^pjc_[a-zA-Z0-9_-]{16,80}$ | sí | ID obtenido de pjud.causas.consultar. No es el rol escrito en el portal. |
novedades[].actuacionId | string ^pja_[a-zA-Z0-9_-]{16,80}$ | null | sí |
novedades[].documentoId | string ^pjd_[a-zA-Z0-9_-]{16,80}$ | null | sí |
novedades[].tipo | "carga_inicial" · "actuacion_incorporada" · "actuacion_actualizada" · "documento_incorporado" · "documento_disponible" · "documento_actualizado" · … | sí | Tipo de diferencia observada. Carga inicial corresponde a historia incorporada, no a actividad nueva del día. |
novedades[].seccionCivil | objeto | null | sí |
novedades[].seccionCivil.nombre | "notificaciones" · "escritos_por_resolver" · "exhortos" · "remisiones" | sí | Tabla civil cuyo contenido cambió. |
novedades[].seccionCivil.cuadernoId | string ^pjq_[a-zA-Z0-9_-]{16,80}$ | sí | Identificador estable de cuaderno, obtenido de causas.detallar. |
novedades[].seccionLaboral | objeto | null | no |
novedades[].seccionLaboral.nombre | "litigantes" · "notificaciones" · "diligencias" · "liquidacion" · "materias" · "escritos_por_resolver" · … | sí | Tabla laboral de la causa cuyo contenido cambió. |
novedades[].observadoEn | string `^(?:(?:\d\d[2468][048] | \d\d[13579][26] | \d\d0[48] |
novedades[].fechaFuente | string ^\d{4}-\d{2}-\d{2}$ | null | sí |
novedades[].descripcion | string | sí | Descripción de la pieza o cambio observado. |
novedades[].cambios | lista de objeto | sí | Diferencias puntuales entre valores observados. |
novedades[].cambios[].campo | "caratulado" · "estado" · "etapa" · "procedimiento" · "ubicacion" · "documento_sha256" · … | sí | Campo cuyo valor cambió entre observaciones. |
novedades[].cambios[].antes | string | null | sí |
novedades[].cambios[].despues | string | null | sí |
novedades[].fuente | objeto | sí | Procedencia y fecha de observación. No contiene credenciales ni enlaces privados. |
novedades[].fuente.sistema | string | sí | Sistema judicial del que procede la observación. |
novedades[].fuente.ruta | "mis_causas" · "consulta_unificada" · "ingreso_ojv" | sí | Superficie OJV utilizada para recuperar la información. |
novedades[].fuente.portalUrl | "https://oficinajudicialvirtual.pjud.cl/indexN.php" · "https://ojv.pjud.cl/kpitec-ojv-web/views/login.html" | sí | Acceso al portal; puede requerir sesión. No contiene enlaces privados ni tokens de OJV. |
novedades[].fuente.observadoEn | string `^(?:(?:\d\d[2468][048] | \d\d[13579][26] | \d\d0[48] |
cursor | string | null | sí |
estadoDatos | "sin_sincronizar" · "disponibles" · "incompletos" | sí | Una lista vacía con sin_sincronizar o incompletos no acredita ausencia de actividad judicial. |
observadoHasta | string `^(?:(?:\d\d[2468][048] | \d\d[13579][26] | \d\d0[48] |
cobertura | lista de objeto | sí | Secciones efectivamente revisadas y sus límites, para las causas de esta consulta. |
cobertura[].causaId | string ^pjc_[a-zA-Z0-9_-]{16,80}$ | sí | ID obtenido de pjud.causas.consultar. No es el rol escrito en el portal. |
cobertura[].cuadernoId | string ^pjq_[a-zA-Z0-9_-]{16,80}$ | null | sí |
cobertura[].seccion | "cabecera" · "historia" · "litigantes" · "notificaciones" · "escritos_por_resolver" · "exhortos" · … | sí | Sección concreta cuya cobertura se informa. |
cobertura[].estado | "con_datos" · "sin_registros" · "parcial" · "fallida" · "no_accesible" · "no_implementada" | sí | Solo con_datos y sin_registros acreditan revisión completa de esta sección. Los otros valores indican información pendiente o inaccesible. |
cobertura[].revisadaEn | string `^(?:(?:\d\d[2468][048] | \d\d[13579][26] | \d\d0[48] |
cobertura[].registrosObservados | entero | null | sí |
cobertura[].codigoIncidencia | string ^pjud_[a-z_]+$ | null | sí |
JSON Schema de salida
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"novedades": {
"type": "array",
"items": {
"type": "object",
"properties": {
"novedadId": {
"type": "string",
"pattern": "^pjn_[a-zA-Z0-9_-]{16,80}$",
"description": "Identificador inmutable del cambio detectado por Connect."
},
"causaId": {
"type": "string",
"pattern": "^pjc_[a-zA-Z0-9_-]{16,80}$",
"description": "ID obtenido de pjud.causas.consultar. No es el rol escrito en el portal."
},
"actuacionId": {
"anyOf": [
{
"type": "string",
"pattern": "^pja_[a-zA-Z0-9_-]{16,80}$",
"description": "Identificador estable de actuación dentro de su causa y ámbito de historia."
},
{
"type": "null"
}
],
"description": "Actuación asociada; null para información de toda la causa."
},
"documentoId": {
"anyOf": [
{
"type": "string",
"pattern": "^pjd_[a-zA-Z0-9_-]{16,80}$",
"description": "ID obtenido de pjud.documentos.consultar; nunca un enlace ni un token de OJV."
},
{
"type": "null"
}
],
"description": "Documento afectado por el cambio, si corresponde."
},
"tipo": {
"type": "string",
"enum": [
"carga_inicial",
"actuacion_incorporada",
"actuacion_actualizada",
"documento_incorporado",
"documento_disponible",
"documento_actualizado",
"causa_actualizada",
"seccion_actualizada"
],
"description": "Tipo de diferencia observada. Carga inicial corresponde a historia incorporada, no a actividad nueva del día."
},
"seccionCivil": {
"default": null,
"description": "Sección civil y contexto de cuaderno cuya tabla cambió; consulta causas.detallar con esos filtros. null para los otros tipos de novedad.",
"anyOf": [
{
"type": "object",
"properties": {
"nombre": {
"type": "string",
"enum": [
"notificaciones",
"escritos_por_resolver",
"exhortos",
"remisiones"
],
"description": "Tabla civil cuyo contenido cambió."
},
"cuadernoId": {
"type": "string",
"pattern": "^pjq_[a-zA-Z0-9_-]{16,80}$",
"description": "Identificador estable de cuaderno, obtenido de causas.detallar."
}
},
"required": [
"nombre",
"cuadernoId"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"seccionLaboral": {
"description": "Tabla laboral cuya revisión cambió; consulta causas.detallar con ese filtro. Ausente o null para otras novedades.",
"anyOf": [
{
"type": "object",
"properties": {
"nombre": {
"type": "string",
"enum": [
"litigantes",
"notificaciones",
"diligencias",
"liquidacion",
"materias",
"escritos_por_resolver",
"remisiones"
],
"description": "Tabla laboral de la causa cuyo contenido cambió."
}
},
"required": [
"nombre"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"observadoEn": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
"description": "Instante ISO 8601 con zona horaria."
},
"fechaFuente": {
"anyOf": [
{
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"x-emisso-formato": "AAAA-MM-DD"
},
{
"type": "null"
}
],
"description": "Día de fuente asociado a la pieza o al cambio en AAAA-MM-DD; null si no está disponible."
},
"descripcion": {
"type": "string",
"description": "Descripción de la pieza o cambio observado."
},
"cambios": {
"type": "array",
"items": {
"type": "object",
"properties": {
"campo": {
"type": "string",
"enum": [
"caratulado",
"estado",
"etapa",
"procedimiento",
"ubicacion",
"documento_sha256",
"descripcion",
"tramite",
"fecha_tramite",
"fecha_entre_parentesis",
"fecha_fuente",
"foja",
"estado_administrativo",
"forma_inicio",
"estado_actuacion"
],
"description": "Campo cuyo valor cambió entre observaciones."
},
"antes": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Valor previo; null si no existía o no estaba disponible."
},
"despues": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Valor observado en esta revisión; null si no está disponible."
}
},
"required": [
"campo",
"antes",
"despues"
],
"additionalProperties": false
},
"description": "Diferencias puntuales entre valores observados."
},
"fuente": {
"type": "object",
"properties": {
"sistema": {
"type": "string",
"const": "OJV",
"description": "Sistema judicial del que procede la observación."
},
"ruta": {
"type": "string",
"enum": [
"mis_causas",
"consulta_unificada",
"ingreso_ojv"
],
"description": "Superficie OJV utilizada para recuperar la información."
},
"portalUrl": {
"type": "string",
"enum": [
"https://oficinajudicialvirtual.pjud.cl/indexN.php",
"https://ojv.pjud.cl/kpitec-ojv-web/views/login.html"
],
"description": "Acceso al portal; puede requerir sesión. No contiene enlaces privados ni tokens de OJV."
},
"observadoEn": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
"description": "Instante ISO 8601 con zona horaria."
}
},
"required": [
"sistema",
"ruta",
"portalUrl",
"observadoEn"
],
"additionalProperties": false,
"description": "Procedencia y fecha de observación. No contiene credenciales ni enlaces privados."
}
},
"required": [
"novedadId",
"causaId",
"actuacionId",
"documentoId",
"tipo",
"seccionCivil",
"observadoEn",
"fechaFuente",
"descripcion",
"cambios",
"fuente"
],
"additionalProperties": false
},
"description": "Cambios observados por Connect dentro de la cartera y del corte de consulta."
},
"cursor": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"maxLength": 4096,
"description": "Cursor opaco de la respuesta anterior. Reenvíalo sin construirlo ni modificarlo."
},
{
"type": "null"
}
],
"description": "null cuando no quedan filas en este corte; no acredita que OJV esté completamente revisada."
},
"estadoDatos": {
"type": "string",
"enum": [
"sin_sincronizar",
"disponibles",
"incompletos"
],
"description": "Una lista vacía con sin_sincronizar o incompletos no acredita ausencia de actividad judicial."
},
"observadoHasta": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
"description": "Instante ISO 8601 con zona horaria."
},
{
"type": "null"
}
],
"description": "Corte de observación de los datos persistidos. No es la fecha de la consulta ni la de una resolución."
},
"cobertura": {
"type": "array",
"items": {
"type": "object",
"properties": {
"causaId": {
"type": "string",
"pattern": "^pjc_[a-zA-Z0-9_-]{16,80}$",
"description": "ID obtenido de pjud.causas.consultar. No es el rol escrito en el portal."
},
"cuadernoId": {
"anyOf": [
{
"type": "string",
"pattern": "^pjq_[a-zA-Z0-9_-]{16,80}$",
"description": "Identificador estable de cuaderno, obtenido de causas.detallar."
},
{
"type": "null"
}
],
"description": "Cuaderno al que corresponde la información; null para una sección de toda la causa."
},
"seccion": {
"type": "string",
"enum": [
"cabecera",
"historia",
"litigantes",
"notificaciones",
"escritos_por_resolver",
"exhortos",
"remisiones",
"documentos",
"diligencias",
"liquidacion",
"materias"
],
"description": "Sección concreta cuya cobertura se informa."
},
"estado": {
"type": "string",
"enum": [
"con_datos",
"sin_registros",
"parcial",
"fallida",
"no_accesible",
"no_implementada"
],
"description": "Solo con_datos y sin_registros acreditan revisión completa de esta sección. Los otros valores indican información pendiente o inaccesible."
},
"revisadaEn": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
"description": "Instante ISO 8601 con zona horaria."
},
{
"type": "null"
}
],
"description": "Instante ISO 8601 de revisión; null si esa sección no se revisó."
},
"registrosObservados": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
],
"description": "Filas observadas en la sección; null significa que no se pudo contar, no cero."
},
"codigoIncidencia": {
"anyOf": [
{
"type": "string",
"pattern": "^pjud_[a-z_]+$"
},
{
"type": "null"
}
],
"description": "Código saneado; nunca mensajes, cookies o HTML del proveedor."
}
},
"required": [
"causaId",
"cuadernoId",
"seccion",
"estado",
"revisadaEn",
"registrosObservados",
"codigoIncidencia"
],
"additionalProperties": false
},
"description": "Secciones efectivamente revisadas y sus límites, para las causas de esta consulta."
}
},
"required": [
"novedades",
"cursor",
"estadoDatos",
"observadoHasta",
"cobertura"
],
"additionalProperties": false
}Errores de esta tool
| Código | HTTP | Reintentable | Qué hacer |
|---|---|---|---|
connection_disabled | 403 | no | Reactívala en /connections o usa otra conexión del mismo sistema. |
alcance_not_enabled | 403 | no | Habilita 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
pjud.conexion.sincronizar: la tool que escribe los datos que esta lectura devuelve.- Sincronizar y consultar: por qué leer datos reales son dos pasos.