MCP Webscan Server

by bsmi021
MIT License
7

Integrations

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

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

MCP Webscan Server

Ein Model Context Protocol (MCP)-Server zum Scannen und Analysieren von Webinhalten. Dieser Server bietet Tools zum Abrufen, Analysieren und Extrahieren von Informationen aus Webseiten.

Merkmale

  • Seitenabruf : Konvertieren Sie Webseiten zur einfachen Analyse in Markdown
  • Link-Extraktion : Extrahieren und analysieren Sie Links von Webseiten
  • Site Crawling : Websites rekursiv durchsuchen, um Inhalte zu entdecken
  • Linkprüfung : Identifizieren Sie defekte Links auf Webseiten
  • Mustervergleich : Finden Sie URLs, die bestimmten Mustern entsprechen
  • Sitemap-Generierung : Generieren Sie XML-Sitemaps für Websites

Installation

Installation über Smithery

So installieren Sie Webscan für Claude Desktop automatisch über Smithery :

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

Manuelle Installation

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

Verwendung

Starten des Servers

npm start

Der Server läuft auf stdio-Transport und ist daher mit MCP-Clients wie Claude Desktop kompatibel.

Verfügbare Tools

  1. fetch-page
    • Ruft eine Webseite ab und konvertiert sie in Markdown.
    • Parameter:
      • url (erforderlich): URL der abzurufenden Seite.
      • selector (optional): CSS-Selektor zum Ansprechen bestimmter Inhalte.
  2. extract-links
    • Extrahiert alle Links einer Webseite mit ihrem Text.
    • Parameter:
      • url (erforderlich): URL der zu analysierenden Seite.
      • baseUrl (optional): Basis-URL zum Filtern von Links.
      • limit (optional, Standard: 100): Maximale Anzahl der zurückzugebenden Links.
  3. crawl-site
    • Durchsucht eine Website rekursiv bis zu einer angegebenen Tiefe.
    • Parameter:
      • url (erforderlich): Start-URL zum Crawlen.
      • maxDepth (optional, Standard: 2): Maximale Crawltiefe (0-5).
  4. check-links
    • Überprüft, ob auf einer Seite defekte Links vorhanden sind.
    • Parameter:
      • url (erforderlich): URL, auf die Links geprüft werden sollen.
  5. find-patterns
    • Sucht URLs, die einem bestimmten Muster entsprechen.
    • Parameter:
      • url (erforderlich): URL, in der gesucht werden soll.
      • pattern (erforderlich): JavaScript-kompatibles Regex-Muster zum Abgleichen von URLs.
  6. generate-site-map
    • Generiert durch Crawlen eine einfache XML-Sitemap.
    • Parameter:
      • url (erforderlich): Stamm-URL für das Sitemap-Crawlen.
      • maxDepth (optional, Standard: 2): Maximale Crawl-Tiefe zum Erkennen von URLs (0-5).
      • limit (optional, Standard: 1000): Maximale Anzahl von URLs, die in die Sitemap aufgenommen werden sollen.

Beispielverwendung mit Claude Desktop

  1. Konfigurieren Sie den Server in Ihren Claude Desktop-Einstellungen:
{ "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. Nutzen Sie die Tools in Ihren Gesprächen:
Could you fetch the content from https://example.com and convert it to Markdown?

Entwicklung

Voraussetzungen

  • Node.js >= 18
  • npm

Projektstruktur (nach der Refaktorierung)

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

Gebäude

npm run build

Entwicklungsmodus

npm run dev

Ausführen von Evaluierungen

Das Evals-Paket lädt einen MCP-Client, der anschließend die Datei index.ts ausführt, sodass zwischen den Tests kein Neuaufbau erforderlich ist. Sie können Umgebungsvariablen laden, indem Sie dem Befehl npx voranstellen. Die vollständige Dokumentation finden Sie hier .

OPENAI_API_KEY=your-key npx mcp-eval src/evals/evals.ts src/tools/extractLinksTool.ts

Fehlerbehandlung

Der Server implementiert eine umfassende Fehlerbehandlung:

  • Ungültige Parameter
  • Netzwerkfehler
  • Fehler beim Parsen von Inhalten
  • URL-Validierung

Alle Fehler werden gemäß der MCP-Spezifikation ordnungsgemäß formatiert.

Beitragen

  1. Forken Sie das Repository
  2. Erstellen Sie Ihren Feature-Zweig ( git checkout -b feature/amazing-feature )
  3. Übernehmen Sie Ihre Änderungen ( git commit -m 'Add some amazing feature' )
  4. Pushen zum Zweig ( git push origin feature/amazing-feature )
  5. Öffnen einer Pull-Anfrage

Lizenz

MIT-Lizenz – Einzelheiten finden Sie in der Datei LICENSE

You must be authenticated.

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

Ermöglicht das Scannen und Analysieren von Webinhalten durch Abrufen, Analysieren und Extrahieren von Informationen von Webseiten mithilfe von Tools wie Seitenabruf, Linkextraktion, Site-Crawling und mehr.

  1. Merkmale
    1. Installation
      1. Installation über Smithery
      2. Manuelle Installation
    2. Verwendung
      1. Starten des Servers
      2. Verfügbare Tools
    3. Beispielverwendung mit Claude Desktop
      1. Entwicklung
        1. Voraussetzungen
        2. Projektstruktur (nach der Refaktorierung)
        3. Gebäude
        4. Entwicklungsmodus
      2. Ausführen von Evaluierungen
        1. Fehlerbehandlung
          1. Beitragen
            1. Lizenz

              Related MCP Servers

              • A
                security
                F
                license
                A
                quality
                Provides functionality to fetch web content in various formats, including HTML, JSON, plain text, and Markdown.
                Last updated -
                4
                137,083
                150
                TypeScript
              • A
                security
                A
                license
                A
                quality
                Enables text extraction from web pages and PDFs, and execution of predefined commands, enhancing content processing and automation capabilities.
                Last updated -
                3
                TypeScript
                MIT License
              • -
                security
                F
                license
                -
                quality
                Provides functionality to fetch web content in various formats, including HTML, JSON, plain text, and Markdown.
                Last updated -
                137,083
                1
              • -
                security
                -
                license
                -
                quality
                Provides functionality to fetch web content in various formats, including HTML, JSON, plain text, and Markdown with support for custom headers.
                Last updated -
                137,083
                TypeScript

              View all related MCP servers

              ID: u0tna3hemh