VNISH Global Operator について
VNISH Global Operator は、VNISH ファームウェアのカタログ情報、Ninja の選定ガイド、入力値に基づくマイニング経済シナリオを扱う読み取り専用の MCP サーバーです。公開カタログのスナップショットを使い、マイナーには接続しません。計算結果は純利益や予測を示すものではありません。
主な機能
- 01モデル別ファームウェア情報の検索
- 02固定された Ninja ガイドの検索
- 03入力値による ROI シナリオ計算
- 04カタログ索引と由来情報の提供
- 05シナリオ計算方法リソースの提供
活用シーン
- 01ファームウェアのファイル情報とチェックサム確認
- 02制御ボードやインストール手順の参照
- 03電気料金と稼働時間による収支寄与の試算
MCP 対応
MCP サーバーとして、ファームウェアカタログ、Ninja の参考情報、シナリオ計算に関する 3 つの読み取り専用ツールと 3 つのリソースを提供します。マイナーへの接続やデバイス操作は行わず、カタログには同梱された公開スナップショットを使います。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://vnish.global/ai/mcp/index.phpclaude mcp add --transport http vnish-global-vnish-global-operator https://vnish.global/ai/mcp/index.php{"mcpServers":{"vnish-global-vnish-global-operator":{"type":"http","url":"https://vnish.global/ai/mcp/index.php"}}}Cursor で開く{"servers":{"vnish-global-vnish-global-operator":{"type":"http","url":"https://vnish.global/ai/mcp/index.php"}}}VS Code で開く{"mcpServers":{"vnish-global-vnish-global-operator":{"type":"http","url":"https://vnish.global/ai/mcp/index.php"}}}{"mcpServers":{"vnish-global-vnish-global-operator":{"serverUrl":"https://vnish.global/ai/mcp/index.php"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
3| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| version | enum | いいえ | 1.3.4 | 1.3.5 | 1.3.6 |
| model_id | string | はい | カタログの正確なモデル ID。例: s19j-xp。すべての ID については model-index リソースを参照してください。 |
| board_platform | enum | いいえ | aml | bb | cv | xil |
詳細
デプロイ更新:2026年9月18日
リモート MCP エンドポイントと接続ガイドを公開しました。
- MCP エンドポイント:
https://vnish.global/ai/mcp/index.php - 英語版の接続ガイド
- ロシア語版の接続ガイド
公式 MCP JavaScript SDK 1.30.0 を使用した公開 HTTPS 検証では、PHP の実行、プロトコルの初期化、ツールの一覧表示、リソースへのアクセス、3 つの読み取り専用ツールそれぞれの呼び出しを含む、7 項目すべてに合格しました。ネゴシエートされたプロトコルは 2025-11-25 でした。2 つのガイドファイル、スタイルシート、カタログのスナップショットは、SHA-256 とバイト数によって準備済みリリースとの一致が確認されました。
ChatGPT および Claude のネイティブアカウント内での接続はテストしていません。この結果は、アプリディレクトリへの掲載承認や、実機のマイナーでのテストを主張するものではありません。
デプロイ前の元のスナップショットは、以下に変更せず保存しています。公開予定と記された文言は、以前の状態を示しています。
VNISH Global オペレーター向けリモート MCP
ステータス:未デプロイです。 これはレビュー済みのソースパッケージであり、デプロイ候補です。以下に記載する HTTPS エンドポイントと新しい接続ガイドの URL は公開予定です。この README は、ChatGPT または Claude がサービスに接続したことや、ディレクトリ掲載が承認されたことを主張するものではありません。
PHP サーバーは、VNISH Global の公開カタログメタデータ、選定された VNISH Ninja リファレンス、ROI ASIC の演算シナリオを使用して、読み取り専用ツールを 3 つ公開します。マイナーへの接続、ファームウェアのインストール、コマンドの実行、任意の URL の取得、認証情報の使用、ツール引数の保存は行いません。既存の Operator スキルと以前の MCP 実装は保持されています。
ファイルとデプロイ
public/ 配下の 6 つのファイルは、vnish.global に追加でデプロイするものです。
| ファイル | 用途 |
|---|---|
ai/mcp/index.php | Streamable HTTP エンドポイント |
ai/mcp/catalog-snapshot.json | 日付付きの公開カタログスナップショット |
ai/mcp/.htaccess | この新しいディレクトリ内だけで DirectoryIndex index.php を設定 |
ai/connect/index.html | 英語版の接続ガイド |
ai/connect/connect.css | ガイド専用の分離されたスタイル |
ru/ai/connect/index.html | ロシア語版の接続ガイド |
公開予定のエンドポイント:https://vnish.global/ai/mcp/index.php。
公開予定のガイド:https://vnish.global/ai/connect/ と https://vnish.global/ru/ai/connect/。
既存のファイルがないことを確認したうえで、public/ のパスだけをデプロイしてください。ホスティング環境で PHP の実行と POST の動作を検証してください。既存のサイトルート、共通ナビゲーション、スタイル、JavaScript、サイトマップ、robots、セキュリティ設定は、このパッケージに含まれません。MCP エンドポイントへの GET と DELETE は 405 を返します。接続ガイドは独立した HTML ページです。テスト用ファイルとデータソース用ファイルは Web ルートに配置しないでください。
ツール
lookup_firmware:カタログのモデル ID を完全一致で検索します。ボードコードとバージョンは任意で指定できます。ファイル名、サイズ、SHA-256、Global のソース URL を返します。一致するレコードが複数ある場合は、曖昧な結果のままとなります。カタログのレコードは、互換性、真正性、または実機でのテスト成功を示すものではありません。find_ninja_reference:制御ボードの識別、インストール時の SSH エラー、標準状態への復帰準備に関する、固定された EN/RU ガイドを提供します。特定のデバイスに復旧方法が適用できるかどうかは判断しません。calculate_roi_scenario:手数料適用前の総ハッシュレート、平均壁コンセント消費電力、モデル化された手数料、総日次ハッシュプライス、電気料金単価、稼働時間を使用します。すべての入力は呼び出し元が指定します。収益と電力量は、同じ稼働時間の前提に従って変化します。出力は、モデル化された手数料と電気料金を差し引いた後の貢献額であり、その他の費用は含まれません。純利益、ROI、予測ではありません。
サーバーは 3 つのリソースも公開します。モデル ID インデックス、スナップショットの出典情報、シナリオの方法論です。リソース URI は MCP の resources/read で使用する識別子であり、Web ページとして公開されることを保証するものではありません。
データと境界
data/source-catalog.json は、https://vnish.global/api/v1/firmware-catalog.json にある公開カタログのコピーです。data/catalog-provenance.json には、取得時刻と SHA-256 が記録されています。バンドルされたスナップショットには、47 モデルと 148 件のビルドレコードが含まれています。スナップショットは、現在の提供状況を確認するものではありません。定期更新のプロセスは含まれていません。
選択された識別子とシナリオ番号がサーバーに送信されます。アプリケーションコードは引数を永続化しませんが、標準的なホスティング/CDN ログにはリクエストのメタデータが記録される場合があります。パスワード、アカウントデータ、マイナーアドレス、設定ファイルは不要です。
プロトコルバージョン:2026-07-28、2025-11-25、2025-06-18、2025-03-26。最新のリクエストでは、server/discover、リクエストごとのメタデータ、ミラーリングされたヘッダーを使用します。レガシークライアントでは initialize を使用します。サーバーはセッション ID を作成せず、SSE ではなく JSON を返します。サブスクリプション、エリシテーション、サンプリング、バッチリクエスト、デバイス操作には対応していません。
存在する Origin ヘッダーは、3 つのプロジェクトドメイン、https://chatgpt.com、または https://claude.ai と完全に一致する必要があります。サーバークライアントでは Origin がなくてもかまいません。入力は 32 KiB、深さは 32 に制限されています。ID は、整数値が -(2^53-1) から 2^53-1 までの安全な範囲に収まる文字列または数値である必要があります。これにより、リクエストの相関付けで値が暗黙に丸められることを防ぎます。
テストの再現
要件:Node.js 20.10 以降、ビルダーには Python 3.9 以降が必要です。実行時の PHP ホスティングは、テスト依存関係とは別です。
固定されたテスト依存関係:
@php-wasm/universal3.1.54@php-wasm/node-8-43.1.54@modelcontextprotocol/sdk1.30.0
pnpm のロックファイルで、推移的依存関係が固定されています。このディレクトリから実行します:
pnpm install --frozen-lockfile
pnpm test
テストでは、実際のエンドポイントを PHP 8.4 WebAssembly で実行した後、127.0.0.1 にバインドされた一時的な HTTP ブリッジを起動し、公式 SDK の StreamableHTTPClientTransport で呼び出します。ブリッジはテストの終了時に閉じられます。テストでは、ツール、リソース、現在のプロトコルメタデータ、Origin の検証、入力制限、シナリオの計算、負の結果、および不正な形式/小数/上限超過のリクエスト ID を検証します。本番用アカウント、認証情報、マイナーは不要です。
生成されたレシートは、無視対象の test-results/ に保存されます。テストは任意のネットワーク宛先にアクセスしません。無効な URL の例は、負のテスト用フィクスチャです。ブラウザースクリプトや非公開の QA 成果物は含まれていません。
バンドルされた公開ソースから、公開スナップショットとガイドを再ビルドします:
pnpm run build
ローカルテストに成功しても、公開ホスティングやエンドユーザークライアントの接続が確立されたことにはなりません。デプロイ後、公開 HTTPS エンドポイントを確認し、実際のクライアント接続をテストしてください。
デプロイ待ちのリンク
接続ページの正規 URL/言語別 URL、ローカルの connect.css、および表示される MCP URL は、public/ のファイルが公開されて初めて機能します。最新の公開カタログ、既存の Ninja および ROI ASIC のリファレンス、公式セットアップドキュメント、既存の Operator リポジトリへのガイドリンクは、このデプロイとは無関係です。このパッケージが公開されるまでは、リポジトリリンクは意図的に既存のリポジトリルートを指しています。
プロトコルとクライアントのドキュメント
- MCP 2026-07-28 Streamable HTTP
- バージョン管理と互換性
- ディスカバリー
- ツール
- レガシー Streamable HTTP
- OpenAI の接続ガイド
- Anthropic の接続ガイド
セットアップガイダンスは、2026-09-17 に公式ドキュメントと照合して確認されています。アカウントとワークスペースのポリシーによって、利用できる接続オプションが異なる場合があります。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。