mcpField
M
Mcp Proxyml

Mcp Proxyml

ローカル
github.com/proxymlデータ・分析18 週間前に更新

Mcp Proxyml について

Claude などの MCP クライアントから ProxyML の代理モデルと説明 API を利用できる MCP サーバーです。合成データ生成やモデル学習から、モデル比較、ドリフト検出、反実仮想分析までのワークフローに対応します。

主な機能

  1. 01データスキーマの推定と登録
  2. 02合成サンプルの生成
  3. 03代理モデルの学習
  4. 04特徴量重要度の要約
  5. 05判断の説明と反実仮想の探索
  6. 06モデル比較とドリフト検出

活用シーン

  1. 01モデルの解釈可能な代理モデルを作成
  2. 02デプロイパイプラインでモデル変更を確認
  3. 03本番代理モデルと開発時の予測を検証
  4. 04判断理由と結果を変える条件を調査

MCP 対応

スキーマ処理、合成データ生成、代理モデル、説明、比較、ドリフト検出など、ProxyML API の機能をツールとして MCP クライアントに公開します。利用には ProxyML API キーが必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"proxyml": {
"command": "uvx",
"args": [
"mcp-proxyml"
],
"env": {
"PROXYML_API_KEY": "<PROXYML_API_KEY>"
}
}
}
}
起動コマンドuvx mcp-proxyml
設定が必要な環境変数
PROXYML_API_KEYシークレット

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypimcp-proxyml

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

mcp-proxyml

ProxyML API 用の MCP サーバーです。Claude(およびその他の MCP クライアント)から、ProxyML の代理モデリングおよび説明可能性ツールに直接アクセスできます。

前提条件

  • ProxyML API キー — proxyml.ai で登録してください
  • uv(uvx インストール方法で必要)
  curl -LsSf https://astral.sh/uv/install.sh | sh

または、pip を使う場合:

pip install uv

Installation

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "proxyml": {
      "command": "uvx",
      "args": ["mcp-proxyml"],
      "env": {
        "PROXYML_API_KEY": "your-api-key-here"
      }
    }
  }
}

設定ファイルは次の場所にあります:

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json

その後、Claude Desktop を再起動してください。

Claude Code
claude mcp add-json proxyml '{"command":"uvx","args":["mcp-proxyml"],"env":{"PROXYML_API_KEY":"your-api-key-here"}}'
その他の MCP クライアント
pip install mcp-proxyml
PROXYML_API_KEY=your-key mcp-proxyml
ローカルでのチャレンジャーのトレーニング(任意)

proxyml_train_challenger と proxyml_score_champion は、proxyml SDK を介して小規模なモデルをローカルでトレーニングします。scikit-learn と scipy をインストールする challenger エクストラが必要です:

pip install 'mcp-proxyml[challenger]'

これをインストールしていない場合、サーバーの起動に失敗するのではなく、このエクストラのインストールを促す明確なエラーがこれら 2 つのツールから返されます。

環境変数

変数必須説明
PROXYML_API_KEYはいProxyML API キー

セキュリティと権限

このサーバーがアクセスできるもの

ファイルシステム — proxyml_infer_schema と proxyml_train_challenger は、それぞれ指定されたパスにある CSV ファイルを 1 つ読み込みます。他のツールがローカルファイルを読み書きすることはありません。

ネットワーク — https://api.proxyml.ai(または PROXYML_BASE_URL に設定された URL)へのアウトバウンド HTTPS 通信のみです。他のホストには接続しません。

環境 — 読み取るのは PROXYML_API_KEY と PROXYML_BASE_URL のみです。他の環境変数にはアクセスしません。

シェル実行、ローカルポート、その他のシステムリソースへのアクセスはありません。

ProxyML のサーバーに送信されるデータ
ツール送信される内容
proxyml_infer_schemaなし — CSV はローカルでのみ読み込まれ、処理されます
proxyml_train_challengerなし — トレーニングはすべてローカルで行われます。返されたペイロードは、自分でアップロードすることを選択した場合にのみ送信されます
proxyml_score_championなし — スコアリングはすべてローカルで行われます
proxyml_put_schema特徴量スキーマ:列名、型、制約
proxyml_get_schemaスキーマ名(文字列)
proxyml_synthesize_dataスキーマ名、サンプル数、および任意で 1 つの特徴ベクトル
proxyml_train_surrogate合成特徴ベクトルと、それらのベクトルに対するモデルの予測値
proxyml_predict_batch明示的に渡した特徴ベクトル
proxyml_explain_local / proxyml_explain_local_batch明示的に渡した特徴ベクトル
proxyml_find_counterfactual1 つの特徴ベクトルとターゲットラベル
proxyml_list_surrogates / proxyml_get_summary / proxyml_export_surrogate / proxyml_diff_models / proxyml_detect_driftバージョン ID および/またはしきい値(特徴データは含まれません)
proxyml_get_usageなし

