MCP Server for cryptographic hashing について
開発者や AI クライアント向けのハッシュ計算 MCP サーバーです。テキストの MD5 と SHA-256 をツールとして提供し、README には MCP の学習や構築のガイドも含まれています。
主な機能
- 01テキストの MD5 ハッシュ計算
- 02テキストの SHA-256 ハッシュ計算
- 03Docker または Python で実行
- 04MCP の学習・構築ガイド
活用シーン
- 01MCP クライアント経由でテキストをハッシュ化
- 02MD5 または SHA-256 の計算テスト
- 03MCP サーバーの設定方法を学習
MCP 対応
MCP クライアントに `calculate_md5` と `calculate_sha256` ツールを公開します。README では Claude Desktop、VS Code などの対応クライアントでの設定方法を説明しています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
暗号学的ハッシュ計算用 MCP サーバー
MD5 および SHA-256 ハッシュ計算用の Model Context Protocol(MCP)サーバーです。このサーバーを使うと、LLM は暗号学的なリクエストを効率的に処理できます。
利用可能なツール
サーバーでは 2 つのツールを利用できます。
calculate_md5:指定したテキストの MD5 ハッシュを計算します。calculate_sha256:指定したテキストの SHA-256 ハッシュを計算します。
このサーバーは、VS Code Copilot Chat、Claude for Desktop、その他の Model Context Protocol に対応する LLM インターフェースなどの MCP クライアントで使用するように設計されています。
MCP を理解して独自の MCP サーバーを構築する
Model Context Protocol(MCP)の概念について初めて学ぶ場合は、以下のリソースを利用できます。
- MCP とは何ですか?
- 独自の MCP サーバーを構築するにはどうすればよいですか?
hashing-mcp-serverパッケージはどこにありますか?- PyPI の Python パッケージで確認できます。
- Docker Hub の Docker イメージで確認できます。
- ソースコードはこの GitHub リポジトリにあります。
- 次のような MCP サーバー一覧でも確認できます。
hashing-mcp-serverをインストールして使用するにはどうすればよいですか?- インストールと使用方法については、以下のセクションを参照してください。
サーバーの動作
以下の GIF は、MCP サーバーがリクエストを処理し、対応する暗号学的ハッシュを返す様子を示しています。
例として Claude Desktop を使用していますが、VSCode などの他の MCP クライアントでも同様に動作します。

