mcpField
W
WHMCS MCP Server

WHMCS MCP Server

ローカル
daddar.ioビジネス・マーケティング33 日前に更新

WHMCS MCP Server について

WHMCS MCP Serverは、WHMCSの顧客、請求、チケット、サービスの操作をAIクライアントに接続します。自然言語でホスティング業務を扱うチーム向けで、読み取り専用リソース、ワークフロープロンプト、各ツールのdryRunプレビューを備えます。

主な機能

  1. 01顧客、請求書、注文の管理
  2. 02チケット、サービス、ドメインの処理
  3. 03読み取り専用のライブリソース
  4. 0418種類のワークフロープロンプト
  5. 05dryRunによる操作プレビュー

活用シーン

  1. 01未払い請求書の確認とリマインダー送信
  2. 02サポートチケットの振り分けと返信案作成
  3. 03顧客の注文や請求書の作成
  4. 04サービスやドメインの更新リスク確認

MCP 対応

互換性のあるMCPクライアント向けに、WHMCS管理ツール、読み取り専用リソース、ワークフロープロンプトを公開します。READMEにはHTTPとstdioのトランスポートが記載されています。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"daddariotech-whmcs": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_TRANSPORT",
"-e",
"WHMCS_API_URL",
"-e",
"WHMCS_IDENTIFIER",
"-e",
"WHMCS_SECRET",
"-e",
"LICENSE_KEY",
"docker.io/daddariotech/whmcs-mcp:latest"
],
"env": {
"MCP_TRANSPORT": "<MCP_TRANSPORT>",
"WHMCS_API_URL": "<WHMCS_API_URL>",
"WHMCS_IDENTIFIER": "<WHMCS_IDENTIFIER>",
"WHMCS_SECRET": "<WHMCS_SECRET>",
"LICENSE_KEY": "<LICENSE_KEY>"
}
}
}
}
起動コマンドdocker run -i --rm -e MCP_TRANSPORT -e WHMCS_API_URL -e WHMCS_IDENTIFIER -e WHMCS_SECRET -e LICENSE_KEY docker.io/daddariotech/whmcs-mcp:latest
設定が必要な環境変数
MCP_TRANSPORTMust be http for the streamable HTTP transport.
WHMCS_API_URLBase URL of your WHMCS install, e.g. https://billing.example.com
WHMCS_IDENTIFIERシークレットWHMCS API credential identifier
WHMCS_SECRETシークレットWHMCS API credential secret
LICENSE_KEYシークレットPaid licence key. Omit to start the 14-day trial.

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

パッケージ
ocidocker.io/daddariotech/whmcs-mcp:latest

ツール

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

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

詳細

WHMCS MCP サーバー

WHMCS 向けの本番環境対応 AI 統合です。 ChatGPT、Claude、Cursor を WHMCS のインストール環境に直接接続し、自然言語でクライアント、請求書、チケット、サービスを管理できます。

You: "Send a payment reminder to all clients with overdue invoices over $50"
AI:  Fetching overdue invoices... Found 12. Sending reminder emails... Done.

ライセンス Docker MCP


前提条件 — WHMCS API のセットアップ

インストーラーを実行する前に、適切な権限を持つ WHMCS API 認証情報が必要です。

1. API ロールを作成する

WHMCS 管理画面で、Setup → Staff Management → API Roles → Add Role を選択します。

AI にどの程度の操作を許可するかに応じて、権限プリセットを選択します。

最小権限(読み取り専用 — AI は閲覧できますが、変更はできません): GetClients GetClientsDetails GetClientsProducts GetClientsDomains GetClientsAddons GetClientGroups GetContacts GetEmails GetInvoice GetInvoices GetOrders GetOrderStatuses GetProducts GetTicket GetTickets GetSupportDepartments GetQuotes GetCredits GetTransactions GetStats GetActivityLog GetCancelledPackages GetEmailTemplates GetCurrencies GetPaymentMethods GetHealthStatus GetProductGroups GetRegistrars GetServers GetAffiliates GetAnnouncements GetSupportStatuses GetTicketCounts GetTicketPredefinedCats GetAdminUsers GetToDoItems GetToDoItemStatuses GetStaffOnline DomainWhois DomainGetNameservers DomainGetLockingStatus GetTLDPricing GetPromotions GetProjects GetProject

