MCP Webscan Server

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Converts web page content to Markdown format for easier analysis and processing

  • Generates XML sitemaps for websites, providing structured site mapping capabilities

Servidor de escaneo web MCP

Un servidor de Protocolo de Contexto de Modelo (MCP) para el escaneo y análisis de contenido web. Este servidor proporciona herramientas para obtener, analizar y extraer información de páginas web.

Características

  • Obtención de páginas : convierte páginas web a Markdown para facilitar su análisis
  • Extracción de enlaces : extrae y analiza enlaces de páginas web
  • Rastreo de sitios : rastree sitios web de forma recursiva para descubrir contenido
  • Comprobación de enlaces : identificar enlaces rotos en páginas web
  • Coincidencia de patrones : encuentre URL que coincidan con patrones específicos
  • Generación de mapas de sitios : genere mapas de sitios XML para sitios web

Instalación

Instalación mediante herrería

Para instalar Webscan para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install mcp-server-webscan --client claude

Instalación manual

# Clone the repository git clone <repository-url> cd mcp-server-webscan # Install dependencies npm install # Build the project npm run build

Uso

Iniciando el servidor

npm start

El servidor se ejecuta en el transporte stdio, lo que lo hace compatible con clientes MCP como Claude Desktop.

Herramientas disponibles

  1. fetch-page
    • Obtiene una página web y la convierte a Markdown.
    • Parámetros:
      • url (obligatorio): URL de la página a buscar.
      • selector (opcional): selector CSS para orientar contenido específico.
  2. extract-links
    • Extrae todos los enlaces de una página web con su texto.
    • Parámetros:
      • url (obligatorio): URL de la página a analizar.
      • baseUrl (opcional): URL base para filtrar enlaces.
      • limit (opcional, predeterminado: 100): número máximo de enlaces a devolver.
  3. crawl-site
    • Rastrea recursivamente un sitio web hasta una profundidad específica.
    • Parámetros:
      • url (obligatorio): URL inicial para rastrear.
      • maxDepth (opcional, predeterminado: 2): profundidad máxima de rastreo (0-5).
  4. check-links
    • Comprueba si hay enlaces rotos en una página.
    • Parámetros:
      • url (obligatorio): URL para comprobar los enlaces.
  5. find-patterns
    • Encuentra URL que coinciden con un patrón específico.
    • Parámetros:
      • url (obligatorio): URL donde buscar.
      • pattern (obligatorio): patrón de expresión regular compatible con JavaScript con el que hacer coincidir las URL.
  6. generate-site-map
    • Genera un mapa del sitio XML simple mediante rastreo.
    • Parámetros:
      • url (obligatorio): URL raíz para el rastreo del mapa del sitio.
      • maxDepth (opcional, predeterminado: 2): profundidad máxima de rastreo para descubrir URL (0-5).
      • limit (opcional, predeterminado: 1000): número máximo de URL para incluir en el mapa del sitio.

Ejemplo de uso con Claude Desktop

  1. Configure el servidor en la configuración de Claude Desktop:
{ "mcpServers": { "webscan": { "command": "node", "args": ["path/to/mcp-server-webscan/build/index.js"], // Corrected path "env": { "NODE_ENV": "development", "LOG_LEVEL": "info" // Example: Set log level via env var } } } }
  1. Utilice las herramientas en sus conversaciones:
Could you fetch the content from https://example.com and convert it to Markdown?

Desarrollo

Prerrequisitos

  • Node.js >= 18
  • npm

Estructura del proyecto (posterior a la refactorización)

mcp-server-webscan/ ├── src/ │ ├── config/ │ │ └── ConfigurationManager.ts │ ├── services/ │ │ ├── CheckLinksService.ts │ │ ├── CrawlSiteService.ts │ │ ├── ExtractLinksService.ts │ │ ├── FetchPageService.ts │ │ ├── FindPatternsService.ts │ │ ├── GenerateSitemapService.ts │ │ └── index.ts │ ├── tools/ │ │ ├── checkLinksTool.ts │ │ ├── checkLinksToolParams.ts │ │ ├── crawlSiteTool.ts │ │ ├── crawlSiteToolParams.ts │ │ ├── extractLinksTool.ts │ │ ├── extractLinksToolParams.ts │ │ ├── fetchPageTool.ts │ │ ├── fetchPageToolParams.ts │ │ ├── findPatterns.ts │ │ ├── findPatternsToolParams.ts │ │ ├── generateSitemapTool.ts │ │ ├── generateSitemapToolParams.ts │ │ └── index.ts │ ├── types/ │ │ ├── checkLinksTypes.ts │ │ ├── crawlSiteTypes.ts │ │ ├── extractLinksTypes.ts │ │ ├── fetchPageTypes.ts │ │ ├── findPatternsTypes.ts │ │ ├── generateSitemapTypes.ts │ │ └── index.ts │ ├── utils/ │ │ ├── errors.ts │ │ ├── index.ts │ │ ├── logger.ts │ │ ├── markdownConverter.ts │ │ └── webUtils.ts │ ├── initialize.ts │ └── index.ts # Main server entry point ├── build/ # Compiled JavaScript (Corrected) ├── node_modules/ ├── .clinerules ├── .gitignore ├── Dockerfile ├── LICENSE ├── mcp-consistant-servers-guide.md ├── package.json ├── package-lock.json ├── README.md ├── RFC-2025-001-Refactor.md ├── smithery.yaml └── tsconfig.json

Edificio

npm run build

Modo de desarrollo

npm run dev

Manejo de errores

El servidor implementa un manejo integral de errores:

  • Parámetros no válidos
  • Errores de red
  • Errores de análisis de contenido
  • Validación de URL

Todos los errores están formateados correctamente según la especificación MCP.

Contribuyendo

  1. Bifurcar el repositorio
  2. Crea tu rama de funciones ( git checkout -b feature/amazing-feature )
  3. Confirme sus cambios ( git commit -m 'Add some amazing feature' )
  4. Empujar a la rama ( git push origin feature/amazing-feature )
  5. Abrir una solicitud de extracción

Licencia

Licencia MIT: consulte el archivo de LICENCIA para obtener más detalles

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Permite el escaneo y análisis de contenido web mediante la obtención, el análisis y la extracción de información de páginas web utilizando herramientas como obtención de páginas, extracción de enlaces, rastreo de sitios y más.

  1. Features
    1. Installation
      1. Installing via Smithery
      2. Manual Installation
    2. Usage
      1. Starting the Server
      2. Available Tools
    3. Example Usage with Claude Desktop
      1. Development
        1. Prerequisites
        2. Project Structure (Post-Refactor)
        3. Building
        4. Development Mode
      2. Error Handling
        1. Contributing
          1. License
            ID: u0tna3hemh