前提条件
- Docker で実行する場合: Docker がインストールされ、実行中であること。
- 直接実行する場合: Python 3.13 以降と仮想環境ツール(
venv、uv)。 - コントリビュート/開発する場合: Git、Python 3.13 以降、
uv(推奨)またはpip、Docker(任意、ビルドのテスト用)。
オプション 1:Docker を使用してサーバーを実行する(推奨)
Python 環境を直接管理せずにサーバーを実行する最も簡単な方法です。
1. Docker イメージを取得する:
-
Docker Hub から取得する(最も簡単):
docker pull kunalpathak13/hashing-mcp-server:latest
2. MCP クライアントを設定する:
docker run を使用するようにクライアントを設定します。
-
VS Code(
settings.json):// In your VS Code settings.json (User or Workspace) "mcp": { "servers": { "hashing-docker": { // Use a distinct name if needed "command": "docker", "args": [ "run", "-i", // Keep STDIN open for communication "--rm", // Clean up container after exit "kunalpathak13/hashing-mcp-server:latest" // Change the tag to your version if needed e.g. "hashing-mcp-server:X.Y.Z" ] } } } -
Claude Desktop(
claude_desktop_config.json):{ "mcpServers": { "hashing-docker": { "command": "docker", "args": [ "run", "-i", "--rm", "kunalpathak13/hashing-mcp-server:latest" // Change the tag to your version if needed e.g. "hashing-mcp-server:X.Y.Z" ] } } } -
その他のクライアント:
dockerをコマンドとして、run -i --rm IMAGE_NAMEを引数として使用し、各クライアントのドキュメントに従って設定してください。具体的な設定手順については、公式ドキュメントを参照してください。
3. 統合をテストする:
設定が完了したら、MCP クライアント(VS Code Chat、Claude Desktop など)を操作します。ハッシュ計算ツールを呼び出す質問をしてみてください。
- 「テキスト 'hello world' の MD5 ハッシュを計算してください」
- 「文字列 'MCP is cool!' の SHA256 ハッシュは何ですか?」
クライアントは、指定したコマンドを使ってバックグラウンドで Docker コンテナを起動し、リクエストを送信してハッシュの結果を受け取り、表示します。
オプション 2:サーバーを直接実行する(Python 環境)
Docker を使用しない場合や、開発目的で使用する場合は、この方法を選択してください。
1. 環境をセットアップしてインストールする:
# Create a dedicated directory and navigate into it
mkdir my_mcp_setup && cd my_mcp_setup
# --- Create & Activate Virtual Environment (Choose ONE method) ---
# Method A: Using uv (Recommended):
uv venv
source .venv/bin/activate # Linux/macOS
# .venv\Scripts\activate # Windows
# Method B: Using standard venv:
# python -m venv .venv
# source .venv/bin/activate # Linux/macOS
# .venv\Scripts\activate # Windows
# ---
# --- Install the package (within the active venv, choose ONE method) ---
# Method A: Using uv:
uv pip install hashing-mcp-server
# Method B: Using pip:
# pip install hashing-mcp-server
# ---
2. 実行可能ファイルのパスを確認する:
仮想環境を 有効化した状態で、インストールされたスクリプトの絶対パスを確認します。
# On Linux/macOS:
which hashing-mcp-server
# Example Output: /home/user/my_mcp_setup/.venv/bin/hashing-mcp-server
# On Windows (Command Prompt/PowerShell):
where hashing-mcp-server
# Example Output: C:\Users\User\my_mcp_setup\.venv\Scripts\hashing-mcp-server.exe
出力に表示されたフルパスをコピーします。
3. MCP クライアントを設定する:
クライアントの設定には、コピーした絶対パスを使用します。
-
VS Code(
settings.json):// In your VS Code settings.json (User or Workspace) "mcp": { "servers": { // You can name this key anything, e.g., "hasher" or "cryptoTools" "hashing": { // Paste the full, absolute path you copied here: "command": "/full/path/to/your/virtualenv/bin/hashing-mcp-server" // No 'args' needed when running the installed script directly } } }(例のパスを実際のパスに置き換えてください)
-
Claude Desktop(
claude_desktop_config.json):{ "mcpServers": { "hashing": { // Paste the full, absolute path you copied here: "command": "/full/path/to/your/virtualenv/bin/hashing-mcp-server" } } }(例のパスを実際のパスに置き換えてください)
-
その他のクライアント:各クライアント固有の手順に従い、手順 2 で確認したフルパスをコマンドとして指定します。
4. 統合をテストする:
設定後、MCP クライアント(VS Code Chat、Claude Desktop など)を操作します。ハッシュツールが呼び出されるような質問をします。- 「'hello world' に対して calculate_md5 ツールを使ってください。」- 「テキスト 'MCP rocks' の SHA256 ハッシュを計算してください。」
クライアントは、指定した絶対パスを使ってサーバースクリプトを起動し、リクエストを送信してハッシュ結果を受け取り、表示します。
コントリビューション/開発環境のセットアップ
サーバーコードを変更したり、コントリビューションしたりする場合は、以下の手順に従ってください。
1. リポジトリをクローンする:
git clone https://github.com/kanad13/MCP-Server-for-Hashing.git
cd MCP-Server-for-Hashing
2. 開発環境をセットアップする:
# Create & Activate Virtual Environment (using uv recommended)
uv venv
source .venv/bin/activate # Linux/macOS
# .venv\Scripts\activate # Windows
# Install in editable mode with development dependencies
uv pip install -e ".[dev]"
(これにより、再インストールしなくても src/ 内のコード変更がすぐに反映されるようにパッケージがインストールされます。また、pytest など、[project.optional-dependencies.dev] で定義されたツールもインストールされます。)
3. 開発中にローカルで実行する: 開発用の仮想環境が有効になっていることを確認します。次のコマンドでサーバーを実行できます。
# Run the installed script (available due to -e flag)
hashing-mcp-server
または、モジュールを直接実行します。
python -m hashing_mcp.cli
(統合テストのために、MCP クライアントがこの特定の開発用 .venv 内の実行可能ファイルを参照するよう、一時的に設定してもかまいません。)
4. テストを実行する: 開発用の仮想環境が有効になっていることを確認します。
pytest
メンテナー向けタスク:新しいバージョンのリリース
(プロジェクトのメンテナー向け)
リリースプロセス(ビルド、テスト、タグ付け、PyPI および Docker Hub へのプッシュ)は、リポジトリのルートにある build_and_push.sh スクリプトによって自動化されています。
スクリプトを実行するための前提条件:
- 有効化済みの開発用仮想環境(
source .venv/bin/activateまたは.venv\Scripts\activate)内にいる必要があります。 - 必要なツールが利用可能である必要があります:
uv(またはpip)、twine、git、docker。 - 認証情報を設定しておく必要があります:
- Docker:
docker loginでログイン済みであること。 - PyPI:本番用 API トークンを、
TWINE_USERNAME=__token__とTWINE_PASSWORD=pypi-...の環境変数または~/.pypircで設定していること。
- Docker:
- 対象の Git リポジトリ(デフォルトでは
origin)と Docker Hub リポジトリ(デフォルトではkunalpathak13/hashing-mcp-server)へのプッシュアクセスが許可されていること。
リリース手順:
pyproject.tomlのversionフィールドが正しい新しいバージョン番号に更新されていることを確認します。- 最終的なコード変更をコミットして、main ブランチにプッシュします。
- リリーススクリプトを実行可能にします(初回のみ):
chmod +x build_and_push.sh - 仮想環境を有効化します:
source .venv/bin/activate(または同等のコマンド)。 - リポジトリのルートからスクリプトを実行します:
./build_and_push.sh - スクリプトがすべての手順を実行します:ビルド、チェック、PyPI へのアップロード、Docker イメージのビルド、Docker イメージへのタグ付け(バージョンと
latest)、Docker イメージのプッシュ、Git タグの作成、Git タグのプッシュ。 - 新しいパッケージバージョンが PyPI で公開され、新しい Docker タグが Docker Hub で利用可能になっていることを確認します。
ライセンス
このプロジェクトは MIT License の下でライセンスされています。詳細については、LICENSE ファイルを参照してください。
謝辞
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。