一般的なワークフローでは、未加工のトレーニングデータが環境外に出ないように設計されています。proxyml_infer_schema は CSV から列のメタデータをローカルで取得し、proxyml_synthesize_data はそのスキーマを使ってサーバー側でサンプルを生成します。そして、proxyml_train_surrogate が送信するのは、これらの合成サンプルと、それらに対するモデルの予測値のみです。元のデータセットは送信されません。

合成データではなく実データを使って proxyml_explain_local、proxyml_predict_batch、または proxyml_find_counterfactual を使用する場合、それらの特徴ベクトルは ProxyML API に送信されます。

proxyml_train_challenger と proxyml_score_champion は ProxyML API を一切呼び出しません。SDK のローカルなトレーニング/スコアリングコードをプロセス内で実行し、JSON ペイロードを返します。このサーバーがそのペイロードを代わりにアップロードすることはありません。ペイロードを保存し、ProxyML ダッシュボードの「Upload challenger」ボタンを使うか、/app/projects/{project_id}/challenger に自分で POST してください。

認証

API キーは、TLS 経由で X-API-KEY HTTP ヘッダーとしてすべてのリクエストに送信されます。 PROXYML_API_KEY 環境変数から読み取られ、このサーバーによって ログに記録されたり、ディスクに書き込まれたりすることはありません。

ツール

スキーマ
ツール説明
proxyml_infer_schemaローカルの CSV ファイルから特徴量スキーマを推論します。データはサーバーに送信されません
proxyml_get_schema名前を指定して保存済みのスキーマを取得します
proxyml_put_schema特徴量スキーマをアップロードまたは置き換えます
proxyml_list_schemas認証済みアカウントの名前付き特徴量スキーマをすべて一覧表示します
proxyml_delete_schema名前付き特徴量スキーマを削除します
トレーニング
ツール説明
proxyml_synthesize_data保存済みのスキーマから合成サンプルを生成します
proxyml_train_surrogateお使いのモデルでスコアリングしたサンプルを使って線形サロゲートをトレーニングします
proxyml_list_surrogatesトレーニング済みのサロゲートモデルを新しい順に一覧表示します
proxyml_get_model_schemaサロゲートのトレーニング時にスナップショットされた特徴量スキーマを取得します
proxyml_update_surrogate再トレーニングせずにサロゲートの名前を変更したり、注釈を追加したりします
proxyml_delete_surrogateUUID を指定してサロゲートモデルを削除します
proxyml_predict単一のインスタンスに対するサロゲートの予測を取得します
proxyml_predict_batchインスタンスのリストに対するサロゲートの予測を取得します
ローカルでのチャレンジャーのトレーニング

challenger エクストラが必要です(pip install 'mcp-proxyml[challenger]')。

ツール説明
proxyml_train_challengerCSV を使ってローカルでチャレンジャーモデルをトレーニングし、アップロード可能なペイロードを組み立てます
proxyml_score_championチャンピオンモデルの予測をローカルでスコアリングし、公平に比較します
説明可能性
ツール説明
proxyml_get_summary特徴量の重要度とモデルの概要
proxyml_export_surrogate監査とガバナンスのための係数全体のエクスポート
proxyml_explain_local単一のインスタンスについて、特徴量ごとの寄与度の内訳を表示します
proxyml_explain_local_batch1 回の呼び出しで複数のインスタンスについて、特徴量ごとの寄与度を表示します
proxyml_find_counterfactual予測が反転する最も近い点を見つけます
proxyml_find_counterfactuals複数のインスタンスに対応した proxyml_find_counterfactual のバッチ版です
proxyml_diff_models2 つのサロゲートのバージョン間で特徴量の重要度を比較します
CI/CD
ツール説明
proxyml_detect_drift2 つのバージョンを比較し、係数と忠実度のしきい値に基づいて、構造化された合否結果を返します
アカウント
ツール説明
proxyml_get_usage現在のティア、リクエスト数、クォータを表示します。事前確認に便利です
診断
ツール説明
proxyml_health_checkAPI への接続を確認します。認証は不要で、使用量クォータにもカウントされません

典型的なワークフロー

1. proxyml_infer_schema      — point at a CSV, get a schema back
2. proxyml_put_schema        — upload it
3. proxyml_synthesize_data   — generate synthetic samples
4. [score samples with your model]
5. proxyml_train_surrogate   — send samples + predictions, get a surrogate
6. proxyml_get_summary       — see which features drive predictions
7. proxyml_explain_local     — explain a specific decision
8. proxyml_find_counterfactual — find what would need to change

