Portveil について
Portveilは、Portveilアカウントのデバイスを確認・操作するMCPサーバーです。VPNロケーションの変更、定期ローテーション、トンネル再接続に対応し、移動先の出口サーバーによる確認後に成功を報告します。
主な機能
- 01デバイスの保護状態を確認
- 02利用可能なVPNロケーションの表示
- 03デバイスのロケーション変更
- 04ロケーションの自動ローテーション設定
- 05トンネルの再接続と切断
- 06デバイスとアカウント活動の管理
活用シーン
- 01VPNで保護されていないデバイスの確認
- 02デバイスを別の国へ移動
- 03指定したロケーション間でデバイスをローテーション
- 04最近のアカウント内デバイス変更の確認
MCP 対応
MCPクライアントにPortveilのアカウント、デバイス、ロケーション、活動に関するツールを公開します。スコープ付きAPIトークンでread、control、adminの操作を制限します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y portveil-mcpPORTVEIL_ACCOUNT_IDYour Portveil account ID (acct_…), shown in the dashboardPORTVEIL_TOKENシークレットA Portveil API token from the dashboard; control scope to move devices, read to only lookPORTVEIL_APIAPI base URL (default https://api.portveil.com)ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Portveil MCP サーバー
AI アシスタントから Portveil アカウントのデバイスを確認し、VPN の接続先を切り替えられるようにします。
「スクレイパー用のマシンをフィンランドに移動して。」 「すべてのエージェントの接続先を新しい場所に切り替えて。」 「現在保護されていないデバイスはどれですか?」 「スクレイパーを15分ごとに米国とフィンランドの間で切り替えて。」
移動は検証されます。ツールは、デバイスの切り替えが完了し、かつ新しい場所の出口サーバーがそのデバイスを認識した後にのみ成功を報告します。
ツール
| ツール | 機能 | 必要な権限 |
|---|---|---|
list_devices | すべてのデバイスの情報を表示します。保護の有無、出口の場所、リアルタイムの速度(↓/↑ Mbps)、リモートコントロールのオン/オフを確認できます | read |
list_locations | 移動先として選べる場所を表示します | read |
get_device | 1台のデバイスの現在の状態を表示します。リアルタイムの速度とローテーションの有無も確認できます | read |
get_account | プランと使用中のデバイス数を表示します | read |
list_activity | 最近の移動、再接続、変更、および操作に使用されたトークンを表示します | read |
move_device | デバイスを国または都市に移動します(「Finland」、「US」、「Helsinki」など) | control |
rotate_device | デバイスを次の場所に一度移動します | control |
start_rotation | デバイスを5~10080分ごとに自動で移動します。選択した場所の間でのローテーションも指定できます。スケジュールはPortveilが実行するため、アシスタントを終了できます | control |
stop_rotation | スケジュールされたローテーションを停止します | control |
reconnect_device | デバイスのトンネルを再接続します | control |
disconnect_device | デバイスのVPNをオフにします(破壊的操作としてフラグ付けされています。適切に動作するアシスタントが、最初に確認するためのヒントです) | control |
add_device | デバイスを追加します。スマートフォンとノートPC(WireGuardアプリ)の場合は、デバイスを作成してトンネルファイルをローカルに保存します。キーがチャットに表示されることはありません。Linuxサーバーとエージェントマシンの場合は、そのマシンで実行する正確なコマンドを提示します。マシンが独自のキーを作成して登録します | admin(スマートフォン/ノートPC) |
update_device | デバイスの名前を変更し、リモートコントロールのオン/オフを切り替えます | admin |
remove_device | デバイスを完全に削除します(破壊的操作としてフラグ付けされています) | admin |
0.3.0では、ツール名を動詞_名詞のパターンに統一しました。device_status → get_device、account_info → get_account、recent_activity → list_activity、set_rotation → start_rotation。
デバイス名は大まかに指定できます(「scraper」で「Scraper box」が見つかります)。名前が曖昧な場合は、推測せず候補を返します。
セットアップ
まだアカウントをお持ちでない場合は、カード不要でメールアドレスだけで無料で始められます。
- PortveilダッシュボードでAPIトークンを作成します。アシスタントがデバイスを移動できるようにするにはcontrolスコープを、情報の閲覧だけを許可するにはreadスコープを選択します。アカウントキーは渡さないでください。
- アカウントID(
acct_…)を控えます。 - アシスタントにサーバーを追加します。
Claude Code
claude mcp add portveil -e PORTVEIL_ACCOUNT_ID=acct_… -e PORTVEIL_TOKEN=clt_… -- npx -y portveil-mcp
Claude Desktop(claude_desktop_config.json)、Cursor(.cursor/mcp.json)、およびその他の多くのクライアント:
{
"mcpServers": {
"portveil": {
"command": "npx",
"args": ["-y", "portveil-mcp"],
"env": { "PORTVEIL_ACCOUNT_ID": "acct_…", "PORTVEIL_TOKEN": "clt_…" }
}
}
}
Hermes Agent:Hermesは14日未満のnpmパッケージしかインストールしないため、専用フォルダーにインストールし、nodeで実行します。
cd ~ && npm install --prefix ~/.hermes/mcp-servers/portveil [email protected]
echo 'PORTVEIL_TOKEN=clt_…' >> ~/.hermes/.env
hermes mcp add portveil --command node \
--env PORTVEIL_ACCOUNT_ID=acct_… 'PORTVEIL_TOKEN=${PORTVEIL_TOKEN}' \
--args ~/.hermes/mcp-servers/portveil/node_modules/portveil-mcp/dist/index.js
Hermesが適切に利用できるようにするには(いつ操作するか、何を先に確認するか、デバイスを追加する方法など)、ClawHubからPortveilスキルもインストールしてください。
hermes skills install roybogs/portveil
(出典:skills/portveil/SKILL.md。)
デバイスでは、リモートコントロールをオンにしてPortveilアプリまたはPortveilエージェントを実行している必要があります。WireGuardアプリのみを使用しているデバイスは表示されますが、移動できません。
セキュリティ
- スコープを限定したAPIトークンを使用してください。実行したすべての操作は、操作に使用されたトークンとともにアカウントのアクティビティログに記録されます。ダッシュボードからいつでもトークンを取り消せます。
- サーバーは
https://api.portveil.comとのみ通信します(PORTVEIL_APIで変更できます)。データは保存しません。
開発
npm install
npm test # builds, then runs the tests against a fake Portveil API
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。