Skip to main content
Glama
bsmi021
by bsmi021

MCP Webscan Server

Schmiedeabzeichen

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

Related MCP server: MCP Access Server

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

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/bsmi021/mcp-server-webscan'

If you have feedback or need assistance with the MCP directory API, please join our Discord server