WHM Management Control Panel (MCP) について
WHMサーバーに接続し、AIアシスタントによるアカウントとサーバーの管理を可能にするNode.js製MCPサーバーです。アカウント、サーバーの状態と保守、ドメイン操作をツールで提供し、ほかの管理機能にはREST APIもあります。
主な機能
- 01アカウントの作成、変更、停止、削除
- 02サーバーの状態と統計を確認
- 03更新の確認とサービスの再起動
- 04アカウントのドメインを管理
- 05RESTエンドポイントでSSL、バックアップ、メールを管理
活用シーン
- 01AIアシスタント経由でcPanelアカウントを管理
- 02サーバー負荷とサービス状態を確認
- 03更新の開始やサーバーサービスの再起動
- 04アカウントのドメインを管理
MCP 対応
SSEエンドポイントを通じて、WHMのアカウント、サーバー、ドメイン操作をMCPツールとして公開します。リクエストにはBearerトークンまたはX-API-KeyヘッダーでAPIキーを渡す必要があります。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
http://your-server-address:3000/sseclaude mcp add --transport http whm http://your-server-address:3000/sse{"mcpServers":{"whm":{"type":"http","url":"http://your-server-address:3000/sse"}}}Cursor で開く{"servers":{"whm":{"type":"http","url":"http://your-server-address:3000/sse"}}}VS Code で開く{"mcpServers":{"whm":{"type":"http","url":"http://your-server-address:3000/sse"}}}{"mcpServers":{"whm":{"serverUrl":"http://your-server-address:3000/sse"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
WHM Management Control Panel(MCP)
WHM(Web Host Manager)サーバーに接続し、アカウント管理とサーバー管理を行う Node.js サーバーアプリケーションです。このアプリケーションは Model Context Protocol(MCP)を実装しており、Claude などの AI アシスタントが WHM API を利用できるようにします。
機能
- アカウント管理(作成、変更、一時停止、終了)
- サーバー情報と統計
- サーバーの更新とメンテナンス
- SSL 証明書管理
- バックアップ管理
- メールアカウント管理
- ドメイン管理
- セキュリティ機能
- AI アシスタント連携のための MCP プロトコル実装
クイックスタート
Node.js 18 以降と WHM API トークンが必要です。
- サーバー用のフォルダーを作成し、その中に
.envファイルを作成します:WHM_SERVER=your-server-domain.com WHM_PORT=2087 WHM_USERNAME=root WHM_API_TOKEN=your-whm-api-token # Only if WHM is reached by IP or uses a self-signed certificate: # WHM_INSECURE_TLS=true PORT=3000 # Required: the server refuses to start without it. Generate one with: openssl rand -hex 32 API_KEY=your-long-random-api-key - そのフォルダーから MCP サーバーを起動します:
または、このリポジトリをクローンして、npx whm-mcp-servernpm installを実行した後、npm run mcpを実行します。
MCP エンドポイントは http://localhost:3000/sse です(ポートは PORT の値が使用され、PORT が設定されていない場合は 4444 です)。
MCP クライアントの設定
すべてのリクエストには、Authorization: Bearer <API_KEY> または X-API-Key: <API_KEY> のいずれかで API キーを指定する必要があります。キーを含まないリクエストには 401 Unauthorized が返されます。
ヘッダー付きのリモートサーバーに対応しているクライアント(Cursor など)では、次の内容を mcp.json に追加します:
{
"mcpServers": {
"whm": {
"url": "https://your-mcp-host:3000/sse",
"headers": { "Authorization": "Bearer your-long-random-api-key" }
}
}
}
ローカルコマンドのみを実行するクライアント(Claude Desktop など)では、mcp-remote ブリッジを使用します:
{
"mcpServers": {
"whm": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://your-mcp-host:3000/sse", "--header", "Authorization: Bearer your-long-random-api-key"]
}
}
}
HTTPS とファイアウォールの背後で実行してください。キーを持つ人は誰でも WHM サーバーを管理できます。
REST API(任意)
npm start を実行すると、別の REST API(/api/...、詳細は以下を参照)が起動します。この API にも API キーが必要で、X-API-Key ヘッダーで送信します。
MCP 実装の詳細
このサーバーは、HTTP Server-Sent Events(SSE)をトランスポート機構として Model Context Protocol を実装しています。すべてのメッセージに標準の JSON-RPC 2.0 形式を使用し、次の機能が含まれています:
- 永続的な接続を確立する
/sseエンドポイント - クライアントリクエストを受信して応答する
/messagesエンドポイント connection/readyとtools/readyの自発的な通知- 適切なエラーコードを使用した標準化されたエラー処理
MCP アーキテクチャにより、AI アシスタントは、明確に定義されたパラメータースキーマを持つツールを通じて WHM の機能を安全に利用できます。これにより、言語モデルとサーバー管理機能の間に安全な橋渡しを実現します。
利用可能な MCP ツール
MCP サーバーは、ツールを通じて次の WHM 機能を公開します:
アカウント管理
whm_list_accounts- すべての WHM アカウントを一覧表示whm_create_account- 新しい cPanel アカウントを作成whm_account_summary- アカウントの詳細を取得whm_suspend_account- cPanel アカウントを一時停止whm_unsuspend_account- cPanel アカウントの一時停止を解除whm_terminate_account- アカウントを完全に削除
サーバー管理
whm_server_status- サーバーのステータスとシステム統計を取得whm_server_load- サーバーの負荷統計を取得whm_service_status- サーバーサービスのステータスを取得whm_restart_service- 特定のサーバーサービスを再起動whm_check_updates- 利用可能な更新を確認whm_start_update- サーバーの更新処理を開始
ドメイン管理
whm_list_domains- アカウントのドメインを一覧表示whm_add_domain- アカウントにドメインを追加whm_delete_domain- アカウントからドメインを削除
API ドキュメント
API エンドポイントはリソースの種類ごとに整理されています:
/api/accounts- アカウント管理操作/api/server- サーバー情報と操作/api/domains- ドメイン管理/api/ssl- SSL 証明書管理/api/backups- バックアップ管理操作/api/email- メールアカウント管理
詳しい API ドキュメントについては、サーバーの起動後に /docs エンドポイントを参照してください。
セキュリティ
このアプリケーションには WHM API 認証情報が必要です。.env ファイルを共有したり、API トークンを公開したりしないでください。
セキュリティのベストプラクティス
WHM 管理にこの MCP サーバーを使用する際は、以下のセキュリティに関する推奨事項に従ってください。
- API トークンの保護:WHM API トークンを安全に保管し、定期的にローテーションしてください。可能な限り、root の全権限を使用するのではなく、必要な権限のみを付与した WHM API トークンを作成してください。
- TLS/SSL の使用:本番環境では、このサーバーを必ず HTTPS でデプロイしてください。
- ファイアウォールルール:可能な場合は、IP アドレスによって MCP サーバーへのアクセスを制限してください。
- 定期的なアップデート:WHM サーバーを最新のセキュリティパッチで更新してください。
- 監視:不審なアクティビティや不正アクセスの試みを検知するため、監視を導入してください。
- バックアップ戦略:すべてのサーバー設定とデータを定期的にバックアップしてください。
サイトの侵害と root の侵害
サイトの侵害と root の侵害の違いに注意してください。
- サイトの侵害は特定のウェブサイトのみに影響しますが、root の侵害ではサーバー全体が危険にさらされます。
- 侵害が発生した場合は、バックアップから復元し、攻撃の侵入経路を特定してください。
- WHM のセキュリティの詳細については、cPanel のセキュリティのベストプラクティスを参照してください。
テスト
同梱のサンプルクライアントを使用して MCP サーバーをテストできます。
npm run example
これにより、MCP サーバーに接続し、利用可能なツールをリクエストして、サンプルコマンドを実行する簡単なテストクライアントが起動します。
ライセンス
ISC
Host Hobbit について
Host Hobbit Ltd が構築・保守しています。英国の企業向けに、マネージド WordPress ホスティング、WHM/cPanel および VPS の管理、セキュリティ強化、AI による自動化を提供しています。
デプロイのサポートが必要ですか?それとも、貴社向けに同様のものを構築したいですか?お問い合わせください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。