Costruire un assistente AI locale con ricerca web: configurazione MCP + Ollama
Come combinare modelli linguistici locali con capacità di ricerca web mantenendo i tuoi dati privati
Configurare strumenti AI per uso aziendale spesso significa scegliere tra comodità e privacy. Le soluzioni cloud sono facili da usare ma inviano i tuoi dati altrove. Le soluzioni locali mantengono tutto sulla tua macchina ma possono essere complicate da configurare ed estendere con capacità aggiuntive.
Oggi, vi guideremo nella costruzione di una configurazione AI pratica che vi offre entrambe le cose: un modello linguistico locale che può cercare nel web quando necessario, il tutto mantenendo le vostre conversazioni e l'elaborazione sul vostro hardware. Questo approccio si allinea perfettamente con la nostra filosofia di soluzioni self-hosted – in modo simile a come abbiamo mostrato che è possibile eseguire la propria piattaforma di automazione n8n per un controllo completo dei workflow.
Gli strumenti che utilizziamo
Iniziamo capendo cosa fa ciascun componente:
Ollama: il tuo motore AI locale
Ollama è un software che esegue modelli linguistici di grandi dimensioni sul tuo computer. Pensalo come un modo per avere capacità simili a ChatGPT senza inviare nulla a OpenAI o ad altri provider cloud. Si occupa di scaricare i modelli, gestire la memoria e servirli attraverso una semplice API.
Il vantaggio chiave? Tutto resta in locale. Le tue domande, le risposte dell'AI e qualsiasi elaborazione avvengono interamente sulla tua macchina. Questo è importante per discussioni aziendali sensibili, informazioni proprietarie o semplicemente quando vuoi evitare i costi mensili degli abbonamenti AI.
Model Context Protocol (MCP): aggiungere capacità
I modelli linguistici sono ottimi nella conversazione e nel ragionamento, ma non possono navigare nel web, leggere file o interagire con altri sistemi da soli. Model Context Protocol (MCP) risolve questo problema fornendo un modo standardizzato per dare ai modelli AI accesso a strumenti esterni.
Pensa a MCP come a un traduttore universale tra il tuo modello AI e altri software. Vuoi che la tua AI cerchi nel web? C'è un server MCP per quello. Hai bisogno che legga i database? Un altro server MCP. Il bello è che una volta configurato il protocollo, aggiungere nuove capacità diventa molto più semplice.
mcphost: la connessione affidabile
Ecco dove diventa pratico. Mentre MCP è lo standard, hai bisogno di un software per connettere effettivamente il tuo modello AI locale ai server MCP. mcphost fa esattamente questo, e lo fa bene.
Abbiamo provato prima altre opzioni (come ollmcp), ma abbiamo riscontrato continui timeout di connessione e difficoltà di configurazione. mcphost utilizza file di configurazione espliciti invece di tentare di auto-scoprire tutto, il che significa che funziona effettivamente in modo affidabile negli scenari reali.
Server MCP DuckDuckGo: ricerca web privata
Per le capacità di ricerca web, utilizziamo un server MCP DuckDuckGo. Questo permette alla tua AI locale di cercare nel web tramite l'API di DuckDuckGo, che non traccia gli utenti né memorizza le cronologie di ricerca. È il complemento perfetto per una configurazione locale orientata alla privacy.
uv: gestione degli ambienti Python
uv è un gestore di pacchetti Python veloce che gestisce la creazione di ambienti isolati e la gestione delle dipendenze. Lo usiamo per eseguire il server MCP DuckDuckGo in modo pulito senza interferire con altri progetti Python sul tuo sistema.
Come funziona il tutto insieme
Ecco il flusso quando chiedi alla tua AI locale di cercare qualcosa:
- Scrivi una domanda come “Cerca gli sviluppi recenti nelle normative sull'e-commerce”
- mcphost riceve il tuo messaggio e lo inoltra al tuo modello Ollama locale
- Il modello riconosce che deve fare una ricerca e chiama il server MCP DuckDuckGo tramite il protocollo MCP
- Il server MCP cerca su DuckDuckGo e restituisce i risultati
- Il tuo modello locale elabora i risultati della ricerca e ti fornisce una risposta esaustiva
- Tutto resta sulla tua macchina tranne la query di ricerca web effettiva
Configurazione pratica: i passaggi concreti
Preparare le basi
Per prima cosa, avrai bisogno di Ollama in esecuzione con un modello che supporti le chiamate a strumenti. Raccomandiamo qwen3:30b-a3b per un buon equilibrio tra capacità e velocità:
# Install and start Ollama
ollama pull qwen3:30b-a3b
ollama serve
Installazione di mcphost
mcphost è scritto in Go, quindi avrai bisogno prima di quello:
# On macOS
brew install go
# On Ubuntu/Debian
sudo apt install golang-go
# Install mcphost
go install github.com/mark3labs/mcphost@latest
# Make sure it's in your PATH
export PATH=$PATH:$(go env GOPATH)/bin
Configurazione della ricerca DuckDuckGo
Clona e configura il server MCP DuckDuckGo:
git clone https://github.com/example/duckduckgo-mcp-server
cd duckduckgo-mcp-server
pip install uv # if you don't have it
uv sync
Una configurazione che funziona davvero
Crea un file di configurazione in ~/.mcphost.json:
{
"mcpServers": {
"duckduckgo-search": {
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/your/duckduckgo-mcp-server",
"python",
"src/duckduckgo_mcp_server/server.py"
]
}
}
}
Sostituisci /path/to/your/duckduckgo-mcp-server con il percorso effettivo in cui hai clonato il repository.
Utilizzare il tuo nuovo assistente AI
Una volta che tutto è in esecuzione, puoi interagire con la tua AI in diversi modi:
Chat interattiva
# Start a conversation
mcphost -m ollama:qwen3:30b-a3b
Questo ti fornisce un'interfaccia di chat dove puoi avere conversazioni continue e chiedere ricerche web quando necessario.
Domande singole
# Get a quick answer
mcphost -m ollama:qwen3:30b-a3b -p "Search for information about EU data privacy laws"
Script automatizzati
# Save results to a file
mcphost -m ollama:qwen3:30b-a3b -p "Search for competitors in the bowling equipment market" --quiet > research.txt
Cosa puoi effettivamente fare con questo
Ricerca e verifica dei fatti
Chiedi alla tua AI di cercare informazioni aggiornate su argomenti rilevanti per la tua attività. Poiché utilizza DuckDuckGo, ottieni risultati web decenti senza il tracciamento.
Ricerca di contenuti
“Cerca le tendenze recenti nel packaging sostenibile” ti fornisce informazioni aggiornate che il modello può poi analizzare e riassumere sulla base del suo addestramento.
Intelligence competitiva
“Cerca notizie su [nome concorrente] e riassumi le loro attività recenti” fornisce informazioni aggiornate mantenendo privati i tuoi interessi di ricerca.
Risoluzione di problemi tecnici
“Cerca soluzioni per problemi di rate limiting delle API” può aiutarti a trovare le best practice attuali e gli esempi di codice.
La connessione con n8n: l'automazione dei workflow incontra l'AI
Ecco dove le cose diventano davvero interessanti. Proprio come abbiamo mostrato come fare il self-hosting di n8n per l'automazione dei workflow, questa configurazione AI locale può essere integrata in workflow automatizzati.
Immagina di attivare la tua AI locale tramite workflow n8n:
- Ricerca automatizzata: workflow giornalieri che cercano notizie di settore e compilano riassunti
- Generazione di contenuti: creazione di contenuti attivata da eventi del calendario o invii di moduli
- Analisi dati: elaborazione automatizzata di documenti caricati con approfondimenti AI
- Supporto clienti: elaborazione AI locale dei ticket di supporto prima della revisione umana
La combinazione di n8n self-hosted e AI locale crea uno stack di automazione potente dove i tuoi dati non lasciano mai la tua infrastruttura. Ottieni la comodità dell'automazione con il controllo completo sulla privacy.
Possibilità di integrazione future
Stiamo esplorando diversi modi per collegare questi sistemi:
- Endpoint HTTP dalla tua AI locale che n8n può chiamare
- Integrazione basata su file dove n8n attiva l'elaborazione AI sui documenti
- Workflow su database dove i risultati AI alimentano processi aziendali automatizzati
- Automazione email dove la tua AI locale aiuta a redigere e personalizzare le risposte
Proprio come i nostri strumenti di automazione WordPress semplificano la gestione dei contenuti, combinare l'AI locale con i workflow n8n può automatizzare processi aziendali complessi mantenendo la sovranità sui dati.
I vantaggi reali
Privacy che conta davvero
Le tue conversazioni aziendali, le discussioni interne e il pensiero strategico restano sul tuo hardware. Solo le tue query di ricerca web escono (attraverso il rispettoso della privacy DuckDuckGo), e queste non includono il contesto sul perché stai cercando.
Nessuna bolletta mensile
Dopo la configurazione iniziale, non ci sono costi di abbonamento AI in corso. Stai usando il tuo hardware per eseguire tutto – in modo simile a come il self-hosting di n8n ti risparmia i costi degli strumenti di workflow SaaS.
Prestazioni affidabili
Con una configurazione appropriata, questa soluzione è notevolmente stabile. Niente più problemi come “il servizio AI è fuori uso” o “abbiamo raggiunto il limite mensile”.
Personalizzabile ed estensibile
Vuoi aggiungere la ricerca nel database? La lettura dei file? Logica aziendale personalizzata? L'ecosistema MCP rende l'aggiunta di nuove capacità semplice, e l'eventuale integrazione con i tuoi workflow n8n apre infinite possibilità di automazione.
Problemi comuni e soluzioni
Errori “Command Not Found”
Assicurati che la directory dei binari Go sia nel tuo PATH:
echo 'export PATH=$PATH:$(go env GOPATH)/bin' >> ~/.zshrc
source ~/.zshrc
Timeout di connessione
Di solito significa che il server MCP non si avvia correttamente. Testalo manualmente:
cd /path/to/duckduckgo-mcp-server
uv run python src/duckduckgo_mcp_server/server.py
Il modello non risponde alle chiamate degli strumenti
Assicurati di utilizzare un modello che supporti le chiamate a funzioni. Non tutti i modelli Ollama hanno questa capacità integrata.
Prestazioni lente
Considera l'utilizzo di un modello più piccolo (come qwen3:7b) se il tuo hardware è limitato, oppure regola le impostazioni di temperatura per risposte più veloci:
mcphost -m ollama:qwen3:7b --temperature 0.3 -p "your question"
Considerazioni infrastrutturali
Se stai già eseguendo servizi self-hosted come n8n, potresti considerare di ospitare questo sulla stessa infrastruttura. La configurazione che abbiamo descritto per n8n su Hetzner Cloud può facilmente ospitare anche Ollama – avrai solo bisogno di più RAM e CPU per i modelli linguistici.
Una configurazione tipica potrebbe includere:
- Hetzner CCX42 o simile per le risorse necessarie ai modelli più grandi
- Containerizzazione Docker per una gestione semplice accanto a n8n
- Reverse proxy Traefik per accesso sicuro (se desideri l'accesso remoto)
- Storage condiviso per modelli e dati dei workflow
Vale il tempo di configurazione?
Se utilizzi regolarmente l'AI per attività aziendali e tieni alla privacy, assolutamente sì. La configurazione iniziale richiede alcune ore, ma ti ritrovi con un assistente AI capace che:
- Funziona offline (tranne per le ricerche web)
- Non invia i tuoi dati a terze parti
- Non costa nulla da gestire dopo la configurazione
- Può essere esteso con capacità aggiuntive secondo le necessità
- Si integra con la tua infrastruttura self-hosted esistente
Per i team che gestiscono informazioni sensibili o operano in settori regolamentati, questa configurazione fornisce capacità AI senza i grattacapi di conformità dei servizi cloud.
La combinazione di elaborazione locale con accesso web selettivo trova un equilibrio pratico tra capacità e privacy che è difficile da raggiungere con soluzioni puramente cloud o puramente locali. E quando aggiungi l'automazione dei workflow, stai costruendo una base per un'automazione aziendale veramente sofisticata che resta sotto il tuo controllo.
Quali sono i prossimi passi?
Stiamo lavorando attivamente a integrazioni più profonde tra configurazioni AI locali e piattaforme di automazione dei workflow. Tieni d'occhio i futuri post che tratteranno:
- Configurazioni Docker per setup combinati n8n + Ollama
- Server MCP personalizzati per fonti dati specifiche dell'azienda
- Template di workflow che sfruttano l'AI locale per processi aziendali comuni
- Hardening della sicurezza per deployment in produzione
Il futuro dell'automazione aziendale non riguarda solo il collegamento di servizi esistenti – si tratta di avere sistemi intelligenti che possano ragionare, ricercare e agire per conto tuo mantenendo tutto sotto il tuo controllo.
Se incontri problemi durante la configurazione o vuoi estendere questa configurazione per il tuo caso d'uso specifico, siamo lieti di aiutarti nella risoluzione dei problemi attraverso i nostri canali di supporto standard.