API Anything es una herramienta de código abierto que aprende las peticiones internas de una web y las convierte en operaciones que tu agente de IA llama por HTTP, sin abrir un navegador. Lo aprendido se comparte en un catálogo común, y cada llamada de otro usuario cuenta como un voto sobre si la operación sigue funcionando. La probé el 28 de octubre de 2026 con la versión 0.2.0 en Linux arm64: llamé a sus operaciones incluidas y le enseñé dos sitios nuevos. Aquí tienes cómo funciona, qué cifras publica su autor, qué medí yo y dónde falla. Tienes la versión en inglés de este artículo.

Puntos clave

  • API Anything se instala con npm, necesita Node 22.13 o posterior y conecta un servidor del Model Context Protocol (MCP) a Claude Code, Codex, Cursor y Claude Desktop.
  • El paquete trae 30 operaciones de lectura sobre 14 sitios, entre ellos Goodreads, Google Flights, Hacker News, LinkedIn, X e Instagram.
  • En la prueba del autor con Google Flights, el agente respondió en 8,4 s frente a 12,9 s con un navegador y gastó 21 300 tokens frente a 46 700.
  • En mi prueba, 6 de 7 operaciones respondieron en el primer nivel, con medianas de 105 a 862 ms. La de Google Flights falló 5 de 5 veces desde una IP europea.
  • Al enseñarle el diccionario de la RAE, el desafío de Cloudflare bloqueó todas las llamadas, aunque un curl con agente de navegador recibía la página.

¿Qué es API Anything?

API Anything es un proyecto de Charles Zheng, fundador de Forth según su perfil de GitHub. Lo publicó con licencia MIT en su repositorio de GitHub[1] el 27 de septiembre de 2026. Un mes después sumaba 1780 estrellas y 207 forks. Su paquete de npm salió en la versión 0.2.0 el 28 de octubre de 2026, el mismo día de mi prueba.

Si usas agentes que navegan por la web, ya conoces el problema que ataca. Cuando un sitio no tiene API, el agente abre un navegador, hace clic, espera y lee la pantalla, y cada paso cuesta tiempo y tokens. API Anything mira qué peticiones hace la propia web por debajo y guarda una plantilla de esa petición. La próxima vez, el agente la envía directamente y recibe JSON.

Su autor lo presentó así en Hacker News el 9 de octubre: "I’ve used it to help me automate some of my linkedin outreach. it saves time and token by about 50% across the board."

¿Cómo aprende la API de una web?

API Anything aprende comparando dos visitas a la misma página con dos valores distintos. Un navegador sin interfaz carga la página una vez por ejemplo, y la parte de la petición que cambia con el valor se convierte en un parámetro. Las cookies y los tokens se guardan como referencias, del tipo cookie:ct0, nunca con su valor. Este es el ejemplo del README, que aprende los enlaces de Hacker News por dominio:

api-anything add hn-demo links \
  --trigger 'https://news.ycombinator.com/from?site={domain}' \
  --example domain=github.com --example2 domain=github.io \
  --match path=/from \
  --html '{"items":"tr.athing","fields":{"title":".titleline > a"}}'

El comando abre la página con github.com y con github.io, elige la petición que lleva ese valor y aplica la receta --html para sacar los títulos. No usa ningún modelo de lenguaje para aprender: tú o tu agente elegís la petición y los campos.

Al llamar a la operación, la herramienta prueba tres niveles por orden:

  1. Nivel 1: una petición HTTP directa con fetch de Node, sin navegador
  2. Nivel 2: la misma petición lanzada desde dentro de una página abierta en el navegador
  3. Nivel 3: solo para lecturas, carga la página entera y lee su propia respuesta

Cuando la respuesta deja de encajar, por ejemplo porque cambió un identificador, la operación intenta repararse. Primero busca una versión ya reparada en el catálogo y, si no la hay, vuelve a aprender la petición y solo la guarda si la repetición funciona.

