Ce guide explique comment utiliser le ClickHouse MCP server avec Ollama.
Installer Ollama
Ollama est une bibliothèque qui permet d’exécuter de grands modèles de langage (LLM) sur votre propre machine. Elle propose un large choix de modèles et est facile à utiliser.
Vous pouvez télécharger Ollama pour Mac, Windows ou Linux depuis la page de téléchargement.
Une fois Ollama lancé, il démarre un serveur local en arrière-plan que vous pouvez utiliser pour exécuter des modèles.
Vous pouvez également lancer le serveur manuellement avec ollama serve.
Une fois l’installation terminée, vous pouvez télécharger un modèle sur votre machine comme suit :
ollama pull qwen3:8bLe modèle sera téléchargé sur votre machine locale s’il n’y est pas déjà. Une fois téléchargé, vous pouvez exécuter le modèle comme suit :
ollama run qwen3:8bNous pouvons lister les modèles que nous avons téléchargés ainsi :
ollama lsNAME ID SIZE MODIFIED
qwen3:latest 500a1f067a9f 5.2 GB 3 days agoNous pouvons utiliser la commande suivante pour afficher plus d’informations sur le modèle que nous avons téléchargé :
ollama show qwen3 Model
architecture qwen3
parameters 8.2B
context length 40960
embedding length 4096
quantization Q4_K_M
Capabilities
completion
tools
Parameters
repeat_penalty 1
stop "<|im_start|>"
stop "<|im_end|>"
temperature 0.6
top_k 20
top_p 0.95
License
Apache License
Version 2.0, January 2004Nous pouvons voir dans cette sortie que le modèle qwen3 par défaut compte un peu plus de 8 milliards de paramètres.
Installer MCPHost
Au moment de la rédaction de ce document (juillet 2025), il n’existe pas de fonctionnalité native pour utiliser Ollama avec des serveurs MCP. Cependant, il est possible d’utiliser MCPHost pour exécuter des modèles Ollama avec des serveurs MCP.
MCPHost est une application Go. Assurez-vous donc que Go est installé sur votre machine. Vous pouvez ensuite installer MCPHost en exécutant la commande suivante :
go install github.com/mark3labs/mcphost@latestLe binaire sera installé dans ~/go/bin, nous devons donc nous assurer que ce répertoire est bien dans notre PATH.
Configuration du serveur MCP ClickHouse
Vous pouvez configurer des serveurs MCP avec MCPHost dans des fichiers YAML ou JSON. MCPHost recherchera les fichiers de configuration dans votre répertoire personnel dans l’ordre suivant :
.mcphost.ymlou.mcphost.json(recommandé).mcp.ymlou.mcp.json(rétrocompatibilité)
Il utilise une syntaxe similaire à celle du fichier de configuration MCP standard.
Voici un exemple de configuration d’un serveur MCP ClickHouse, que nous enregistrerons dans le fichier ~/.mcphost.json :
{
"mcpServers": {
"mcp-ch": {
"type": "local",
"command": ["uv",
"run",
"--with",
"mcp-clickhouse",
"--python",
"3.10",
"mcp-clickhouse"
]
}
}
}La principale différence par rapport au fichier de configuration MCP standard est que nous devons spécifier un type.
Le type sert à indiquer le type de transport utilisé par le serveur MCP.
local→ transport stdioremote→ transport en fluxbuiltin→ transport in-process
Nous devrons également configurer les variables d’environnement suivantes :
export CLICKHOUSE_HOST=sql-clickhouse.clickhouse.com
export CLICKHOUSE_USER=demo
export CLICKHOUSE_PASSWORD=""Exécuter MCPHost
Une fois le serveur MCP ClickHouse configuré, vous pouvez lancer MCPHost avec la commande suivante :
mcphost --model ollama:qwen3Ou, si vous souhaitez utiliser un fichier de configuration spécifique :
mcphost --model ollama:qwen3 --config ~/.mcphost.json Le résultat suivant devrait s'afficher :
┃ ┃
┃ Model loaded: ollama (qwen3) ┃
┃ MCPHost System (09:52) ┃
┃ ┃
┃ ┃
┃ Model loaded successfully on GPU ┃
┃ MCPHost System (09:52) ┃
┃ ┃
┃ ┃
┃ Loaded 3 tools from MCP servers ┃
┃ MCPHost System (09:52) ┃
┃ ┃
Enter your prompt (Type /help for commands, Ctrl+C to quit, ESC to cancel generation)Nous pouvons utiliser la commande /servers pour afficher la liste des serveurs MCP :
┃ ┃
┃ ## Configured MCP servers ┃
┃ ┃
┃ 1. mcp-ch ┃
┃ MCPHost System (10:00) ┃
┃Et /tools pour afficher la liste des outils disponibles :
┃ ## Available Tools ┃
┃ ┃
┃ 1. mcp-ch__list_databases ┃
┃ 2. mcp-ch__list_tables ┃
┃ 3. mcp-ch__run_select_queryNous pouvons ensuite poser au modèle des questions sur les bases de données et les tables disponibles dans le ClickHouse SQL playground.
D’après notre expérience, lorsque vous utilisez des modèles plus petits (le modèle qwen3 par défaut compte 8 milliards de paramètres), vous devrez être plus précis sur ce que vous souhaitez lui faire faire. Par exemple, vous devrez lui demander explicitement de lister les bases de données et les tables, plutôt que de lui demander directement d’interroger une table donnée. Vous pouvez en partie atténuer ce problème en utilisant un modèle plus grand (par ex. qwen3:14b), mais il s’exécutera plus lentement sur du matériel grand public.