ステップ 1~2 は初回のみのセットアップです。ステップ 3~5 はモデルの変更に応じて繰り返し実行して再トレーニングできます。バージョンの比較には proxyml_diff_models を使用してください。

エージェント型ワークフロー

CI/CD でのドリフト検出

proxyml_detect_drift はデプロイメントパイプラインでの使用を想定しています。proxyml_diff_models をラップし、しきい値を適用して構造化された合否結果を生成します。

On model deployment:
1. proxyml_train_surrogate          — train surrogate on new model version
2. proxyml_detect_drift(a, b)       — compare against previous version
   → passed: false                  — block deployment or flag for review
   → passed: true                   — proceed

しきい値はユースケースごとに調整できます。

proxyml_detect_drift(
  version_a="<previous>",
  version_b="<new>",
  coefficient_threshold=0.15,   # tighter for high-stakes models
  fidelity_threshold=0.02
)
本番データを使わない開発モデルの検証

本番データでトレーニングしたサロゲートと予測を比較して、下位環境でトレーニングしたモデルを検証できます。開発環境に本番データは必要ありません。

このワークフローでは、MCP サーバー単独では実行できない手順(開発モデルでのスコアリング)が必要ですが、エージェントがコードを直接実行できる Claude Code では自然に実行できます。

1. proxyml_synthesize_data(num_points=100)   → synthetic samples
2. [agent runs: dev_predictions = dev_model.predict(samples)]
3. proxyml_predict_batch(samples)            → surrogate predictions
4. [agent computes MAE and compares to tolerance]

Claude Code 用のプロンプト例:

Using ProxyML, validate my dev model against the production surrogate.
Synthesize 100 samples from the "default" schema, score them with my model
at dev_model.predict(), get surrogate predictions with proxyml_predict_batch,
then compute the mean absolute error and tell me whether it's within 0.1.

サロゲートは本番環境の挙動の代用として機能します。開発モデルが許容範囲内でサロゲートと一致すれば、実データでトレーニングしたモデルと一貫した挙動を示している可能性が高いです。

反実仮想の調査

説明が必要な判断をモデルが下した場合、たとえばローンの申請却下、 取引へのフラグ設定、保険見積もりの拒否などでは、proxyml_explain_local と proxyml_find_counterfactual を連続して呼び出し、「なぜか」と「何を 変更する必要があるか」の両方に答えます。

1. proxyml_explain_local(instance)              → which features drove this decision
2. proxyml_find_counterfactual(instance, target) → nearest point that flips it

プロンプトの例:

My model rejected this application: [age=34, income=42000, loan_amount=15000, ...].
Using ProxyML, explain why it was rejected and find the minimum changes that
would result in an approval. Highlight which changes are realistic given that
age is immutable.

Claude は proxyml_explain_local を呼び出して、主な寄与特徴量を示し、 次に目標の結果を指定して proxyml_find_counterfactual を呼び出し、 その違いを平易な言葉で解釈します。

代理モデルの反復的な改善

proxyml_train_surrogate が忠実度の低さに関する警告やその他のトレーニング診断を返した場合、エージェントはそこで 停止せず、次の反復に向けてそれらを活用できます。

1. proxyml_train_surrogate(samples, predictions)
   → warning: "Surrogate fidelity is low (R²=0.52)..."
2. proxyml_synthesize_data(num_points=500)       — increase sample count
3. [re-score with model]
4. proxyml_train_surrogate(larger_samples, predictions)
5. proxyml_detect_drift(v1, v2)                  — confirm improvement, not regression

プロンプトの例:

Train a surrogate for my regression model using the "default" schema with 200
samples. If fidelity is below 0.7, keep doubling the sample count and retraining
until it passes or you reach 1600 samples. Use proxyml_detect_drift after each
retrain to confirm the model is improving rather than just changing.

トレーニングの警告(収束、スパース性、クラスの不均衡、高い相関)は、 対処に役立つよう設計されています。エージェントはそれらを読み取り、 num_samples を調整するか、スキーマを見直すか、人間によるレビューが必要だと 判断できます。

ガバナンスレポート

Claude は、専用のエンドポイントがなくても、既存のツールからガバナンスレポートを生成できます。プロンプトの例:

Using ProxyML, generate a governance report for surrogate version <id>.
Include: task type, training date, fidelity metrics, top 5 features by importance,
any warnings from training, and a plain-English summary of what drives predictions.
Format it as a structured document suitable for attaching to a deployment ticket.

Claude は proxyml_get_summary を呼び出し(メタデータを見つけるために proxyml_list_surrogates も呼び出し)、レポートを作成します。

コメント

MCP は初めてですか?

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

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