¿Qué es el catálogo compartido y qué sale de tu equipo?

El catálogo es un Cloudflare Worker que guarda las especificaciones de las operaciones y cuenta los informes de uso, pero nunca hace de intermediario: cada llamada sale desde tu máquina y tu conexión. Una operación nueva pasa a estar en vivo cuando instalaciones de otras 2 redes la llaman con éxito, y se sustituye cuando 3 o más redes ven que falla. Una operación aprendida con sesión iniciada solo se comparte con tu permiso, o cuando 3 instalaciones en 3 redes han aprendido exactamente lo mismo.

Con la compartición activada, tu equipo envía lo siguiente:

  • Operaciones de páginas públicas: lecturas aprendidas sin sesión cuya repetición sin cookies respondió
  • Informes: qué versión se ejecutó, el resultado, el nivel y el tiempo, firmados con una clave anónima de tu instalación
  • Comprobaciones en segundo plano: un servidor MCP inactivo llama a un máximo de 20 operaciones nuevas al día con sus ejemplos publicados
  • Reparaciones: la versión arreglada de una operación pública que había cambiado

Las búsquedas van al catálogo aunque desactives la compartición. El catálogo público[2] también lista los sitios que los agentes pidieron y nadie ha compartido: el 28 de octubre encabezaban booking.com, vk.ru y yandex.ru, con 3 redes cada uno.

¿Cuánto ahorra frente a un agente con navegador según su autor?

El banco de pruebas del autor mide un ahorro de tiempo y de tokens, pero no siempre de dinero. Lanzó el mismo agente, Claude Opus 5.5 en claude -p, con dos herramientas distintas: Playwright MCP sobre Chrome sin interfaz, o el servidor MCP de API Anything. La tarea era encontrar el vuelo directo más barato en Google Flights, para una fecha o para cinco. El gráfico muestra la mediana de 5 ejecuciones:

Tiempo de un agente con navegador frente a API Anything s · menos es mejor
Google Flights, 1 fecha
Navegador: 12,9
API Anything: 8,4
Google Flights, 5 fechas
Navegador: 41,6
API Anything: 21,1
Goodreads, 5 libros
Navegador: 182,5
API Anything: 30,5
Ver tabla de valores
TareaNavegadorAPI Anything
Google Flights, 1 fecha12,98,4
Google Flights, 5 fechas41,621,1
Goodreads, 5 libros182,530,5

Mediana de 5 ejecuciones del autor, 28 de septiembre de 2026, un Mac, Claude Opus 5.5 con claude -p. Google Flights según bench/README.md; Goodreads según el README del proyecto.

Con una fecha, el coste bajó de 0,166 a 0,074 dólares. Con cinco fechas el coste quedó igual, 0,154 frente a 0,152 dólares. El agente con navegador escribió un único script de Playwright para las cinco, y el de API Anything hizo diez llamadas pequeñas. Si llevas la cuenta de lo que gastan tus agentes, como en este análisis de FinOps de tokens, fíjate en los tokens: 21 300 frente a 46 700 con una fecha.

Son las cifras de un solo sitio, un solo modelo y unas pocas decenas de ejecuciones, como reconoce el propio documento. Sin agente, el autor midió 1,42 s para cargar la página con Chrome y 1,17 s con api-anything call: en Google Flights la ventaja es recibir JSON estructurado, no la velocidad de transporte.

¿Qué tal funciona en una prueba real?

En mi prueba, las operaciones incluidas respondieron rápido salvo la que protagoniza el README. Instalé la versión 0.2.0 en un directorio aislado, con Node 24.16.0 en Linux arm64: npm install tardó 3,3 s y dejó 105 paquetes y 48 MB. Desactivé la compartición con setup --no-share y llamé 5 veces a cada operación. Esta es la llamada de ejemplo:

api-anything call hacker-news search query=sqlite

La respuesta trae ok, class, tier y ms, además de los datos. Todas las llamadas que funcionaron lo hicieron en el nivel 1, con una sola petición HTTP. El gráfico muestra el campo ms en mediana:

Mediana de respuesta de las operaciones incluidas en API Anything 0.2.0 ms · menos es mejor
Hacker News, búsqueda
105
Rotten Tomatoes, búsqueda
206
Hacker News, portada
520
Steam, búsqueda
626
Goodreads, búsqueda
641
YouTube, búsqueda
862
Ver tabla de valores
Operaciónms
Hacker News, búsqueda105
Rotten Tomatoes, búsqueda206
Hacker News, portada520
Steam, búsqueda626
Goodreads, búsqueda641
YouTube, búsqueda862

5 llamadas por operación, nivel 1, 28 de octubre de 2026, Linux arm64, Node 24.16.0, conexión con salida por el Reino Unido. Google Flights falló 5 de 5 y no aparece.

La búsqueda de Hacker News es la más rápida porque la operación llama al índice de Algolia que usa hn.algolia.com, que ya es una API JSON. Las demás descargan HTML o JSON incrustado en la página y lo recortan.

¿Por qué falló Google Flights desde Europa?

La operación de Google Flights falló en las 5 llamadas con class: drift y el mensaje "embedded data not found", y la reparación automática tampoco la recuperó. Mi conexión salía por una IP del Reino Unido, y desde ahí Google redirige esa URL a consent.google.com, la página de aceptación de cookies. La especificación espera la cookie SOCS, que guarda esa aceptación, y una instalación nueva no la tiene.

Las notas del mantenedor dicen que la operación se verificó "logged out, US IP". Si estás en España, cuenta con que las operaciones de Google pueden necesitar api-anything login o una reparación antes de funcionar. La herramienta, eso sí, falla con honestidad: devuelve el motivo, el siguiente paso (heal) y retry: after_fix en lugar de datos vacíos.

¿Qué pasó al enseñarle sitios nuevos?

Aprender una operación funcionó, pero llamarla después dependió de las defensas del sitio. El ejemplo del README con Hacker News se aprendió en 7,2 s.

Al llamarlo, Hacker News respondió al nivel 1 con un HTTP 419 y el texto "Sorry". La herramienta subió sola al nivel 2 y devolvió los 30 enlaces en 1,3 a 3,1 s. Una de las tres llamadas siguientes falló con "Failed to fetch".

Luego le enseñé el Diccionario de la lengua española[3], que no tiene API pública, con learn y tres palabras: sobremesa, madrugada y chapuza. La elección automática falló en 25,3 s. Repetí el aprendizaje desde las capturas guardadas con una receta HTML explícita:

api-anything learn 'https://dle.rae.es/{palabra}' \
  --args palabra=sobremesa --args2 palabra=madrugada \
  --args3 palabra=chapuza --site rae-dle --op definicion \
  --from captura_1 --from2 captura_2 --pick-request 1 \
  --html '{"items":"ol.c-definitions > li",
    "fields":{"categoria":"abbr@title",
    "texto":".c-definitions__item > div"}}'

Con eso devolvió las 6 acepciones de "sobremesa". La comprobación con "chapuza" y las tres llamadas posteriores acabaron bloqueadas por el desafío de Cloudflare en los tres niveles, a unos 19,7 s cada una. Un curl con el agente de usuario de Chrome sí recibía la página con un 200. No averigüé qué distingue una petición de la otra.

¿Qué riesgos tiene usarlo?

El riesgo principal no es técnico: lo que hace esta herramienta puede violar las condiciones de uso del sitio. LinkedIn, que viene incluido con 5 operaciones y es el caso de uso que cita su autor, lo dice en su página de software prohibido[4]: no permite "crawlers", bots ni extensiones "that scrape, modify the appearance of, or automate activity on LinkedIn’s website". Una cuenta automatizada puede acabar restringida. Antes de apuntar tu agente a un sitio, lee sus condiciones.

