PageWatch

Extrae precios, listas, tablas y eventos de páginas web estáticas y vigila los cambios en ellos (MCP remoto).

Servidor MCP alojado

npx add-mcp 'https://pagewatch.zenith-ops.workers.dev/mcp'

Se instala en Claude Code, Codex, Cursor y más

Documentación

PageWatch

PageWatch extrae datos estructurados de páginas web estáticas públicas (texto, atributos, listas, tablas, precios, eventos, enlaces, JSON) y monitorea páginas para detectar cambios, con alertas RSS, ICS y webhooks firmados. Sin renderizado de JavaScript.

URL base

https://pagewatch.zenith-ops.workers.dev

Endpoints gratuitos

  • GET /v1/extract - Extrae datos de una página pública (gratuito, 30 por día por cliente)
  • POST /v1/monitors - Crea un monitor (plan gratuito: intervalo mínimo de 60 min, 3 activos por cliente, 30 días)
  • DELETE /v1/monitors/{id} - Elimina un monitor y sus eventos (Autorización: Bearer <manage_token>)
  • POST /v1/monitors/{id}/renew - Extiende un monitor gratuito por 30 días (reactiva monitores expirados o dañados) (Autorización: Bearer <manage_token>)
  • POST /v1/monitors/{id}/check-now - Ejecuta una verificación inmediatamente (una vez cada 10 minutos) (Autorización: Bearer <manage_token>)
  • GET /m/{id}/events.json - Registro de cambios de un monitor (público por id)
  • GET /m/{id}/latest.json - Último valor extraído y estado
  • GET /m/{id}/feed.rss - Fuente RSS 2.0 de los últimos 50 eventos
  • GET /m/{id}/calendar.ics - Calendario ICS (monitores en modo eventos)

Endpoints de pago (x402 v2, esquema exacto, eip155:8453, USDC 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913, pagar a 0x9f950fbeE661D8867750750F600Ff03fb7BAbe8D)

  • GET /v1/pro/extract - $0.002 - Igual que el /v1/extract gratuito pero sin el límite de 30 solicitudes por día: obtiene una página HTML o JSON estática pública y devuelve datos estructurados (texto, attr, lista, tabla, precio, eventos, página, enlaces, json) como JSON, CSV o ICS. Respeta robots.txt. Sin renderizado de JavaScript. Las llamadas fallidas (4xx/5xx) no se cobran.
  • POST /v1/pro/monitors - $0.25 - Crea un monitor que verifica una página estática pública cada 15 minutos (o más lento) durante 30 días y registra cada cambio. Hasta 5 URL de webhook firmadas, una fuente RSS, un registro de eventos JSON y (en modo eventos) un calendario ICS. Sin límite por cliente en el número de monitores; el límite global sigue aplicándose. La respuesta incluye el token de gestión una sola vez. Las llamadas fallidas (4xx/5xx) no se cobran.

Una solicitud no pagada devuelve HTTP 402 con un encabezado PAYMENT-REQUIRED (JSON en base64). Reintente con un encabezado PAYMENT-SIGNATURE; @x402/fetch hace esto automáticamente. Solo se le cobra cuando el estado de la respuesta es inferior a 400.

Extracción

Modos: texto, attr, lista, tabla, precio, eventos, página, enlaces, json. Parámetros: url, mode, selector, attr, fields, match, jsonpath, sameHost, all, tableIndex, format. Formatos: json (predeterminado), csv, ics (modo eventos).

Monitores

POST /v1/monitors con JSON {url, mode, selector?, attr?, fields?, interval_minutes?, webhook_url?}. La respuesta contiene el manage_token (mostrado una vez), webhook_secret (si se proporcionó un webhook), feed_url y events_url. Entrega de webhook: un POST con JSON {monitor_id, url, kind, old, new, at, summary} y el encabezado X-PageWatch-Signature: sha256=<hex HMAC-SHA256 of the raw body, key = webhook_secret returned when the monitor was created>. Tiempo de espera de 5 segundos, no se siguen redirecciones, máximo 3 intentos.

MCP

https://pagewatch.zenith-ops.workers.dev/mcp (HTTP transmisible, JSON-RPC 2.0). Herramientas: extract_page, watch_page, get_changes. Pase paid=true a extract_page o watch_page para obtener los requisitos de pago x402 para los endpoints de pago.

Límites y notas de honestidad

  • Tamaño de página: 600 KB por página; las páginas más grandes se rechazan (422)
  • Extracciones gratuitas: 30 por día por cliente, luego HTTP 429
  • Monitores gratuitos: 3 activos por cliente, 30 días, renovables, verificación cada 60 minutos o más lento
  • Monitor Pro: $0.25 una vez: 30 días, verificación cada 15 minutos, hasta 5 webhooks
  • Capacidad global: 400 monitores activos en total (en todo el servicio)
  • Cortesía por host: se obedece robots.txt; las verificaciones programadas consultan un host como máximo una vez cada 15 minutos
  • Forma de la solicitud: solo http/https, puertos 80/443, nombres DNS públicos, sin credenciales; selector de hasta 300 caracteres, hasta 20 campos, cuerpos JSON de hasta 8 KB
  • Renderizado: Solo HTML y JSON estáticos. No se ejecuta JavaScript. Se leen JSON-LD, Open Graph y microdatos.
  • Las páginas que construyen su contenido con JavaScript devuelven poco o nada; no hay navegador sin interfaz gráfica.
  • Las páginas detrás de un inicio de sesión, muro de pago o protección contra bots están fuera de alcance. Nunca se envían cookies ni credenciales.
  • Las verificaciones son de mejor esfuerzo: el servicio se ejecuta en un plan gratuito de Cloudflare con cron cada 15 minutos; una verificación puede retrasarse cuando hay muchos monitores pendientes.
  • Los selectores se rompen cuando un sitio cambia su marcado. Después de 3 fallos, un monitor se ralentiza y después de 10 se detiene con un evento 'broken'.
  • Los webhooks reciben como máximo 3 intentos de entrega (uno por ejecución de cron). Use la fuente RSS o events.json como fuente de verdad.
  • Cualquiera que conozca un id de monitor puede leer su fuente. No monitoree páginas cuyo contenido no pueda compartir.

Privacidad

PageWatch almacena la configuración del monitor y los valores extraídos (más un registro de cambios) hasta que el monitor se elimine o haya estado expirado durante 30 días. Las direcciones IP nunca se almacenan: las cuotas usan un hash SHA-256 con sal que rota diariamente, y el límite del propietario del monitor usa un hash con sal de la IP creadora. El token de gestión se almacena solo como un hash SHA-256. Se almacena un secreto de firma de webhook para que las entregas puedan firmarse.

Otros