Infomaniak MCP (unofficial) について
Infomaniak MCPは、認可済みのInfomaniakサービスや最新の公式ドキュメントをAIコーディングツールから扱う、非公式のオープンソースMCPサーバーです。範囲を限定した読み取りと個別承認付きの変更に加え、読み取り専用の検出モードも備えています。
主な機能
- 01アカウントと製品リソースの検出
- 02DNSレコードの管理と診断
- 03メールボックス情報と対応設定の確認
- 04顧客所有VPSアプリのデプロイと管理
- 05最新の公式ドキュメント検索
- 06人の承認による書き込み制御
活用シーン
- 01ドメイン期限とDNS設定の確認
- 02メールボックスのエイリアスや転送設定の確認
- 03VPSアプリのデプロイやロールバック
- 04Infomaniak公式ガイドやAPI資料の検索
MCP 対応
ホスト型OAuth MCPサーバーとローカル実行の両方を提供します。MCPクライアントはInfomaniakの検出、DNS、メール、VPSアプリ、ドキュメント用ツールを利用でき、書き込みはリソース権限と人の承認で制限されます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://infomaniak-mcp.com/mcpclaude mcp add --transport http leonhoulier-infomaniak https://infomaniak-mcp.com/mcp{"mcpServers":{"leonhoulier-infomaniak":{"type":"http","url":"https://infomaniak-mcp.com/mcp"}}}Cursor で開く{"servers":{"leonhoulier-infomaniak":{"type":"http","url":"https://infomaniak-mcp.com/mcp"}}}VS Code で開く{"mcpServers":{"leonhoulier-infomaniak":{"type":"http","url":"https://infomaniak-mcp.com/mcp"}}}{"mcpServers":{"leonhoulier-infomaniak":{"serverUrl":"https://infomaniak-mcp.com/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
Infomaniak MCP
すでに利用している Infomaniak サービスを、AI コーディングツールで活用できます。 独立した非公式のオープンソースプロジェクトです。Léon Houlier が開発しました。
ホスト型パイロットを試す · プラグインをダウンロード · 貢献する · API リファレンス · プライバシー · Cookie ポリシー
https://infomaniak-mcp.com/mcp
Claude Code の場合:
claude mcp add --transport http infomaniak https://infomaniak-mcp.com/mcp
次に、Claude Code で /mcp を実行し、ブラウザーでサインインを完了してください。他のクライアントでは、
セットアップガイドを参照してください。各顧客は
専用ページで自分の Infomaniak トークンを入力し、1 つのアカウントを承認します。トークンをチャットや GitHub の
Issue に貼り付けないでください。ネイティブクライアントのオンボーディングは現在、適格性を確認中です。
質問例:「Infomaniak のサービスを表示して。」
| 機能 | 現在のホスト型サービス |
|---|---|
| 検出 | 承認済みアカウント/製品のインベントリとリソース名の解決 |
| DNS | レコード、監査、伝播、期限切れの確認。同意済みドメインでのレコード作成/更新/削除 |
| メール | 同意済みメールボックスのメタデータ、エイリアス、転送、および対応する設定の変更 |
| VPS アプリ | 顧客所有のランナー、固定されたステートレスな Dockerfile のデプロイ、ヘルス状態、要求されたログ、保持イメージからのロールバック |
| 公式ドキュメント | 7 言語でのヘルプのリアルタイム検索、開発者向けインデックスのリアルタイム検索、最新のガイドと API リファレンス |
| 変更 | セットアップ時に読み書きを選択可能。読み取り専用も利用可能。対応する場合、書き込みのたびにその内容を指定してクライアントの確認が必要。ブラウザーでの代替手段あり |
このサービスは、メールボックスの内容、汎用 HTTP の実行、任意のシェルコマンド、 購入、または一般的な VPS ライフサイクルの書き込み操作を提供しません。カタログのメタデータは ドキュメントであり、実行可能な機能を示すものではありません。プロバイダートークンは保存時に 暗号化されます。運営者は暗号化キーを保持しており、API リクエストにトークンを使用できます。
Infomaniak との提携関係はなく、同社からの承認も受けていません。
ホスト型接続
クライアントの OAuth フローで https://infomaniak-mcp.com/mcp を使用してください。すべての顧客が
自分の Infomaniak トークンを非公開で接続し、アカウントを選択してリソースを選びます。顧客がローカルの
ランタイムや独自のサーバーを用意する必要はありません。オプションの VPS デプロイには、
ペアリングされた顧客所有のランナーが必要です。既存の許可範囲が自動的に拡大されることはありません。明示的に設定した読み取り専用は常に優先されます。
API と現在の機能、 クライアント適格性確認の証拠、 プライバシーポリシーを参照してください。ネイティブクライアントの適格性確認状況は クライアントによって異なります。エンドポイントやローカルテストの合格は、すべてのクライアントのワークフローが検証済みであることを意味しません。
ホスト型サービス、プラグインパッケージ、ランナーは、このソースからリリースされています。 ソース、プラグイン ZIP、チェックサムについてはバージョン付きリリースを参照してください。 ランナーはダウンロードからも入手できます。
ホスト型プラグインパッケージ
薄型のホスト型プラグインはplugins/infomaniakにあります。 既存のリモート MCP とともに、非公開の接続ガイドと再利用可能な Infomaniak ワークフローをまとめています。 ポータブルな Agent Plugins マニフェストは互換性のあるホストを対象としており、Claude 互換パッケージも併せて提供されています。プロバイダートークンはプラグインパッケージに保存されません。
公開プラグインパッケージをダウンロードするか、
node scripts/package-plugin.mjsでビルドしてください。Claude Code では、このリポジトリからインストールできます。
claude plugin marketplace add leonhoulier/infomaniak-ai
claude plugin install infomaniak@infomaniak-mcp
バージョン 0.3.5 はMCP Registry に公開されています。 このエントリはホスト型 OAuth エンドポイントを参照しているため、顧客が npm パッケージを用意する必要はありません。Claude は審査に提出済みで、Cursor にはパブリッシャー申請を送信済み、OpenAI にはドラフトをアップロード済みです。これらは承認済みのディレクトリ掲載ではありません。 リポジトリからのインストールと公開ダウンロードは、それぞれ別途利用できます。現在の申請経路、ネイティブ対応の認定、審査資料、発見性の優先事項については、配布計画をご覧ください。
ブラウザーでのプライベートな体験を試すには、npm run previewを実行して
http://127.0.0.1:8790を開いてください。デフォルトではデモデータが使われます。
ホスト型エクスペリエンスのテストをご覧ください。
ローカルインストールという選択肢
すべての顧客が各自の認証情報を使用します。INFOMANIAK_API_TOKEN(またはその非公開の_FILEソース)だけを使う場合、サーバーは読み取り専用のディスカバリー版として起動し、アカウント、製品、公開カタログ全体を確認できます。この開始時点では、作成者アカウント、バックエンド、非公開ポリシー、サーバーホスティングは必要ありません。公開されるツールは6つで、書き込みの計画も実行もできません。
スコープ付きポリシーを使うと、リソース単位の読み取りと、制御された書き込みライフサイクルが有効になります。 従来のバックエンド設定も、別途引き続きサポートされます。
AI クライアントを接続する
Node.js 22.13 以降が必要です。サーバーホスティングは必要ありません。このチェックアウトから実行してください。
npm ci --ignore-scripts
npm run build
node dist/server.js setup
使用するクライアントを選択してください。Claude Code と Claude Desktop では非公開のプラグイン設定を使用し、VS Code ではネイティブのパスワードプロンプトを使用します。Codex と Cursor では、プロジェクトの外部にある非表示のターミナル入力と、ローカルの非公開認証情報ファイルを使用します。セットアップでは、トークンの入力を求める前に保存先を説明します。チャットに貼り付けないでください。
Claude Desktop の場合は、npm run package:desktopで拡張機能をビルドし、artifacts/infomaniak-ai-0.2.0.mcpbを開いてください。依存関係は含まれていますが、このバンドルには署名がなく、ネイティブインストールには引き続きクライアントによる検証が必要です。
最初の質問:
Infomaniak のサービスを表示してください。複数のアカウントがある場合は、選択させてください。
接続をプレビューするには、node dist/server.js setup --client vscode --dry-runを実行してください。
各クライアントの手順、トークンの権限、ローテーション、削除については、オンボーディングガイドをご覧ください。npm やマーケットプレイスでのリリースはまだありません。
JSON 書き込み API
JSON API は、スコープ付きの読み取りと、計画、実行、キャンセル、調整の各ルートを公開します。ホスト型ベータ版では、書き込みは使い捨ての TXT 名に限定されます。フォームのエリシテーションがネゴシエートされた場合はネイティブクライアントでの確認を伴う暗号化プランを使用し、それ以外の場合はブラウザーで承認します。別個のポリシー版では、設定済みのリソース許可と人間用キーが引き続き保持されます。API 承認エンドポイントはありません。書き込み API リファレンスをご覧ください。
上級編:スコープを限定した読み取りと個別承認による書き込み
上記のシンプルな接続では、アカウントと製品を確認できます。個々のリソースを調べたり、レビュー済みの変更を有効にしたりするには、別途スコープを限定したポリシーを設定してください。制御版では Node の SQLite API を使用します。
実際のアカウント ID を使って、新しいプライベートディレクトリを初期化します。大文字のプレースホルダーを置き換え、必要のない製品オプションは省略してください:
node dist/admin.js init \
--directory "$HOME/.config/infomaniak-ai" \
--account ACCOUNT_ID \
--zone example.com \
--dns-source _infomaniak-ai-test \
--mail-hosting MAIL_HOSTING_ID \
--mailbox MAILBOX_NAME
これにより、プライベートポリシー、クライアント接続トークン、および別個の人間による承認キーが書き込まれます。これらの値が表示されることはありません。すべての書き込みと書き込み可能なリソースの許可は、初期状態では無効です。既存のインストールが上書きされることはありません。
プロバイダートークンは、クライアントのシークレットストアまたは INFOMANIAK_API_TOKEN に設定してください。または、INFOMANIAK_API_TOKEN_FILE に、モード 0600 の絶対パスで指定した通常のシークレットファイルを設定してください。両方のソースを設定したり、認証情報を会話に貼り付けたりしないでください。
汎用 MCP クライアントでは、コマンドに node を、引数に以下を指定してください:
/absolute/path/to/infomaniak-ai/dist/server.js
--config
/absolute/path/to/private/access.local.json
デフォルトのローカルポリシーでは、承認インターフェースも localhost:8787/approvals で起動します。人間用キーはブラウザーまたは対話型の人間用ターミナルに入力し、AI クライアントの設定には含めないでください。
node dist/server.js --config /absolute/path/to/access.local.json --doctor
Doctor はプロバイダーに接続せず、設定と任意のバックエンド整合性を確認します。
ツール
ポリシー駆動版では、以下の 10 個のツールを公開します:
| ツール | 目的 |
|---|---|
infomaniak_status | 対応範囲、設定済みアダプター、接続ポリシー |
infomaniak_search | 関連する操作と、必要に応じて確認済みのスキーマを取得 |
infomaniak_catalogue | 製品/メソッドごとのページ分割された公開メタデータ |
infomaniak_read | アカウント/リソースの許可範囲内で、確認済みの読み取りを実行 |
infomaniak_plan | プレビューを保存。プロバイダーへの変更や承認は行いません |
infomaniak_execute | 個別承認された正確なプランを一度だけ実行 |
infomaniak_operation | ステータス確認または読み取り専用の照合 |
infomaniak_cancel | 実行開始前にキャンセル |
infomaniak_docs_search | 最新の公式ヘルプガイドまたはライブ API インデックスを検索 |
infomaniak_docs_read | 最新の公式ガイドまたは API リファレンスを取得 |
MCP 承認ツールや汎用 HTTP/シェル実行ツールはありません。検索結果には、実行できない理由とともに、無効なカタログ項目が返されることがあります。
確認済みの操作では、検索結果に Infomaniak 固有の notes が含まれます。各 ID が何を指すのか、. がゾーンの頂点であること、MX 優先度がターゲット内にあること、UTC の有効期限、転送フラグの意味などが記載されています。詳しくはスキルにある全表を参照してください。
最新ドキュメントとブラウザータスク
どの版でも、公式ドキュメントのライブ検索と読み取りが利用できます。infomaniak_docs_search に公開トピックの検索語(例:VPS Lite SSH)を指定してから、返された URL を使って infomaniak_docs_read を実行してください。バンドルされた操作カタログではなく、開発者向けライブインデックスを検索するには、source: "api" を設定します。
結果にはソース URL、取得時刻、および明示的なページネーション情報が含まれます。
API の機能が不足している場合、エージェントは自身が認可されたブラウザーまたはコンピューターツールを使って、公式 Manager ガイドに従うことができます。ドキュメントへのアクセスによってブラウザーが操作されたり、リソースを変更する権限が付与されたりすることはありません。ドキュメントへのアクセスを参照してください。
読み取り専用の診断
| 操作 | チェック内容 |
|---|---|
domains.expiry | UTC での登録有効期限、残り日数、期限切れ/期限間近/正常 |
dns.audit | SPF(未設定、重複、+all、Infomaniak の include)、DMARC、DKIM 委任、MX、apex CNAME、TTL が短いレコード |
dns.propagation | 1 つの名前に対する Google、Cloudflare、Quad9 の応答をゾーンと比較します。検索に失敗した場合は不一致です |
保存されたゾーンとパブリックリゾルバーを読み取ります。メール配信や 署名のテストではありません。
制御された書き込み
まず、明示的に使い捨て可能なリソースから始めます。オペレーターは次のすべてを許可する必要があります。
- プリンシパルの
operationsリストにある、正確に確認済みの操作。 writes: "disposable-only"と、disposable: trueおよびwritable: trueを指定した正確なリソースのバインド。- 計画全体に対する、新たな独立した人間の承認。
名前を指定した DNS 許可では resources.dns_names["example.com:_infomaniak-ai-test"] を使用します。
このような限定的な許可を使う場合、更新/削除の呼び出しには expected_source を含めます。
書き込み可能なゾーン全体への許可では、より広範な変更が可能です。ゾーンのインベントリ許可ではできません。
メールボックスの許可には resources.mailboxes["HOSTING_ID:MAILBOX_NAME"] を使用します。これはメールホスティングのインベントリ許可とは別です。
人間は /approvals でアカウント、リソース、変更前/変更後の値、影響、復旧の制限を確認し、その後 APPROVE と入力します。モデルに渡されるのは計画 ID/ハッシュのみで、モデルは承認を付与できません。ローカル管理者は、別個の人間用キーを使って admin.js plans、show、対話型の approve を実行することもできます。
古くなった計画や期限切れの計画は実行できません。競合する書き込みはリソースロックによって順番に処理されます。結果が不確かなリクエストはロックされたままになり、読み取りを通じて状態を照合します。変更操作が自動的に再試行されることはありません。プロバイダーの状態が検証済みでも、DNS の伝播、配信、SSH 接続、アプリケーションの健全性が証明されるわけではありません。
ご自身のアカウントで書き込みを評価するには、ゾーンと使い捨てのメールボックスを 1 つ選びます。
まず、プライベートなターミナル環境を通じて INFOMANIAK_API_TOKEN を設定してください。値をコマンドやシェル履歴に含めないでください。その後、次を実行します。
node scripts/qualify-writes.mjs \
--account ACCOUNT_ID --zone example.com --mail-hosting MAIL_HOSTING_ID --mailbox throwaway
DNS 名 _infomaniak-ai-test とエイリアス ik-ai-test のみを変更し、各変更の計画を作成します。別のターミナルで node dist/admin.js approve を実行して承認するのを待ってから、変更を実行し、読み戻しを行い、最後にゾーンとエイリアスが開始時の状態に戻っていることを確認します。自身で何かを承認することはありません。
使い捨てリソースでの実環境評価と、慎重なポリシーの確認を終えてから、writes: "enabled" を使用してください。その場合も、書き込み可能なリソース許可、操作許可、計画ごとの独立した承認が必要です。認証情報、購入、任意の API 実行、VPS の再インストール、その他の未確認操作は引き続き利用できません。
既存の MCP の再利用と互換性
元の読み取り専用 3 ツール版は、ポリシーファイルなしで引き続き利用できます。INFOMANIAK_API_TOKEN、INFOMANIAK_MCP_SERVER_PATH(絶対パスで指定した、確認済みの dist/server.js)、および INFOMANIAK_MCP_SHA256 が必要です。ブラウザー認証を無効にし、GET のみを許可するフェッチガードを適用してバックエンドを実行します。
制御版では、次の設定を使って、トークンのみで VPS を読み取るためのアダプターを再利用できます。
{
"backend": {
"path": "/absolute/path/to/infomaniak-mcp-agent/dist/server.js",
"sha256": "SHA256_OF_REVIEWED_ENTRY_FILE"
}
}
これはポリシーの一部であり、完全な設定ではありません。チェックサムが対象とするのはエントリーファイルであり、依存関係のグラフではありません。監査済みのビルドを使用してください。ガードは、信頼できない実行可能ファイルに対する OS サンドボックスではありません。確認済みの VPS 補助機能が必要です。先行する検証では upstream npm 0.15.2 が 404 を返したため、動作する upstream パッケージのインストールコマンドがあるとは想定していません。
Claude Code の場合:
claude plugin validate .
claude --plugin-dir .
制御版では任意のプライベートポリシーファイルを選択するか、元の版では確認済みのバックエンドパス/チェックサムを指定してください。マニフェストの検証とネイティブクライアントの初期設定は別の工程であり、後者はエンドツーエンドでの動作が確認されていません。
関連プロジェクト
このプラグインは、既存の2つのオープンソースプロジェクトへの貢献から生まれ、そこで得た知見を再利用しています。
- peaktwilight/infomaniak-cli:Infomaniak API 用の Python CLI です。公開中のプルリクエストでは、DNS 伝播と同期の修正、DNS 監査の修正、ホスティングの検出、読み取り専用モード、
--dry-runプレビュー、メールボックスコマンドを追加しています。 - Mogacode-ma/infomaniak-mcp-agent:2段階の確認機能を備えた TypeScript 製 MCP サーバーです。公開中のプルリクエストでは、DNS のエクスポート/差分/伝播ツール、トークンのみで利用できる VPS インベントリとファイアウォール情報の読み取り、テスト、読み取り専用モード、エイリアスの削除、メールボックスの転送を追加しています。
スクリプト作成には CLI、エージェントが操作する幅広いツール群には MCP サーバー、書き込みのたびに個別の権限付与と別の人間による承認が必要な場合にはこのプラグインを使用してください。
Infomaniak でのオプションのホスティング
認証済みの Streamable HTTP 版では、アプリケーションごとに分けたクライアント認証情報と人間による承認用の認証情報に加え、ユーザーごとに分離されたプロバイダートークンを使用します。node dist/server.js --config /private/access.local.json --http を実行してください。
固定された Docker イメージのレシピ、Caddy HTTPS プロキシ、プライベートな状態データ、バックアップおよび再起動の手順については、Infomaniak VPS のデプロイガイドを参照してください。このリポジトリをビルドしても、何もデプロイされません。OAuth のみのクライアント登録と、一般公開のマネージドサービスは今後の課題です。
配布用バンドルのビルド
npm run package
これにより、コンパイル済みコード、カタログ、スキル、プラグインマニフェストを含む artifacts/infomaniak-ai-0.2.0.tgz が作成されます。ホワイトリストによって、テスト、ローカルポリシー、認証情報、操作データベースは除外されます。レジストリへの誤公開を防ぐため、開発中はパッケージを非公開としており、ローカルのバンドルはインストールできます。公開レジストリやマーケットプレイスへのリリースは行われていません。
別のローカル環境にインストールしてバンドルをテストするには、次の手順を実行します。
npm install --prefix "$HOME/.local/share/infomaniak-ai" \
--ignore-scripts ./artifacts/infomaniak-ai-0.2.0.tgz
MCP クライアントのコマンドには node を設定し、引数にはインストール先の絶対パス node_modules/infomaniak-ai/dist/server.js を指定してください。また、プロバイダートークンをシークレット環境変数として設定してください。ポリシーやバックエンドの設定がない場合、4つのツールを備えた検出版が起動します。python3 scripts/bundle-smoke.py を実行すると、偽の認証情報を使い、使い捨てのクリーンな Node コンテナーでバンドルを確認できます。
開発
Infomaniak の操作、クライアントとの互換性、ドキュメント、リグレッションテストへの貢献を歓迎します。CONTRIBUTING.md を読み、大規模な変更については Issue を作成するか、小規模なプルリクエストを送信してください。脆弱性は SECURITY.md の手順に従って非公開で報告してください。
npm run typecheck
npm test
python3 -m unittest discover -s tests -p 'test_*.py'
npm run format:check
フィクスチャテストでは偽の認証情報と API を使用します。コンテナーのスモークテストではネットワークを無効にし、使い捨ての状態ディレクトリを使用します。実環境で得られた証拠はこのリポジトリの外部に保管します。誤公開を防ぐため、このパッケージは非公開です。
MIT ライセンスです。プロバイダーアダプターの修正は、引き続き個別の上流への貢献として行います。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。