Hay otros tres puntos que conviene vigilar:

  • Fragilidad: la operación depende de la API interna del sitio, que cambia sin aviso. La reparación automática ayuda, pero en mi prueba no salvó Google Flights
  • Confianza en el catálogo: una operación descargada es de otra persona. El proyecto mitiga el riesgo, porque una operación sin confirmar se ejecuta sin tus cookies y las escrituras exigen --allow-writes, pero sigues ejecutando plantillas de terceros
  • Madurez: la versión 0.2.0 es del mismo día de mi prueba, y la documentación va por delante del paquete. El README describe una opción --share-only que la 0.2.0 rechaza con "Unknown option"

Las escrituras están bien protegidas. No se envía nada sin permiso explícito, una escritura sale una sola vez, la misma escritura en 10 minutos se rechaza como duplicate y la herramienta nunca aprende campos de tarjeta.

¿Cuándo compensa frente a un navegador o un servidor MCP propio?

API Anything compensa cuando tu agente consulta a diario el mismo sitio público sin API y el sitio no tiene una protección agresiva contra bots. Para un sitio que ya ofrece API o servidor MCP, usa eso: la propia herramienta muestra primero esas interfaces en sus búsquedas. Para un sistema tuyo, construir un servidor MCP propio te da un contrato estable.

Situación Mejor opción
El sitio tiene API o servidor MCP oficial Esa API, con su contrato y sus límites
Lectura repetida de un sitio público sin API API Anything, comprobando sus condiciones de uso
Tarea única o flujo con formularios Un agente con navegador
Sitio detrás de Cloudflare o con aviso de cookies Un agente con navegador, o una operación reparada a mano
Extraer el contenido de cientos de páginas Un rastreador como Firecrawl

Si es la primera vez que conectas herramientas a un agente, la guía de MCP explica cómo encajan los servidores en Claude Code y en el resto de clientes.

Preguntas frecuentes

¿API Anything necesita una clave de API o un modelo de lenguaje?

No. Aprender y llamar operaciones no usa ningún modelo, y no hay cuenta: la instalación crea una clave anónima en ~/.api-anything/key.json. El modelo solo interviene si un agente decide qué aprender a través de la skill o del servidor MCP.

¿Funciona sin navegador?

Llamar a operaciones compartidas funciona sin navegador en el nivel 1. Para aprender sitios nuevos y para los niveles 2 y 3 necesitas un navegador basado en Chromium, como Chrome, Brave, Edge o Chromium.

¿Cómo evito compartir lo que aprendo?

Ejecuta api-anything setup --no-share. Con la compartición desactivada no se envían operaciones ni informes, pero las búsquedas siguen yendo al catálogo.

Conclusión

API Anything plantea bien un problema real. Según la cifra del autor en Google Flights, un agente con navegador gasta más del doble de tokens para leer el mismo dato. En mi prueba, 6 de sus 7 operaciones de lectura respondieron en menos de 0,9 s con una sola petición HTTP.

Los fallos aparecieron justo en los sitios que se defienden: Google con su aviso de cookies desde Europa, Hacker News con un 419 y la RAE con Cloudflare. Pruébalo con la compartición desactivada, sobre sitios públicos cuyas condiciones lo permitan, y no le confíes tu cuenta de LinkedIn.

Fuentes: [1] API Anything en GitHub[1], [2] Banco de pruebas de API Anything[5], [3] Cómo funciona el catálogo de API Anything[6], [4] Catálogo compartido de API Anything[2], [5] Presentación de API Anything en Hacker News[7], [6] LinkedIn, software y extensiones prohibidos[4], [7] Instrucciones de instalación de API Anything[8].

Fuentes

  1. repositorio de GitHub
  2. catálogo público
  3. Diccionario de la lengua española
  4. página de software prohibido
  5. Banco de pruebas de API Anything
  6. Cómo funciona el catálogo de API Anything
  7. Presentación de API Anything en Hacker News
  8. Instrucciones de instalación de API Anything