Model Context Protocol CLI について
Model Context Protocol CLI は、MCP サーバーと対話するためのコマンドラインクライアントです。OpenAI と Ollama のモデルに対応し、チャットやツール、リソース、プロンプトの探索を行えます。
主な機能
- 01MCP サーバーとのプロトコル通信
- 02ツールとリソースの動的な探索
- 03OpenAI と Ollama に対応
- 04インタラクティブなチャットモード
- 05ツール、リソース、プロンプトの一覧コマンド
活用シーン
- 01サーバーのツールとリソースの確認
- 02OpenAI を使ったサーバーとのチャット
- 03Ollama を使ったサーバーとの対話
MCP 対応
サーバー設定で指定した MCP サーバーに接続します。ツール、リソース、プロンプトを一覧表示し、チャットを通じてサーバーと対話できます。
詳細
Model Context Protocol CLI
このリポジトリには、Model Context Protocol サーバーと相互作用するために設計されたプロトコルレベルの CLI が含まれています。クライアントは、ユーザーがコマンドを送信したり、データをクエリしたり、サーバーによって提供されるさまざまなリソースと相互作用したりできるようにします。
機能
- MCP サーバーとのプロトコルレベルの通信。
- 動的なツールとリソースの探索。
- 複数のプロバイダーとモデルのサポート:
- プロバイダー: OpenAI、Ollama。
- デフォルトモデル: OpenAI の場合は
gpt-4o、Ollama の場合はqwen2.5-coder。
前提条件
- Python 3.8 以上。
- 必要な依存関係(インストールを参照)
- Ollama を使用する場合は、Ollama がインストールされ、実行されている必要があります。
- OpenAI を使用する場合は、環境変数に API キーを設定する必要があります(OPENAI_API_KEY=yourkey)
インストール
- リポジトリをクローンしてください:
git clone https://github.com/chrishayuk/mcp-cli
cd mcp-cli
- UV をインストールしてください:
pip install uv
- 依存関係を再同期してください:
uv sync --reinstall
使用方法
クライアントを起動して SQLite サーバーと相互作用するには、次のコマンドを実行してください:
uv run mcp-cli --server sqlite
コマンドライン引数
--server: 使用するサーバー設定を指定します。必須です。--config-file: (オプション)JSON 設定ファイルへのパス。デフォルトはserver_config.json。--provider: (オプション)使用するプロバイダーを指定します(openaiまたはollama)。デフォルトはopenai。--model: (オプション)使用するモデルを指定します。デフォルトはプロバイダーに依存します:- OpenAI の場合は
gpt-4o。 - Ollama の場合は
llama3.2。
- OpenAI の場合は
例
デフォルトの OpenAI プロバイダーとモデルでクライアントを実行してください:
uv run mcp-cli --server sqlite
特定の設定と Ollama プロバイダーでクライアントを実行してください:
uv run mcp-cli --server sqlite --provider ollama --model llama3.2
インタラクティブモード
クライアントはインタラクティブモードをサポートしており、動的にコマンドを実行できます。利用可能なコマンドのリストについては help を入力するか、プログラムを終了するには quit を入力してください。
サポートされるコマンド
ping: サーバーが応答しているかどうかを確認します。list-tools: 利用可能なツールを表示します。list-resources: 利用可能なリソースを表示します。list-prompts: 利用可能なプロンプトを表示します。chat: インタラクティブチャットモードに入ります。clear: ターミナル画面をクリアします。help: サポートされているコマンドのリストを表示します。quit/exit: クライアントを終了します。
チャットモード
チャットモードに入ってサーバーと相互作用するには:
uv run mcp-cli --server sqlite
チャットモードでは、ツールを使用してサーバーをインタラクティブにクエリできます。起動時に指定されたプロバイダーとモデルは、次のように表示されます:
Entering chat mode using provider 'ollama' and model 'llama3.2'...
OpenAI プロバイダーの使用:
OpenAI モデルを使用したい場合は、
- クライアントを実行する前に
OPENAI_API_KEY環境変数を .env またはシステム環境変数として設定してください。
貢献
貢献を歓迎します。問題を報告するか、提案する変更をプルリクエストで送信してください。
ライセンス
このプロジェクトは MIT License の下でライセンスされています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。