mcpField
M
mcp-server

mcp-server

リモート
github.com/zchaffee1クラウド・インフラ079 週間前に更新
リポジトリ

mcp-server について

HDF5ファイル操作、Slurmジョブ管理、ハードウェア情報の取得、圧縮機能を提供するサーバーです。クライアントはMCPエンドポイントを通じてこれらの操作を実行できます。

主な機能

  1. 01HDF5データセットの読み込みと内容一覧
  2. 02Slurmジョブの送信と状態確認
  3. 03CPU、メモリ、ディスク情報の取得
  4. 04データやファイルの圧縮と解凍

活用シーン

  1. 01HDF5ファイルからデータセットを読む
  2. 02Slurmジョブを送信して状態を確認する
  3. 03ノードのハードウェア情報を確認する
  4. 04データを圧縮または解凍する

MCP 対応

`POST /mcp`でMCPリクエストを受け付け、`GET /health`でヘルスチェックを提供します。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttp://localhost:8000
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

mcp-server

作成者:Zack Chaffee A20478873

HDF5 ファイル操作と Slurm ジョブ管理のための Model Coupling Protocol(MCP)機能を実装するサーバーです。

機能

HDF5 ファイル操作:
  • データセットの読み取り
  • ファイルの内容の一覧表示
Slurm ジョブ管理:
  • ジョブの送信
  • ジョブのステータスの確認
ノードのハードウェア操作
  • CPU 情報の取得
  • メモリ情報の取得
  • ディスク情報の取得
  • システム情報の包括的な取得
圧縮操作
  • gzip または zlib による文字列データの圧縮
  • gzip または zlib によるファイルの圧縮
  • データの解凍

初期化

このリポジトリをクローンしたら、ディレクトリに移動します。

続いて仮想環境を作成し、すべての依存関係をインストールします。

uv venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install -e .
uv pip install -e ".[test]"

実行

サーバーを起動するには、次を実行します。

python -m src.server

サーバーは自動的に http://localhost:8000 で起動します。

エンドポイント

  • POST /mcp:MCP リクエストのメインエンドポイント
  • GET /health:ヘルスチェックエンドポイント

例:

import httpx

async with httpx.AsyncClient() as client:
    # Read a dataset
    response = await client.post("http://localhost:8000/mcp", json={
        "capability": "hdf5",
        "action": "read_dataset",
        "parameters": {
            "file_path": "/path/to/data.h5",
            "dataset_path": "/path/to/dataset"
        }
    })
    
    # List contents
    response = await client.post("http://localhost:8000/mcp", json={
        "capability": "hdf5",
        "action": "list_contents",
        "parameters": {
            "file_path": "/path/to/data.h5",
            "group_path": "/"
        }
    })
curl -X POST http://localhost:8000/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "mcp/listTools", 
    "params": {}, 
    "id": "1"
  }'

テスト

テストを実行するには、次を実行します。

pytest

カバレッジ付きでテストするには、次を実行します。

pytest --cov=src

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。