qc-mcp について
qc-mcpは、AIアシスタントからQuickCloudのホスティングリソースを確認・管理するための、依存関係のないMCPサーバーです。ライブAPIカタログからツールを生成し、標準では読み取り専用で、書き込みには明示的な確認を求めます。
主な機能
- 01ライブAPIからツールを生成
- 02標準で読み取り専用
- 03確認と冪等性キーが必要な書き込み
- 04製品別のツール絞り込み
- 05APIキーとqc CLI設定に対応
活用シーン
- 01VM、DNS、データベース、ファイアウォールの確認
- 02書き込みを有効にしてホスティングリソースを管理
- 03リソース作成前の費用見積もり
MCP 対応
QuickCloud APIのエンドポイントをMCPクライアント向けのツールとして提供します。ローカル実行またはホスト済みサーバーへの接続が可能で、書き込みには明示的な有効化と確認が必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @quickhost/qc-mcpQC_API_TOKENシークレットYour QuickCloud API key (create one in the panel under API). A read-only or product-limited key is the safest to give an assistant.QC_API_URLPanel origin. Only needed if your provider runs QuickCloud on their own domain (default https://cloud.quickhost.uk).QC_MCP_WRITESet to 1 to allow the assistant to create and change things (equivalent to the --allow-write flag). Every write still asks for your confirmation.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
quickcloud-mcp(qc-mcp.mjs)
QuickHost QuickCloud API 用の、依存関係ゼロの小さなMCPサーバーです。Claude Desktop、Claude Code、Cursor、その他のMCP対応アシスタントを接続すると、VM、専用サーバー、Cloud Firewalls、ロードバランサー、ストレージボックス、マネージドデータベース、SMTPリレー、ウェブサイト、DNSを確認でき、許可すれば管理もできます。ご自身のAPIキーを使用します。
実行する前にお読みください。 依存関係もシークレットもない、単一の自己完結型ファイルです。APIキーはご自身のマシン(
QC_API_TOKEN環境変数、またはqcCLI の~/.config/quickcloud/config.json)から読み取り、ファイルに埋め込むことはありません。パネルの公開/api/v1のみと通信します。これはqcCLI とパネル独自のAPIページに記載されているものと同じAPIです。
できること、そして意図的にできないこと
- ツールはパネルの最新APIカタログから生成されます(
GET /api/v1)。各エンドポイントにつき1つのツールが用意されます。list_vms、get_vm、create_vm、vm_power、list_dns_zones、set_dns_zone_rrset、get_database、…などです。製品のAPIが追加されると、更新なしでここにも反映されます。 - デフォルトでは読み取り専用です。
--allow-write(またはQC_MCP_WRITE=1)を指定して起動しない限り、GETエンドポイントのみが提供されます。これはクライアント設定でご自身が選ぶ設定であり、アシスタントが有効にすることはできません。 - 書き込みにはすべて
confirm: trueが必要です。 変更を行うツールは、アシスタントが変更内容(APIが提示した料金があればその金額も)を説明し、confirmを設定するまで実行を拒否します。「小さな」書き込みでも省略できません。 - 料金はここでは計算しません。 料金が発生するエンドポイントは料金をそのまま返し、サーバーが料金を計算することはありません。すべての
POST/DELETEにはIdempotency-Keyが付与されるため、ツール呼び出しが再試行されても二重に実行されることはありません。 - 適用される制限はAPIキーの制限です。 読み取り専用のキーや、1つの製品またはリソースに限定されたキー(パネルで作成時に設定)は、APIによって適用されます。MCPが追加する制限は、これより厳しいものだけです。アシスタントには、目的を達成できる範囲で最も制限の厳しいキーを渡してください。
- 管理API、WHMCS、Proxmox、SSH、またはいずれかのノードには一切接続しません。
/api/v1のみです。
インストール
Node.js 18+ が必要です。ダウンロードするものはありません。アシスタントは npx から直接実行します。パネルの API でAPIキーを作成し、アシスタントにサーバーを追加してください。
Claude Desktop(claude_desktop_config.json)/Cursor/ほとんどのクライアント:
{
"mcpServers": {
"quickcloud": {
"command": "npx",
"args": ["-y", "@quickhost/qc-mcp"],
"env": { "QC_API_TOKEN": "qck_…" }
}
}
}
Claude Code:
claude mcp add quickcloud -e QC_API_TOKEN=qck_… -- npx -y @quickhost/qc-mcp
実行前に内容を確認できるファイルを使いたい場合は、パネルの API ページからコピーをダウンロードしてください(パネルのURLがあらかじめ入力されています)。代わりに "command": "node", "args": ["/path/to/qc-mcp.mjs"] を使用します。プロバイダーが独自ドメインでQuickCloudを運用している場合は、env に QC_API_URL を設定してください。
変更を許可するには、args の末尾(Claude Codeコマンドではパッケージ名の後)に "--allow-write" を追加します。一部の製品だけを提供するには、--products=vms,dns を追加してください(グループ:account、vms、dedicated、dns、firewall、lb、storagebox、database、relay、web、reseller)。
すでに qc CLI をお使いですか? MCPは同じ ~/.config/quickcloud/config.json を読み取るため、qc config set token … を実行済みなら env は省略できます。
URLで接続する場合
同じコネクターはパネル上でもホストされており、アドレスでMCPサーバーに接続するアプリ(ウェブ版/モバイル版Claude、ChatGPT、Cursor、Codex)から利用できます:https://cloud.quickhost.uk/mcp。アプリからQuickCloudのサインイン画面に移動します(PKCEを使った標準のOAuth 2.1)。そこでワークスペース、View onlyまたはManage、必要に応じて製品の制限を選択します。発行されるトークンは、名前以外はAPIキーと同じなので、APIが適用するすべての制限が有効になります。切断はいつでも「Account → API」から行えます。APIキーも使用できます。/mcp(表示)または /mcp/manage(変更)に Authorization: Bearer <key> を指定してください。
使用方法
まずアシスタントに quickcloud_help を呼び出すよう依頼してください。書き込みが有効かどうか、利用できる製品、API のジョブ、レート制限、エラーの仕組みが報告されます。その後は、普通に話しかけるだけです。「ワークスペースで何が実行中ですか?」「app.example.com の A レコードを追加して、Web VM を指すようにしてください」「標準ティアで 4 GB のサーバーを 2 台使うと、いくらかかりますか?」(estimate ツールは、何も構築せずに料金を算出します)。非同期の処理はすべてジョブを返します。wait_for_job でポーリングしてください。
コマンド
npx -y @quickhost/qc-mcp --list-tools # print the tools this config would offer (r = read, W = write)
npx -y @quickhost/qc-mcp --version
npx -y を使うと、常に公開済みの最新バージョンが取得されます。ダウンロードしたファイルは、1 日に 1 回、より新しいバージョンがあることを stderr に通知します。node qc-mcp.mjs --update を実行すると、パネルにある現在のコピーに置き換わります(以前のファイルは .prev として保持されます)。
セキュリティに関する注意
- 出力は API の JSON をそのまま渡したもので、API 自体のエラーメッセージも含まれます。これらは顧客に表示しても安全なように作成されています。その JSON 内の名前やラベルは、ワークスペースの実行者が入力したものです。ほかのツール出力と同様に、指示ではなくデータとして扱ってください。
- データベース管理者パスワード、VPN プロファイル、コンソールセッションなどの一度限りの表示は、書き込みクラスのツールです。
--allow-writeとconfirm: trueが必要です。 - ファイルのダウンロード(zip/CSV/PEM)は提供されていません。これらにはパネルまたは
qcを使用してください。 - サーバーが stdout に書き込むのはプロトコルのみ、stderr に書き込むのは短いステータス行のみです。キーがどちらに出力されることもありません。
ライセンス
MIT — LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。