En esta página
A la mayoría de las herramientas de IA les encanta ser agentes. La CLI de CrawlForge está construida para lo contrario: scriptable, pensada para la terminal, predecible. La instalas, configuras una variable de entorno y cada una de las 26 herramientas de CrawlForge se convierte en un comando de shell. JSON de entrada, JSON de salida. Canalízalo a jq, prográmalo con cron, ejecútalo en CI: funciona igual en todas partes.
Tabla de contenidos
- ¿Qué es la CLI de CrawlForge?
- Instálala en 30 segundos
- Los 15 comandos de un vistazo
- Tu primer scrape
- Canalizar la salida JSON a jq
- Programar con Cron
- CLI vs MCP vs API directa: cuándo usar cada una
- Tres flujos de trabajo del mundo real
- Referencia de flags globales
- Cuánto cuesta
¿Qué es la CLI de CrawlForge?
La CLI de CrawlForge se incluye dentro del paquete crawlforge-mcp-server como el comando crawlforge y expone las 26 herramientas de CrawlForge como comandos de terminal. Una sola instalación global te da tanto el MCP server como la CLI. No necesita un proceso de larga duración ni un cliente MCP: escribes crawlforge scrape <url>, hace una llamada HTTPS a la API de CrawlForge e imprime JSON en stdout. Esa es toda la historia.
Existe porque la mitad del trabajo de scraping que hace la gente no tiene forma de agente. Cron jobs, pasos de CI, investigación puntual, extracciones ad-hoc desde un shell: esos quieren comandos de toda la vida, no un handshake de JSON-RPC.
Instálala en 30 segundos
npm install -g crawlforge-mcp-server
export CRAWLFORGE_API_KEY="cf_live_your_key_here"
crawlforge --helpEso es todo. Sin archivo de configuración, sin flujo de autenticación, sin servicio que iniciar. Si aún no tienes una API key, consigue una en crawlforge.dev/signup: obtienes 1.000 credits gratis al registrarte.
Para hacer la variable de entorno permanente en macOS o Linux:
echo 'export CRAWLFORGE_API_KEY="cf_live_..."' >> ~/.zshrc
source ~/.zshrcEn Windows (PowerShell):
[Environment]::SetEnvironmentVariable("CRAWLFORGE_API_KEY", "cf_live_...", "User")Los 15 comandos de un vistazo
Cada comando se asigna a una o más herramientas de CrawlForge:
| Comando | Herramienta principal | Credits | Ejemplo |
|---|---|---|---|
scrape | fetch_url, extract_content | 1-2 | crawlforge scrape https://example.com |
search | search_web | 5 | crawlforge search "MCP servers 2026" |
crawl | crawl_deep | 4 | crawlforge crawl https://docs.example.com --depth 3 |
map | map_site | 2 | crawlforge map https://example.com |
extract | extract_with_llm | 3 | crawlforge extract <url> --schema schema.json |
track | track_changes | 3 | crawlforge track <url> --threshold 10 |
analyze | analyze_content | 3 | crawlforge analyze <url> |
research | deep_research | 10 | crawlforge research "AI agents in 2026" |
stealth | stealth_mode | 5 | crawlforge stealth <url> |
batch | batch_scrape | 5 | crawlforge batch urls.txt |
actions | scrape_with_actions | 5 | crawlforge actions <url> --script steps.json |
localize | localization | 2 | crawlforge localize <url> --country DE |
llmstxt | generate_llms_txt | 5 | crawlforge llmstxt https://example.com |
template | scrape_template | 1 | crawlforge template amazon-product <url> |
monitor | track_changes | 3 | crawlforge monitor <url> --interval 3600 |
Tu primer scrape
La llamada más simple posible:
crawlforge scrape https://news.ycombinator.comLo que devuelve es el contenido principal de la página en formato JSON:
{
"url": "https://news.ycombinator.com",
"title": "Hacker News",
"content": "Hacker News new | past | comments | ask...",
"links": ["https://news.ycombinator.com/from?site=...", "..."],
"fetched_at": "2026-05-21T10:14:33Z",
"credits_used": 1
}¿Solo quieres las URLs? Canalízalo a jq:
crawlforge scrape https://news.ycombinator.com --json | jq '.links[]'¿Lo quieres en un archivo? Redirige stdout:
crawlforge scrape https://news.ycombinator.com --pretty > hn.jsonCanalizar la salida JSON a jq
Este es el flujo de trabajo que hace que valga la pena instalar la CLI. Todo produce JSON, y el JSON se canaliza a cualquier cosa.
Obtén los títulos de las historias de la portada de HN:
crawlforge template hacker-news-front-page https://news.ycombinator.com --json \
| jq -r '.stories[] | .title'Busca en la web y extrae las URLs:
crawlforge search "best web scraping libraries 2026" --json \
| jq '.results[] | .url'Haz scraping de una página y cuenta las palabras:
crawlforge scrape https://example.com --json \
| jq -r '.content' \
| wc -wHaz scraping por lotes y luego filtra las respuestas con error:
crawlforge batch urls.txt --json \
| jq '.results[] | select(.status_code >= 400)'El patrón: --json te da salida legible por máquina, y luego jq la corta y la procesa.
Programar con Cron
Una comprobación diaria de la página de precios de un competidor:
# crontab -e
0 9 * * * /usr/local/bin/crawlforge track https://competitor.com/pricing --json > /var/log/pricing.jsonUna ejecución de investigación nocturna:
0 2 * * * /usr/local/bin/crawlforge research "AI tooling news" --depth standard --pretty > /var/log/research.jsonUna regeneración semanal de llms.txt para tu propio sitio:
0 3 * * 0 /usr/local/bin/crawlforge llmstxt https://yoursite.com --include-full > /var/www/yoursite.com/llms.txt¿En CI? Usa los mismos comandos en tu YAML de GitHub Actions. La CLI comprueba primero CRAWLFORGE_API_KEY, así que solo configúralo como un secreto del repositorio.
# .github/workflows/daily-research.yml
- name: Run weekly research
env:
CRAWLFORGE_API_KEY: ${{ secrets.CRAWLFORGE_API_KEY }}
run: |
npm install -g crawlforge-mcp-server
crawlforge research "industry news" --depth standard --pretty > report.jsonCLI vs MCP vs API directa: cuándo usar cada una
| Flujo de trabajo | Usa la CLI | Usa MCP | Usa la API directa |
|---|---|---|---|
| Scrape puntual desde tu terminal | sí | no | no |
| Cron job o paso de CI | sí | no | solo si lo necesitas |
| Agente de Claude / Cursor / Windsurf | no | sí | no |
| Integrado en un servicio Node/Python | no | solo si tiene forma de MCP | sí |
| Worker en segundo plano de larga duración | no | no | sí |
| Exploración rápida de un sitio desconocido | sí | quizás | no |
Regla general: si un humano está escribiendo el comando, usa la CLI. Si un LLM está seleccionando la herramienta, usa MCP. Si un servidor la está llamando en un bucle, usa la API directa.
Tres flujos de trabajo del mundo real
1. Monitor de precios de la competencia
Un script de shell que se ejecuta a diario, hace scraping de tres páginas de precios de competidores, las compara con la instantánea de ayer y publica en Slack si algo cambió.
#!/bin/bash
for url in $(cat competitors.txt); do
crawlforge track "$url" --json \
> "snapshots/$(date +%F)-$(basename $url).json"
done
# Diff against yesterday's snapshot
diff "snapshots/$(date -v-1d +%F)-pricing.json" \
"snapshots/$(date +%F)-pricing.json" \
|| curl -X POST $SLACK_WEBHOOK -d '{"text": "Pricing changed"}'Costo: ~9 credits por día (3 competidores × 3 credits por track).
2. Enriquecimiento de leads desde un CSV
Lee un CSV de dominios de empresas, haz scraping de la página de inicio de cada una en busca de información de contacto y escribe los datos enriquecidos de vuelta.
while IFS=, read -r company domain; do
data=$(crawlforge scrape "https://$domain" --json)
email=$(echo "$data" | jq -r '.metadata.contact_email // empty')
echo "$company,$domain,$email" >> enriched.csv
done < companies.csvCosto: 1 credit por empresa.
3. Pipeline de informe de investigación
Un cron de los domingos por semana que ejecuta una consulta research y envía por correo el resumen sintetizado al equipo.
crawlforge research "AI agent frameworks news this week" --depth deep --pretty > report.json
jq -r '.summary' report.json \
| mail -s "Weekly AI report" team@example.comCosto: 10 credits por ejecución (research incluye el resumen sintetizado).
Referencia de flags globales
Estos funcionan en cada comando:
--json-- JSON compacto y legible por máquina (apto para canalizar)--pretty-- JSON con formato legible--quiet-- suprime toda la salida de stdout (solo código de salida)--api-key <key>-- anula la variable de entornoCRAWLFORGE_API_KEY--timeout <ms>-- anula el timeout predeterminado de 30s
Para escribir los resultados en un archivo, redirige stdout: crawlforge scrape <url> --pretty > out.json.
Cuánto cuesta
La CLI en sí es gratis. Solo pagas por las llamadas a las herramientas subyacentes, facturadas contra tu saldo de credits existente. Sin suscripción extra, sin tarifa por invocación. Un cron diario que ejecuta track contra tres URLs y research una vez por semana cuesta aproximadamente 100 credits al mes, bien dentro del plan gratuito.
¿Listo para instalarla? Consigue tu API key gratis en crawlforge.dev/signup y ejecuta npm install -g crawlforge-mcp-server. ¿Nuevo por aquí? Lee el anuncio de lanzamiento de la v4.2.2 para conocer todo lo nuevo, o el quickstart original de MCP para la versión MCP en su lugar.
Pruébalo tú mismo — sin necesidad de registrarte
Ejecuta cualquiera de las 27 herramientas de scraping y extracción de CrawlForge en el playground y luego empieza gratis con 1,000 credits.
1,000 credits gratis • Se recargan cada mes • No se requiere tarjeta de crédito
Etiquetas
Sobre el autor
Mantente al día con los últimos artículos
Recibe tutoriales, novedades del producto y consejos de web scraping en tu bandeja de entrada.
Sin spam. Cancela tu suscripción cuando quieras.