Skip to main content
Glama
dowant

LionScraper

by dowant

Puente de LionScraper MCP + CLI + HTTP API

简体中文

¿Qué es esto?

LionScraper es una extensión de navegador que puede recopilar listas, artículos, enlaces, imágenes y más de páginas web. Este repositorio proporciona el puente complementario entre tus herramientas y dicha extensión de tres maneras:

  • MCP (lionscraper-mcp): conecta una aplicación de IA (p. ej., Cursor) para que el modelo pueda llamar a herramientas de scraping a través de stdio.

  • CLI (lionscraper): ejecuta daemon, scrape, ping y más desde una terminal en el mismo puerto HTTP/WebSocket local que la extensión.

  • HTTP API: cuando el daemon está en ejecución, llama a las mismas capacidades a través de HTTP JSON de loopback (p. ej., /v1/...) desde scripts o cualquier cliente HTTP; no se requiere front-end de MCP o CLI.

La lógica de scraping real se ejecuta en la extensión; estos paquetes se conectan y reenvían las solicitudes.

Related MCP server: crawl4ai-mcp

Antes de empezar

  1. Navegador: Chrome o Edge (sigue lo que la extensión soporte).

  2. Extensión LionScraper: instálala y actívala desde la tienda.

  3. Runtime (elige una o ambas implementaciones):

    • Node.js 18+ para el paquete npm — Node.js

    • Python 3.10+ para el paquete PyPI — Python

  4. Para MCP: una aplicación de IA que soporte MCP (p. ej., Cursor, Trae).

  5. Para la HTTP API: el mismo navegador, extensión y daemon que la CLI; consulta los README de los paquetes para ver rutas y ejemplos.

Respaldo HTTP sin Chrome/Edge: Si no se detecta ningún navegador en las rutas estándar y la extensión no está conectada, MCP se inicia de todos modos; ping tiene éxito con el modo http_fetch y scrape* utiliza un servidor HTTP GET mínimo (sin ejecución de JS). Si hay un navegador instalado pero la extensión no está conectada, seguirás obteniendo el flujo de conexión de la extensión. La ruta de auto-spawn de Node soluciona las instalaciones en Unix donde lionscraper.js se resolvía sin una / inicial (p. ej., Glama/Docker). El paquete de Python utiliza aiohttp para HTTP/WebSocket saliente hacia el daemon.

Dos implementaciones

Node.js (npm)

Python (pip)

Registro

io.github.dowant/lionscraper-node

io.github.dowant/lionscraper-python

Docs (EN)

packages/node/README.md

packages/python/README.md

Docs (ZH)

packages/node/README_cn.md

packages/python/README_cn.md

Instala uno o ambos; son paquetes separados con los mismos nombres de comando CLI.

Instalación (npm)

Publicado como lionscraper en npm.

npm install -g lionscraper

Sin una instalación global, MCP puede usar npx; consulta los ejemplos JSON de npx en Añadir MCP en tu aplicación de IA.

Instalación (pip)

Publicado como lionscraper en PyPI.

pip install -U lionscraper

Se recomienda un entorno virtual, o pip install -U --user lionscraper si prefieres no instalarlo en el intérprete del sistema.

Comandos (ambos paquetes)

Comando

Rol

lionscraper-mcp

Servidor MCP ligero (stdio) para aplicaciones de IA

lionscraper

CLI: daemon, stop, scrape, ping, … (también sirve la HTTP API en el mismo puerto)

Después de pip install -U lionscraper, si lionscraper-mcp no está en tu PATH, usa python -m lionscraper sin argumentos adicionales para MCP stdio (consulta packages/python/README.md).

PORT (por defecto 13808) debe coincidir con el puerto del puente de la extensión en todos los modos.

Inicio rápido de CLI

lionscraper daemon
lionscraper ping
lionscraper scrape -u https://www.example.com

Flags completos, múltiples URLs, paginación y detalles de la HTTP API: packages/node/README.md / packages/python/README.md.

Añadir MCP en tu aplicación de IA

Los ejemplos asumen que lionscraper-mcp está en tu PATH (desde npm o pip). En JSON de MCP, cada valor de env es una cadena.

Configuración mínima (PORT por defecto es 13808; debe coincidir con el puerto del puente de la extensión):

{
  "mcpServers": {
    "lionscraper": {
      "command": "lionscraper-mcp"
    }
  }
}

Ejemplo completo de env (omite las claves que no necesites):

{
  "mcpServers": {
    "lionscraper": {
      "command": "lionscraper-mcp",
      "env": {
        "PORT": "13808",
        "TIMEOUT": "120000",
        "LANG": "en-US",
        "TOKEN": "",
        "DAEMON": ""
      }
    }
  }
}

npx (sin instalación global) — requiere Node.js; la primera ejecución puede descargar el paquete. El nombre del paquete npm es lionscraper; el ejecutable es lionscraper-mcp. Usa el comando npx y pasa lionscraper seguido de lionscraper-mcp en args (después de -y).

Configuración mínima (npx):

{
  "mcpServers": {
    "lionscraper": {
      "command": "npx",
      "args": ["-y", "lionscraper", "lionscraper-mcp"]
    }
  }
}

Ejemplo completo de env (npx):

