Read Website Fast

Extracción rápida y eficiente de contenido web que convierte sitios web a Markdown limpio. Incluye Mozilla Readability, caché inteligente, rastreo respetuoso con soporte para robots.txt y obtención concurrente con dependencias mínimas.

Documentación

@just-every/mcp-read-website-fast

Extracción rápida y eficiente en tokens de contenido web para agentes de IA: convierte sitios web a Markdown limpio.

npm version GitHub Actions

read-website-fast MCP server

Resumen

Los rastreadores web MCP existentes son lentos y consumen grandes cantidades de tokens. Esto pausa el proceso de desarrollo y proporciona resultados incompletos, ya que los LLM necesitan analizar páginas web completas.

Este paquete MCP obtiene páginas web localmente, elimina el ruido y convierte el contenido a Markdown limpio preservando los enlaces. Diseñado para Claude Code, IDEs y pipelines de LLM con un consumo mínimo de tokens. Rastree sitios localmente con dependencias mínimas.

Nota: Este paquete ahora utiliza @just-every/crawl para su funcionalidad principal de rastreo y conversión a Markdown.

Características

  • Inicio rápido usando el SDK oficial de MCP con carga diferida para un rendimiento óptimo
  • Extracción de contenido usando Mozilla Readability (igual que la Vista de Lector de Firefox)
  • Conversión de HTML a Markdown con Turndown + soporte GFM
  • Caché inteligente con URLs hasheadas con SHA-256
  • Rastreo educado con soporte de robots.txt y limitación de velocidad
  • Obtención concurrente con rastreo de profundidad configurable
  • Diseño orientado a flujo para bajo uso de memoria
  • Preservación de enlaces para grafos de conocimiento
  • Fragmentación opcional para procesamiento posterior

Instalación

Claude Code

claude mcp add read-website-fast -s user -- npx -y @just-every/mcp-read-website-fast

VS Code

code --add-mcp '{"name":"read-website-fast","command":"npx","args":["-y","@just-every/mcp-read-website-fast"]}'

Cursor

cursor://anysphere.cursor-deeplink/mcp/install?name=read-website-fast&config=eyJyZWFkLXdlYnNpdGUtZmFzdCI6eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBqdXN0LWV2ZXJ5L21jcC1yZWFkLXdlYnNpdGUtZmFzdCJdfX0=

IDEs JetBrains

Configuración → Herramientas → Asistente de IA → Model Context Protocol (MCP) → Agregar

Elija “As JSON” y pegue:

{"command":"npx","args":["-y","@just-every/mcp-read-website-fast"]}

O, en la ventana de chat, escriba /add y complete el mismo JSON: ambas rutas instalan el servidor en un solo paso. 

JSON sin procesar (funciona en cualquier cliente MCP)

{
  "mcpServers": {
    "read-website-fast": {
      "command": "npx",
      "args": ["-y", "@just-every/mcp-read-website-fast"]
    }
  }
}

Coloque esto en el mcp.json de su cliente (por ejemplo, .vscode/mcp.json, ~/.cursor/mcp.json, o .mcp.json para Claude).

Características

  • Inicio rápido usando el SDK oficial de MCP con carga diferida para un rendimiento óptimo
  • Extracción de contenido usando Mozilla Readability (igual que la Vista de Lector de Firefox)
  • Conversión de HTML a Markdown con Turndown + soporte GFM
  • Caché inteligente con URLs hasheadas con SHA-256
  • Rastreo educado con soporte de robots.txt y limitación de velocidad
  • Obtención concurrente con rastreo de profundidad configurable
  • Diseño orientado a flujo para bajo uso de memoria
  • Preservación de enlaces para grafos de conocimiento
  • Fragmentación opcional para procesamiento posterior

Herramientas Disponibles

  • read_website - Obtiene una página web y la convierte a markdown limpio
    • Parámetros:
      • url (obligatorio): La URL HTTP/HTTPS a obtener
      • pages (opcional): Número máximo de páginas a rastrear (predeterminado: 1, máximo: 100)

Recursos Disponibles

  • read-website-fast://status - Obtener estadísticas de caché
  • read-website-fast://clear-cache - Limpiar el directorio de caché

Uso en Desarrollo

Instalación

npm install
npm run build

Obtener una sola página

npm run dev fetch https://example.com/article

Rastreo con profundidad

npm run dev fetch https://example.com --depth 2 --concurrency 5

Formatos de salida

# Markdown only (default)
npm run dev fetch https://example.com

# JSON output with metadata
npm run dev fetch https://example.com --output json

# Both URL and markdown
npm run dev fetch https://example.com --output both

Opciones de CLI

  • -p, --pages <number> - Número máximo de páginas a rastrear (predeterminado: 1)
  • -c, --concurrency <number> - Máximo de solicitudes concurrentes (predeterminado: 3)
  • --no-robots - Ignorar robots.txt
  • --all-origins - Permitir rastreo entre orígenes
  • -u, --user-agent <string> - Agente de usuario personalizado
  • --cache-dir <path> - Directorio de caché (predeterminado: .cache)
  • -t, --timeout <ms> - Tiempo de espera de solicitud en milisegundos (predeterminado: 30000)
  • -o, --output <format> - Formato de salida: json, markdown o ambos (predeterminado: markdown)

Limpiar caché

npm run dev clear-cache

Función de Reinicio Automático

El servidor MCP incluye capacidad de reinicio automático por defecto para mayor fiabilidad:

  • Reinicia automáticamente el servidor si se bloquea
  • Maneja excepciones no capturadas y rechazos de promesas
  • Implementa retroceso exponencial (máximo 10 intentos en 1 minuto)
  • Registra todos los intentos de reinicio para monitoreo
  • Maneja correctamente las señales de apagado (SIGINT, SIGTERM)

Para desarrollo/depuración sin reinicio automático:

# Run directly without restart wrapper
npm run serve:dev

Arquitectura

mcp/
├── src/
│   ├── crawler/        # URL fetching, queue management, robots.txt
│   ├── parser/         # DOM parsing, Readability, Turndown conversion
│   ├── cache/          # Disk-based caching with SHA-256 keys
│   ├── utils/          # Logger, chunker utilities
│   ├── index.ts        # CLI entry point
│   ├── serve.ts        # MCP server entry point
│   └── serve-restart.ts # Auto-restart wrapper

Desarrollo

# Run in development mode
npm run dev fetch https://example.com

# Build for production
npm run build

# Run tests
npm test

# Type checking
npm run typecheck

# Linting
npm run lint

Contribuciones

¡Las contribuciones son bienvenidas! Por favor:

  1. Haga un fork del repositorio
  2. Cree una rama de características
  3. Agregue pruebas para la nueva funcionalidad
  4. Envíe una solicitud de extracción

Solución de Problemas

Problemas de Caché

npm run dev clear-cache

Errores de Tiempo de Espera

  • Aumente el tiempo de espera con la bandera -t
  • Verifique la conectividad de red
  • Verifique que la URL sea accesible

Contenido No Extraído

  • Algunos sitios bloquean el acceso automatizado
  • Pruebe un agente de usuario personalizado con la bandera -u
  • Verifique si el sitio requiere JavaScript (no compatible)

Licencia

MIT