Ollama MCP (Model Context Protocol) について
ローカルの Ollama 言語モデルを MCP サーバーに接続するツール。Git 操作やシェルコマンドなどの MCP サービスをインタラクティブな CLI アシスタントで提供します。
主な機能
- 01Ollama と MCP の継ぎ目のない統合
- 02Git 操作サポート
- 03インタラクティブなモデル選択
- 04拡張可能なツール管理
- 05コマンドラインアシスタントインターフェース
活用シーン
- 01ローカル環境で外部ツールサポート付き LLM を実行
- 02Git MCP サーバーを通じてバージョン管理操作を実行
- 03カスタムツールで拡張してローカルモデルと統合
MCP 対応
ローカルの Ollama モデルを MCP サーバーに接続するクライアント。Ollama モデルが MCP ツールにアクセスして実行できます。
詳細
Ollama MCP (Model Context Protocol)
Ollama MCP は、Model Context Protocol (MCP) を使用して Ollama ベースの言語モデルを外部ツールやサービスに接続するためのツールです。この統合により、LLM は Git リポジトリ、シェルコマンド、およびその他のツール対応サービスなどの様々なシステムと対話できるようになります。
機能
- Ollama 言語モデルと MCP サーバー間のシームレスな統合
- MCP Git サーバーを通じた Git 操作のサポート
- 拡張可能なツール管理システム
- インタラクティブなコマンドライン アシスタント インターフェース
- スタートアップ時に利用可能なローカルモデルからのインタラクティブな Ollama モデル選択
インストール
- Python 3.13+ がインストールされていることを確認してください
- このリポジトリをクローンしてください
- 依存関係をインストールしてください:
# Create a virtual environment
uv add ruff check
# Activate the virtual environment
source .venv/bin/activate
# Install the package in development mode
uv pip install -e .
使用方法
Ollama モデルの選択
メインアプリケーションが開始される前に、使用する Ollama モデルを選択するよう促されます。
-
前提条件:
- Ollama がインストールされており、実行されていることを確認してください。
- ローカルにプルされたモデルが少なくとも 1 つあることが必要です (例:
ollama pull llama3.1:8b)。ツールの使用をサポートするモデルのリストは、Ollama ウェブサイトにあります。
-
スタートアップ プロセス:
- アプリケーションは、ローカルマシンで利用可能なすべての Ollama モデルを自動的に検出し、リストアップします。
- 表示されたリストから使用するモデルの名前を入力するよう促されます。
- 無効なモデル名を入力した場合、有効な選択が行われるまで再度入力するよう促されます。
- 選択されたモデルは、その後のすべての操作でエージェントによって使用されます。
Git アシスタントの実行
uv run main.py
テストを実行するには
pytest -xvs tests/test_ollama_toolmanager.py
これにより、アシスタントに Git 操作を実行するよう依頼できるインタラクティブな CLI が起動します。
カスタムツールで拡張する
以下の方法でシステムを拡張できます:
- 新しいツールラッパーを作成する
OllamaToolManagerに登録する- 異なる MCP サーバーに接続する
コンポーネント
- OllamaToolManager: ツール登録と実行を管理します
- MCPClient: MCP サーバーとの通信を処理します
- OllamaAgent: Ollama LLM とツール使用をオーケストレーションします
例
# Creating a Git-enabled agent
git_params = StdioServerParameters(
command="uvx",
args=["mcp-server-git", "--repository", "/path/to/repo"],
env=None
)
# Connect and register tools
async with MCPClient(git_params) as client:
# Register tools with the agent
# Use the agent for Git operations
要件
- Python 3.13+
- MCP 1.5.0+
- Ollama 0.4.7+
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。