最大権限(フルアクセス — AI はあらゆる操作を実行できます): 上記のすべてに加えて、以下を設定します。 AddClient UpdateClient AddClientNote AddContact UpdateContact CreateInvoice AddInvoicePayment AddOrder AcceptOrder CancelOrder OpenTicket AddTicketReply UpdateTicket CreateQuote UpdateQuote SendQuote AcceptQuote DeleteQuote AddCredit ApplyCredit AddBillableItem SendEmail UpdateClientProduct ModuleSuspend ModuleUnsuspend ModuleTerminate ModuleCreate UpgradeProduct DomainRegister DomainTransfer DomainRenew DomainUpdateNameservers DomainUpdateLockingStatus DomainToggleIdProtect FraudOrder PendingOrder UpdateInvoice ModuleChangePw LogActivity AddTicketNote AffiliateActivate CreateProject UpdateProject AddProjectTask UpdateProjectTask DeleteProjectTask AddProjectMessage StartTaskTimer EndTaskTimer

プロジェクト管理ツール: list_projects から end_task_timer までのツールを使用するには、API ロールの権限にかかわらず、WHMCS の Project Management アドオンが有効になっている必要があります(Setup → Addon Modules)。

ドメインの書き込み権限: register_domain、transfer_domain、renew_domain には、それぞれ DomainRegister、DomainTransfer、DomainRenew が必要です。権限名では Domain が先頭に来る点に注意してください。RegisterDomain/TransferDomain/RenewDomain は有効な WHMCS 権限キーではなく、付与しても無視されます。ドメインツールが HTTP 403 を返す場合、ロールに対応する権限がありません。2.3.1 以前からアップグレードする場合は、2.3.2 の変更履歴を参照してください。これら3つの権限を正しい名前で再付与する必要があります。

ヒント: 最小権限から始め、必要に応じて書き込み権限を追加してください。AI クライアントが意図しない動作をしたり、不適切なプロンプトを受け取ったりした場合の影響範囲を抑えられます。

2. API アクセスキーを設定する(推奨)

アクセスキーを使うと、IP 制限を完全に回避できます。MCP サーバーの送信元 IP は変わることがあるため(Docker の再起動、サーバーの移動など)、この方法を推奨します。

WHMCS のルートにある configuration.php に次の行を追加します。

$api_access_key = 'your-secret-passphrase';

使用できる文字:英字、数字、! @ # $ % . ( ) * [ ] - _

次に、.env または Portainer スタックで WHMCS_ACCESS_KEY に同じ値を設定します。

3. API 認証情報を作成する

Setup → Staff Management → API Credentials → Generate New Credential

  • ロール:作成したロールを選択します
  • 許可する IP:アクセスキーを使用する場合は空欄にします(推奨)。IP ベースの制限を使う場合は、サーバーの IP を入力します
  • Identifier と Secret をコピーします。インストール時に必要です

クイックスタート — 5 分以内に実行

バイナリ(Docker は不要です):

curl -fsSL https://daddar.io/whmcs-mcp/install.sh | sudo bash

WHMCS の認証情報とライセンスキーの入力を求められます。バイナリを /usr/local/bin にインストールし、systemd サービスを登録します。

Docker(すでに Docker を実行しているサーバーにおすすめです):

curl -fsSL https://daddar.io/whmcs-mcp/install-docker.sh | bash

認証情報の入力を求められ、.env を書き込み、Docker Compose でスタックを起動します。


ライセンスの取得

daddar.io/store/ai-tools/whmcs-mcp でライセンスを購入してください。購入手続き後、ライセンスキーはクライアントポータルに表示されます。setup.sh の実行時に入力してください。

ライセンスをお持ちでない場合は、初回起動時に 14 日間の無料トライアル が自動的に開始されます。


できること

