mcp-server-bash について
mcp-server-bash は、シェルスクリプトで書かれた最小限の MCP サーバーで、初期化ハンドシェイクからツール実行までの一連の流れを示します。MCP のメッセージ形式を基礎から理解したい開発者に適しています。
主な機能
- 01bash スクリプトで実装された MCP サーバー
- 02初期化と運用の two フェーズを網羅
- 03tools/list と tools/call のメッセージ処理
- 04シンプルな加算ツール addition を内蔵
活用シーン
- 01MCP メッセージのやり取りの基本構造を学習する
- 02コマンドラインから JSON-RPC のリクエストとレスポンスを確認する
- 03LLM ホストに接続する最小限のサンプルとして利用する
MCP 対応
本プロジェクトは stdio 経由で JSON-RPC メッセージを受け取り、addition ツールをクライアントに公開する MCP サーバーです。mcphost や Claude Desktop などのホストには JSON 設定ファイルで登録できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
mcp-server-bash
シェルスクリプトで書かれたミニマルな MCP サーバーです。
このリポジトリは、記事「Minimalistic MCP Server in bash script」の補足です。
MCP サーバーのライフサイクルは、2 つのフェーズに分けて説明できます。初期化と運用です。

mcp_add.sh は、このライフサイクル内のすべてのメッセージを実装しています。ハンドシェイクから、シンプルな「2 つの数値を加算する」ツールの実行までです。
基本的なテストメソッドをコマンドラインで直接実行するには、次を使用します:
# test tools/list method
echo '{"method":"tools/list","params":{},"jsonrpc":"2.0","id":2}' | bash mcp_add.sh | jq
# test math_addition tool
echo '{"jsonrpc":"2.0","id":20, "method":"tools/call","params":{"name":"addition","arguments":{"num1":"1","num2":"2"}}}' | bash mcp_add.sh | jq
LLM ホストの設定
mcphost および Claude Desktop 用の JSON 設定ファイル:
{
"mcpServers": {
"math": {
"command": "/Users/anton/code/mcp-server-bash/mcp_add.sh",
"args": []
}
}
}
mcphost でのテスト
bash スクリプトに実行権限を追加します:
chmod +x mcp_add.sh
llama3.1 とツール設定ファイルを使用して mcphost を実行します
mcphost -m ollama:llama3.1:latest --config /Users/anton/code/mcp-server-bash/mcp.json
...
using math tool add 10 and 88
参考資料
- Model Context Protocol https://www.anthropic.com/news/model-context-protocol
- mcphost https://github.com/mark3labs/mcphost
- jsonrpc 仕様: https://www.jsonrpc.org/specification
- mcp inspector https://github.com/wong2/mcp-cli
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。