{
  "mcpServers": {
    "lionscraper": {
      "command": "npx",
      "args": ["-y", "lionscraper", "lionscraper-mcp"],
      "env": {
        "PORT": "13808",
        "TIMEOUT": "120000",
        "LANG": "en-US",
        "TOKEN": "",
        "DAEMON": ""
      }
    }
  }
}

Para fijar una versión, usa p. ej. "lionscraper@1.0.1" en lugar de "lionscraper" dentro de args.

  • PORT: puerto de escucha HTTP + WebSocket; por defecto 13808; debe coincidir con el puerto del puente de la extensión.

  • TIMEOUT: ms de espera para que una instancia anterior libere el puerto; por defecto 120000; 0 fuerza la toma de control rápidamente.

  • LANG: idioma de las descripciones de herramientas y stderr (en-US, zh-CN o formas POSIX).

  • TOKEN: token Bearer compartido con el daemon; vacío significa sin autenticación.

  • DAEMON: solo 0 deshabilita el inicio automático de lionscraper daemon desde el MCP ligero.

Reinicia MCP o la aplicación host después de cambiar la configuración.

Python: MCP vía python -m

{
  "mcpServers": {
    "lionscraper": {
      "command": "python",
      "args": ["-m", "lionscraper"]
    }
  }
}

Usa el mismo python que usaste para instalar el paquete (o python3 en algunos sistemas).

Coincidencia del puerto en la extensión del navegador

  1. Abre la configuración / opciones de LionScraper.

  2. Establece el puerto del puente al mismo valor que PORT (p. ej., 13808).

  3. Si es necesario, usa Reconnect, recarga la extensión o reinicia el navegador.

Uso diario

  1. Mantén la extensión habilitada y las páginas objetivo abiertas según sea necesario.

  2. Pregunta en lenguaje natural (p. ej., verificar conexión, extraer listas / artículos / correos electrónicos / teléfonos / enlaces / imágenes).

  3. Si ves “not connected” o tiempos de espera, vuelve a intentar una verificación de conexión y confirma que el PORT coincida.

Preguntas frecuentes

¿La extensión no está conectada o el scraping falla?

  • ¿Está la extensión habilitada?

  • ¿El PORT en la aplicación de IA coincide exactamente con el puerto del puente de la extensión?

  • Un puente por máquina suele ser suficiente; las configuraciones de MCP duplicadas pueden entrar en conflicto.

¿Ver herramientas MCP en el cliente significa que todo funciona?

No necesariamente. Las herramientas solo prueban la conexión IA → puente; la extensión también debe registrarse en el mismo puerto.

Registro y directorios de MCP

Entradas oficiales del Registro MCP (ambas usan server.json):

Ruta

Nombre de registro

Paquete

packages/node/server.json

io.github.dowant/lionscraper-node

npm: lionscraper (mcpName en package.json)

packages/python/server.json

io.github.dowant/lionscraper-python

PyPI: lionscraper (comentario mcp-name en el README.md en inglés)

Esquema de publicación (instala la CLI oficial, consulta Inicio rápido):

  1. Publica en npm / PyPI en la versión indicada en cada server.json.

  2. En packages/node: mcp-publisher login github, luego mcp-publisher publish.

  3. En packages/python: mcp-publisher publish (se reutiliza el inicio de sesión).

Los listados de terceros (p. ej., Glama) tienen sus propias reglas; Smithery apunta a configuraciones de HTTPS/streaming públicas en lugar de stdio local + npm/pip por defecto.

Directorio de terceros (Glama)

Este proyecto aparece en Glama (p. ej., LionScraper en Glama). Si la página muestra cannot be installed o license not found, las soluciones típicas son: añadir un LICENSE en la raíz (este repositorio incluye LICENSE), añadir glama.json con los nombres de usuario de GitHub de los mantenedores para repositorios propiedad de organizaciones (glama.json—edita maintainers si la reclamación falla), reclamar el servidor en Glama y, opcionalmente, completar el flujo de Docker / release de Glama si necesitas sus comprobaciones de instalación y seguridad/calidad; la instalación oficial sigue siendo npm install -g lionscraper y pip install -U lionscraper. Consulta también la página de puntuación / lista de verificación.

Licencia

MIT (igual que los paquetes de npm y PyPI).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 6 tool updatesv1.0.6
    • First observedping
    • First observedscrape_article
    • First observedscrape_emails
    • First observedscrape_images
    • First observedscrape_phones
    • First observedscrape_urls

TDQS

A4.4/5.0

Scored across 6 tools

Disambiguation5/5

Each tool targets a distinct extraction domain (articles, emails, images, phones, URLs) or connection status (ping). No overlap exists between the specialized scrapers, and the agent can easily select based on desired data type.

Naming Consistency5/5

All extraction tools follow the consistent snake_case pattern scrape_{noun} (scrape_article, scrape_emails, scrape_images, scrape_phones, scrape_urls). 'ping' appropriately deviates as a connectivity utility rather than extraction tool.

Tool Count5/5

Six tools is ideal for this focused scope: one connection manager plus five specific extraction targets. The count avoids bloat while covering the essential extraction workflows for a browser-based scraper.

Completeness4/5

Covers the core extraction lifecycle: connectivity check, URL discovery, and specific data harvesting (articles, emails, images, phones). Documentation references a generic 'scrape' fallback tool that isn't listed, indicating either a minor gap or outdated docs.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers