OpenCode + Qdrant MCP: RAG locale e risposte con fonti verificabili
Oct 8, 2026
Sai di aver scritto una cosa, ma non ricordi più in quale file? In questa puntata di GeekAndHack colleghiamo OpenCode a Qdrant per costruire una memoria esterna consultabile: un archivio in cui l’AI può cercare informazioni e indicarti il documento da cui arrivano.
Dopo Ollama, facciamo il passo successivo: diamo all’agente strumenti per ritrovare informazioni nei nostri file, anche quando la domanda usa parole diverse da quelle presenti nel testo.
Vediamo come:
• Collegare OpenCode e Qdrant tramite MCP.
• Dividere i documenti in chunk e trasformarli in embedding.
• Indicizzare una cartella selezionata.
• Cercare un passaggio e risalire alla fonte.
• Controllare i risultati e gestire le domande senza risposta nel corpus.
Il punto non è fidarsi di una risposta convincente: è poter aprire il documento citato e verificare cosa dice davvero.
Affrontiamo anche i limiti: doppioni, bozze obsolete e risultati semanticamente vicini possono peggiorare la ricerca. La memoria esterna non rende infallibile il modello e non include automaticamente tutti i file del PC.
🔐 Qdrant ed embedding possono funzionare in locale. Il percorso dei dati dipende anche dal modello configurato in OpenCode: un database locale, da solo, non significa che tutto resti sul computer.
🚀 Nel prossimo episodio passiamo dalla ricerca all’azione: un compito da completare dall’inizio alla fine, per vedere dove l’agente riesce e dove sbaglia.
🔔 Iscriviti a GeekAndHack e segui la serie.
💬 Tu gli affideresti tutti i tuoi documenti o soltanto una cartella? Quale non indicizzeresti mai?
RISORSE
OpenCode — MCP:
https://opencode.ai/docs/mcp-servers/
Qdrant — guida iniziale:
https://qdrant.tech/documentation/quickstart/
Server MCP Qdrant:
https://pypi.org/project/mcp-server-qdrant/
COMANDI DA INCOLLARE:
1️⃣ Verifica Docker
docker --version
(risultato nel video: Docker version 29.5.3)
2️⃣ Scarica Qdrant
docker pull qdrant/qdrant
3️⃣ Avvia Qdrant in locale (solo dal tuo PC, porte chiuse all'esterno)
docker run -d --name qdrant -p 127.0.0.1:6333:6333 -p 127.0.0.1:6334:6334 -v qdrant_storage:/qdrant/storage qdrant/qdrant
⚠️ Se dice "name already in use": docker rm -f qdrant e ripeti.
4️⃣ Verifica che risponda (Qdrant v1.18.2 nel video)
Start-Sleep 5
(Invoke-WebRequest -UseBasicParsing http://127.0.0.1:6333/).Content
Dashboard: http://127.0.0.1:6333/dashboard
5️⃣ Installa ponte MCP + embedding
pip install mcp-server-qdrant fastembed
(nel video: mcp-server-qdrant 0.8.1 su Python 3.12 — sul 3.14 non compila pydantic-core)
6️⃣ Config OpenCode (~/.config/opencode/opencode.json, sezione "mcp")
"qdrant": {
"type": "local",
"command": ["C:\\Users\\TUO_NOME\\AppData\\Local\\Programs\\Python\\Python312\\Scripts\\mcp-server-qdrant.exe"],
"enabled": true,
"environment": {
"QDRANT_URL": ";http://127.0.0.1:6333",
"EMBEDDING_MODEL": "sentence-transformers/all-MiniLM-L6-v2"
}
}
Poi: opencode mcp list → devi vedere qdrant connected + qdrant-store / qdrant-find.
7️⃣ Cartella di prova
dir C:\GH_EP02_docs\
(5 file .md nel video)
8️⃣ Prompt ingest (in OpenCode)
"Leggi tutti i file in C:\GH_EP02_docs, dividili in chunk conservando percorso e sezione, e salvali con qdrant-store. Alla fine dimmi quanti documenti hai processato."
9️⃣ Domanda di prova (in OpenCode)
"In quale file ho scritto che l'endpoint di triage era /v1/systemone con tev1:0.8b? Rispondi solo se trovi la prova nell'indice e citami file e passaggio; altrimenti dimmi che non la trovi."
#OpenCode #Qdrant #RAG #AgentiAI #GeekAndHack
Show More Show Less 