98 個の WHMCS ツール
カテゴリーツール
クライアントget_client list_clients add_client update_client get_client_details get_client_groups get_client_emails get_client_domains get_client_addons add_client_note
請求書get_invoice list_invoices create_invoice add_invoice_payment get_overdue_invoices get_transactions update_invoice
注文add_order get_orders accept_order cancel_order get_order_statuses fraud_order pending_order
サービスlist_services update_service upgrade_product module_create module_suspend module_unsuspend module_terminate get_cancelled_packages
チケットget_ticket list_tickets open_ticket add_ticket_reply update_ticket get_support_departments add_ticket_note get_support_statuses get_ticket_counts get_ticket_predefined_categories
見積もりget_quotes create_quote send_quote accept_quote update_quote delete_quote
連絡先get_contacts add_contact update_contact
クレジットget_credits add_credit apply_credit
請求add_billable_item get_payment_methods get_currencies
メールsend_email get_email_templates
製品get_products get_product_groups create_product
ドメインregister_domain transfer_domain renew_domain get_domain_whois get_domain_nameservers update_domain_nameservers get_domain_lock_status update_domain_lock_status update_domain_donotrenew get_tld_pricing
管理get_admin_users get_staff_online get_whmcs_details log_activity get_activity_log
アフィリエイトget_affiliates activate_affiliate
プロモーションget_promotions
サーバーget_servers module_change_password
システムget_health_status get_todo_items get_todo_item_statuses get_announcements get_registrars get_stats
レポートget_stats get_activity_log get_transactions
プロジェクトlist_projects get_project create_project update_project add_project_task update_project_task delete_project_task add_project_message start_task_timer end_task_timer — WHMCS の Project Management アドオン が有効になっている必要があります

すべてのツールは dryRun モードに対応しています。変更を加える前に、実行される内容を確認できます。

24 個のリアルタイムリソース

リソースは、AI クライアントが whmcs:// URI を介してサブスクライブできる読み取り専用のデータエンドポイントです。データは TTL が 60 秒のキャッシュから提供されます。

URI説明
whmcs://statsリアルタイムのシステム統計(収益、クライアント数、請求書の合計)
whmcs://healthサーバーのヘルスステータス
whmcs://system/infoWHMCS のインストール詳細(バージョン、PHP、データベース)
whmcs://products製品とサービスの全カタログ
whmcs://product-groups製品数を含む製品グループ
whmcs://tld-pricingドメイン TLD の登録/移管/更新料金
whmcs://promotions有効なプロモーションとクーポンコード
whmcs://order-statuses利用可能な注文ステータスの値
whmcs://currencies為替レートを含む設定済み通貨
whmcs://payment-methods有効な決済ゲートウェイモジュール
whmcs://registrars設定済みのドメインレジストラモジュール
whmcs://serversプロビジョニングサーバー
whmcs://client-groupsクライアントグループの定義
whmcs://affiliates登録済みアフィリエイトアカウント
whmcs://email-templatesメールテンプレートライブラリ
whmcs://announcements公開済みのお知らせ
whmcs://support/departmentsサポート部門
whmcs://support/statuses利用可能なチケットステータスの値
whmcs://support/ticket-counts部門およびステータス別のチケット数
whmcs://support/predefined-categories定型チケット返信のカテゴリ
whmcs://admin/users管理者ユーザーアカウント
whmcs://admin/todo管理者の ToDo 項目
whmcs://admin/todo-statuses利用可能な ToDo 項目のステータス値
whmcs://admin/staff-online現在管理エリアにログインしているスタッフ
18 個のワークフロープロンプト

プロンプトは、MCP クライアントがワンクリックのガイド付きインタラクションとして表示する、事前構築済みのワークフローテンプレートです。

プロンプト説明
new_client新規クライアントアカウント作成のガイド
new_orderクライアントの製品注文を行い、受け付ける
new_invoice任意で送信できるカスタム請求書を作成する
new_quote送信/承認のライフサイクルを含む販売見積もりを作成する
ticket_responseチケットを読み込み、スタッフ向けの丁寧な返信を作成する
client_onboardingアカウントのオンボーディング全体を確認するチェックリスト
fraud_investigation不審な注文のセキュリティ監査
bulk_invoice_reminder支払期限超過の請求書を見つけ、支払いリマインダーを送信する
revenue_reportMRR、未払い額、支払い済み額の財務内訳
client_health_checkアカウントの詳細なスコアカード(サービス、請求、サポート)
domain_expiry_auditリスクのあるドメインを特定し、更新リマインダーを作成する
new_product_setup製品設定の手順ガイド
churn_risk_report解約リスクのランキング表と推奨アクション
support_queue_triage優先度順のチケットキューと、すぐに実行できる提案
affiliate_performance上位パフォーマー、コミッション、アクティベーションの不足状況
service_renewal_forecastN か月分の更新収益予測
addon_upsell_opportunities不足しているアドオンの検出と、アップセル見積もりの作成
promo_effectivenessプロモーションコードの利用状況、収益への影響、有効期限の分析
他の WHMCS MCP サーバーとの比較
機能WHMCS MCP Server(当社)scarecr0w12/whmcs-mcp-toolMX Modules
ツール86約50約20
HTTP トランスポート(ChatGPT、Claude リモート)ありなし — stdio のみあり
認証OAuth 2.0 PKCE + ベアラートークンなし静的トークンのみ
ワンクリックインストールあり(curl | bash)手動(clone + npm)手動
リアルタイムの Webhook プッシュありなしなし
監査ログありなしなし
Prometheus メトリクスありなしなし
レート制限ありなしなし
すべてのツールでの dryRun モードありなしなし
試用期間14 日間無料永久無料(MIT)なし
商用サポートありなし限定的
ライセンス商用MIT商用

サポート対象の AI クライアント

クライアントトランスポート認証
ChatGPT(GPT Actions 経由)HTTPベアラートークンまたは OAuth 2.0
Claude DesktopHTTPベアラートークンまたは OAuth 2.0
Cursor IDEstdio または HTTPベアラートークンまたは OAuth 2.0
MCP 互換クライアント全般HTTPベアラートークンまたは OAuth 2.0

セキュリティ

  • OAuth 2.0 PKCE — 有効期間の短いトークンと更新機能を備えた、業界標準の認証
  • ベアラートークンモード — 単一テナントのデプロイ向けの簡単な API キー設定
  • レート制限 — IP ごとおよびトークンごとの制御(設定可能)
  • 監査ログ — 認証されたすべてのリクエストを、クライアント ID、メソッド、タイムスタンプとともに記録
  • Helmet.js — セキュリティヘッダー(CSP、HSTS、X-Frame-Options など)
  • 入力のサニタイズ — 多層防御によるインジェクション対策
  • HTTPS の強制 — 本番環境で平文 HTTP を拒否
  • Docker シークレット — /run/secrets/ が存在する場合、認証情報をそこから読み込み

設定

環境変数

.env.example を .env にコピーし、値を入力してください。

必須:

変数説明
WHMCS_API_URLWHMCS の URL。例:https://billing.example.com
WHMCS_IDENTIFIERWHMCS API 識別子
WHMCS_SECRETWHMCS API シークレット

ライセンス:

変数説明デフォルト
LICENSE_KEYdaddar.io で取得したライセンスキー(14 日間の無料トライアルが自動的に開始されます)

認証:

変数説明デフォルト
MCP_OAUTH_ADMIN_PASSWORDOAuth PKCE フロー用の /authorize 同意画面を有効にします(未設定 — 同意画面は無効)
MCP_OAUTH_SESSION_SECRETOAuth CSRF セッション Cookie の署名に使用するシークレット。openssl rand -hex 32 で生成してください。(一時的な値を自動生成 — 本番環境では設定してください)
MCP_AUTH_TOKENS_FILEベアラートークンストアへのパス/app/data/tokens.json

注(v2.1.0): MCP_AUTH_MODE と MCP_REQUIRE_AUTH は削除されました。サーバーは常に完全な認証スタックを実行し、どの設定でもベアラートークンと OAuth の両方を利用できます。HTTP モードでは常に認証が強制されます。

ネットワーク/プロキシ:

変数説明デフォルト
MCP_TRUST_PROXYTLS 終端を行うリバースプロキシ(Traefik、nginx など)の背後でサーバーを実行する場合は、true に設定します。正確な IP 検出と HTTPS の強制のため、X-Forwarded-* ヘッダーを信頼するようになります。false (v2.2.0 で変更 — 本番環境では明示的に設定してください)

オブザーバビリティ(任意):

変数説明デフォルト
MCP_METRICS_ENABLEDPrometheus メトリクスエンドポイントを有効にしますtrue
MCP_METRICS_PORT/metrics エンドポイントのポート9090
PUSHGATEWAY_URLメトリクスのプッシュ先となる Prometheus Pushgateway の URL(未設定)
PUSHGATEWAY_USERPushgateway の HTTP Basic 認証ユーザー名(未設定)
PUSHGATEWAY_PASSWORDPushgateway の HTTP Basic 認証パスワード(未設定)

Webhook(任意):

変数説明
WHMCS_WEBHOOK_SECRETWHMCS PHP フックと共有する HMAC シークレット

すべてのオプションについては、.env.example を参照してください。


AI クライアントの接続

Cursor IDE

ベアラートークン(簡単な方法): ~/.cursor/mcp.json に追加します。

{
  "mcpServers": {
    "whmcs": {
      "url": "https://your-server:3100/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_TOKEN"
      }
    }
  }
}

OAuth(新しいアプリの UI): OAuth を使って Cursor の「New App」から追加する場合、サーバーで MCP_CLIENT_REGISTRATION_SECRET を設定しておく必要があります(Portainer または .env で設定)。openssl rand -hex 24 で生成してサーバーに設定し、Cursor の詳細な OAuth 設定にある「Client registration secret」(または同等の項目)に同じ値を入力してください。これにより、Cursor が自身を登録できるように Dynamic Client Registration が有効になります。

または、ローカルの stdio モードでは次のようにします。

{
  "mcpServers": {
    "whmcs": {
      "command": "node",
      "args": ["/path/to/whmcs-mcp/dist/index.js"],
      "env": {
        "WHMCS_API_URL": "https://your-whmcs.example.com",
        "WHMCS_IDENTIFIER": "your-identifier",
        "WHMCS_SECRET": "your-secret"
      }
    }
  }
}
Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json(macOS)または %APPDATA%\Claude\claude_desktop_config.json(Windows)に追加します。

{
  "mcpServers": {
    "whmcs": {
      "url": "https://your-server:3100/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_TOKEN"
      }
    }
  }
}
ChatGPT(GPT Actions)

GPT Action のスキーマで https://your-server:3100/mcp を指定してください。複数ユーザー構成では OAuth 2.0 モードを使用してください。


リアルタイムの Webhook プッシュ

新しいチケット、請求書、支払い遅延などの WHMCS イベントを、リアルタイムで AI にプッシュして受信できます。

設定手順については、docs/WEBHOOKS.md をご覧ください。


デプロイ

Docker Compose(推奨)
docker compose -f docker-compose.marketplace.yml up -d

トークンを生成します:

docker exec -it whmcs-mcp node dist/scripts/auth-cli.js generate \
  --name "My AI" --scopes "mcp:read,mcp:write"
Kubernetes

k8s-deployment.yaml と DEPLOYMENT.md をご覧ください。

リバースプロキシ(nginx / Caddy / Traefik)の背後で実行する場合

docker-compose.marketplace.yml から ports ブロックを削除し、whmcs-mcp:3100 にプロキシします。詳細は、そのファイル内のコメントをご覧ください。


可観測性

  • ヘルスチェック: GET /health
  • レディネス: GET /ready
  • Prometheus メトリクス: ポート 9090(MCP_METRICS_PORT で設定可能)

主なメトリクス:whmcs_mcp_requests_total、whmcs_mcp_request_duration_seconds、whmcs_mcp_active_sessions、whmcs_mcp_auth_total


サポートとライセンス

Copyright © 2026 Daddario Tech Solutions. All rights reserved. 詳細は LICENSE をご覧ください。

コメント

MCP は初めてですか?

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

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