Skip to main content
Glama
Dino-996
by Dino-996

🌐Web Toolkit MCP

Questo toolkit consente a modelli eseguiti in locale di accedere a Internet in modo sicuro, superando i limiti della conoscenza statica e recuperando contenuti aggiornati.


🛠️ Tool disponibili

Il server espone 4 strumenti principali tramite trasporto STDIO:

Tool

Parametri

Descrizione

web_search

query, max_results (1-10), region

Esegue ricerche web tramite DuckDuckGo e restituisce titoli, URL ed estratti sintesi.

read_webpage

url

Scarica pagine web statiche, rimuove elementi inutili (script, menu, footer) e restituisce il testo pulito.

parse_table

url, table_index

Usa un browser headless Chromium (Playwright) per eseguire JavaScript ed estrarre tabelle HTML in formato strutturato.

check_url_status

url, timeout

Esegue un controllo rapido di raggiungibilità, restituisce il codice di stato HTTP, l'URL finale e la latenza in ms.


Related MCP server: WebFetch.MCP

🚀 Requisiti e installazione

  1. Prerequisiti: Python 3.10 o superiore e Node.js installati nel sistema.

  2. Clona il repository e crea l'ambiente virtuale:

    git clone https://github.com/Dino-996/web_toolkit_mcp.git
    cd web_toolkit_mcp
    python -m venv .venv
  3. Attiva l'ambiente virtuale:

    # Windows
    .\.venv\Scripts\activate
    # Linux \ macOS
    source .venv/bin/activate
  4. Installa le dipendenze e i browser di Playwright:

    pip install -r requirements.txt
    playwright install chromium

⚙️ Configurazione in LM Studio

Aggiungi il server all'interno del file mcp.json di LM Studio:

Windows

{
  "mcpServers": {
    "web-toolkit": {
      "command": "[percorso_assoluto_progetto]\\.venv\\Scripts\\python.exe",
      "args": [
        "[percorso_assoluto_progetto]\\main.py"
      ]
    }
  }
}

Nota per utenti Windows: Assicurati di sostituire i percorsi con quelli assoluti del tuo sistema, usando il doppio backslash \\ per l'escape.

Linux / macOS

{
  "mcpServers": {
    "web-toolkit": {
      "command": "[percorso_assoluto_progetto]/.venv/bin/python",
      "args": [
        "[percorso_assoluto_progetto]/main.py"
      ]
    }
  }
}

🔒 Sicurezza e protezione

Il codice integra misure di sicurezza native per l'esecuzione sicura in ambienti locali:

  • Protezione SSRF Hop-by-Hop: Risoluzione manuale dei redirect per bloccare tentativi di navigazione verso IP privati.

  • Mitigazione Prompt Injection: I testi estrapolati dal web vengono racchiusi nei tag [contenuto_non_attendibile], indicando all'LLM di trattarli come dati da analizzare e non come istruzioni da eseguire.

  • Isolamento STDIO: Tutti i log di sistema vengono indirizzati su sys.stderr per evitare interferenze con il canale di comunicazione JSON-RPC su stdout.

  • Gestione Risorse: Controllo delle istanze concorrenti di Chromium tramite semafori in thread separati per prevenire il saturamento della memoria RAM.

📚 Docs

Documentazione MCP

Specifiche ufficiali del protocollo MCP: https://modelcontextprotocol.io

LM Studio Docs

Guida all'integrazione dei server MCP nell'interfaccia: https://lmstudio.ai/docs

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Enables local LLMs to search the web and fetch clean content from URLs without API keys, using SearxNG and Mozilla Readability.
    2
    39
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables local LLMs to search the web, scrape pages, and extract structured data (tables, metadata) from sources like Wikipedia and IMDb, with caching and rate limiting.
    MIT