WP Engine MCP Server について
WP Engine MCP Server は、WP Engine アカウントや WordPress インフラを管理する開発者・運用担当者向けの TypeScript 製サーバーです。アカウント、サイト、インストール、バックアップ、ドメイン、キャッシュ、SSH キーを操作でき、stdio と HTTP に対応します。
主な機能
- 01アカウント、サイト、インストール情報の取得
- 02サイトとインストールの作成・更新・削除
- 03バックアップの取得と作成
- 04ドメイン、キャッシュ、SSH キーの管理
- 05stdio と HTTP トランスポートへの対応
活用シーン
- 01WP Engine アカウントとサイトの状態確認
- 02インストールのバックアップ作成やドメイン管理
- 03キャッシュの削除と SSH キーの管理
MCP 対応
MCP サーバーとして、WP Engine のアカウント、サイト、インストール、バックアップ操作をツールとリソースで MCP クライアントに公開します。ローカルの stdio と認証付きリモート HTTP に対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
WP Engine MCP サーバー
これは、WP Engine API 用の MCP サーバーを TypeScript で実装したものです。WP Engine のアカウント、サイト、インストール、バックアップを操作するためのツールとリソースを提供します。このサーバーは、ローカル(stdio)とリモート(HTTP)の両方のトランスポートに対応しています。
機能
- アカウント情報の取得
- サイト情報の取得
- インストール情報の取得
- バックアップの取得と作成
- ローカルとリモートの MCP 接続に対応
- 認証付き HTTP トランスポート
- 包括的なログ記録とエラー処理
インストール
- このリポジトリをクローンします
- 依存関係をインストールします:
npm install - サーバーをビルドします:
npm run build
設定
このサーバーでは、WP Engine API の認証に WP Engine API の認証情報が必要です。認証情報は、WP Engine Portal の API Access ページ(https://my.wpengine.com/api_access)から取得できます。
次の環境変数を設定します:
WP_ENGINE_API_USERNAME:WP Engine API のユーザー名WP_ENGINE_API_PASSWORD:WP Engine API のパスワード
使用方法
ローカル MCP サーバー(stdio トランスポート)
Claude Desktop などのローカル MCP クライアントで使用する場合:
npm run start:stdio
または、環境変数を使用します:
WP_ENGINE_API_USERNAME="your-username" WP_ENGINE_API_PASSWORD="your-password" npm run start:stdio
リモート MCP サーバー(HTTP トランスポート)
環境変数を使用して HTTP 経由でリモートアクセスする場合:
WP_ENGINE_API_USERNAME=my-api-username WP_ENGINE_API_PASSWORD=my-api-password npm run start
これにより、リモートトランスポートに対応したデフォルトのサーバー(build/index.js)が実行されます。カスタムオプションを指定して実行することもできます:
WP_ENGINE_API_USERNAME="your-username" WP_ENGINE_API_PASSWORD="your-password" node build/main.js --transport=http --port=8080 --auth-token=my-secure-token
コマンドラインオプション
node build/main.js [options]
Options:
-h, --help Show help message
-v, --version Show version information
-t, --transport <type> Transport type (stdio, http) [default: stdio]
-p, --port <port> Port for HTTP transport [default: 3000]
-a, --auth-token <token> Authentication token for HTTP transport [default: wpengine-mcp-token]
MCP 設定
ローカル設定(stdio トランスポート)
次の設定を MCP 設定ファイルに追加します:
{
"mcpServers": {
"wpengine": {
"command": "node",
"args": [
"/path/to/wpengine-mcp-ts/build/main.js"
],
"env": {
"WP_ENGINE_API_USERNAME": "your-api-username",
"WP_ENGINE_API_PASSWORD": "your-api-password"
},
"disabled": false,
"autoApprove": []
}
}
}
リモート設定(HTTP トランスポート)
リモート MCP 接続の場合は、HTTP MCP クライアントを実装するか、サーバーをリモートサービスとして使用する必要があります。このサーバーは、MCP プロトコルメッセージを受け付ける HTTP エンドポイント /mcp を公開します。
HTTP リクエストの例:
curl -X POST http://localhost:3000/mcp \
-H "Authorization: Bearer wpengine-mcp-token" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": "1",
"method": "tools/list",
"params": {}
}'
利用可能なツール
このサーバーは、WP Engine インフラストラクチャを管理するための包括的なツールを提供します:
アカウント管理
get_accounts- すべての WP Engine アカウントを取得しますget_current_user- 現在認証されているユーザーを取得します
サイト管理
get_sites- WP Engine アカウントのすべてのサイトを取得しますcreate_site- 新しいサイトを作成しますupdate_site- サイト名を変更しますdelete_site- サイトと、関連付けられているすべてのインストールを削除します(完全に削除)
インストール管理
get_installs- WP Engine サイトのすべてのインストールを取得しますcreate_install- 新しい WordPress インストールを作成しますupdate_install- WordPress インストールを更新しますdelete_install- ID を指定してインストールを削除します(完全に削除)
バックアップ管理
get_backups- WP Engine インストールのすべてのバックアップを取得しますcreate_backup- WP Engine インストールの新しいバックアップを作成します
ドメイン管理
get_domains- インストールのドメインを取得しますcreate_domain- 既存のインストールに新しいドメインを追加しますupdate_domain- 既存のドメインをプライマリとして設定するか、リダイレクトを設定しますdelete_domain- インストールの特定のドメインを削除します
キャッシュ管理
purge_cache- インストールのキャッシュ(object、page、cdn、または all)を消去します
SSH キー管理
get_ssh_keys- SSH キーを取得しますcreate_ssh_key- 新しい SSH キーを追加しますdelete_ssh_key- 既存の SSH キーを削除します
ツールの使用例
すべてのアカウントを取得
{
"name": "get_accounts",
"arguments": {}
}
新しいサイトを作成
{
"name": "create_site",
"arguments": {
"name": "My New Site",
"account_id": "account-uuid"
}
}
新しいインストールを作成
{
"name": "create_install",
"arguments": {
"name": "mysite",
"account_id": "account-uuid",
"site_id": "site-uuid",
"environment": "staging"
}
}
バックアップを作成
{
"name": "create_backup",
"arguments": {
"install_id": "install-uuid",
"description": "Pre-deployment backup",
"notification_emails": ["[email protected]"]
}
}
ドメインを追加
{
"name": "create_domain",
"arguments": {
"install_id": "install-uuid",
"name": "example.com",
"primary": true
}
}
キャッシュを消去
{
"name": "purge_cache",
"arguments": {
"install_id": "install-uuid",
"type": "all"
}
}
利用可能なリソース
アカウント情報
wpengine://account/{accountId}
アカウントのサイト
wpengine://account/{accountId}/sites
サイト情報
wpengine://site/{siteId}
サイトのインストール
wpengine://site/{siteId}/installs
インストール情報
wpengine://install/{installId}
インストールのバックアップ
wpengine://install/{installId}/backups
テスト
ローカルテスト(stdio トランスポート)
MCP Inspector を使用してサーバーをテストできます:
WP_ENGINE_API_USERNAME="your-api-username" WP_ENGINE_API_PASSWORD="your-api-password" npx @modelcontextprotocol/inspector build/main.js
リモートテスト(HTTP トランスポート)
-
HTTP モードでサーバーを起動します。
WP_ENGINE_API_USERNAME="your-username" WP_ENGINE_API_PASSWORD="your-password" npm run start:http -
別のターミナルでテストクライアントを実行します。
node test-http-client.js
テストクライアントは、HTTP トランスポートが正常に動作していることを確認し、さまざまな MCP 操作をテストします。
セキュリティに関する考慮事項
HTTP トランスポートを使用する場合:
- 認証:サーバーでは Bearer トークン認証を使用しています。本番環境ではデフォルトのトークンを変更してください。
- HTTPS:本番環境での HTTPS の使用を検討してください。
- ファイアウォール:HTTP ポートへのアクセスを信頼できるネットワークのみに制限してください。
- 環境変数:API 認証情報を安全に保管し、バージョン管理にコミットしないでください。
開発
ビルド
npm run build
変更の監視
npm run watch
プロジェクト構成
wpengine-mcp-ts/
├── src/
│ ├── main.ts # Main entry point with transport selection
│ ├── index.ts # Original stdio-only implementation
│ └── transport/
│ └── http.ts # HTTP transport implementation
├── build/ # Compiled JavaScript output
├── test-http-client.js # HTTP transport test client
└── package.json
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。