Development
13 min read
45 views

AIエージェントとトンネル自動化:Pinggy MCPサーバーの内部

IT
InstaTunnel Team
Published by the InstaTunnel team | Editorial policy
AIエージェントとトンネル自動化:Pinggy MCPサーバーの内部

Quick answer

AI Agents & Tunnel Automation: MCP Servers, Pinggy & Claude: quick comparison answer

Choose the tunnel tool based on the network model: public HTTPS URLs for webhooks and demos, private mesh access for internal apps, and managed infrastructure when policy controls matter most.

Which tunnel tool is best for public webhook testing?

Use a public HTTPS localhost tunnel with stable URLs. InstaTunnel focuses on webhook testing, demos, OAuth callbacks, and MCP endpoint workflows.

When should I choose a private network tool instead?

Choose a private mesh or Zero Trust tool when every user and service should stay inside a controlled private network.

開発者がClaude Code、Cursor、Claude Desktop、または Windsurf を主要インターフェースとして使用している場合、これらのエージェントにコード生成以上のことをさせたいと考えることが増えています。例えば、ローカル開発サーバーの公開URLを立ち上げるなどです。Pinggyは、専用のエージェントツールを備えた最初期のトンネリングベンダーの一つです: Agent Skill とスタンドアロンの MCPサーバーの両方を、アーリーアクセスの実験的ラベルで公開しています。本記事では、それぞれの機能、正しいインストール方法(クライアント間で設定パスが予想以上に異なる点も含む)、そしてエージェントが自らトンネルを開くことができるようになったときのセキュリティの現状について解説します。

手動トンネリングとその課題

基本的なワークフローは長年変わっていません:ssh -p 443 -R0:localhost:8000 free.pinggy.io(または ngrok、Cloudflare Tunnel などの同等コマンド)を実行し、結果のURLをコピーして必要な場所に貼り付ける — webhookダッシュボード、Slackメッセージ、.envファイルなどです。AIコーディングエージェントが既にターミナルを操作している場合、これはエージェントのコンテキストとあなたの間のもう一つの手動の引き継ぎとなります。

Anthropicが2024年末にリリースしたModel Context Protocol(MCP)は、エージェントがCLIに出力をパースさせる代わりに外部ツールを呼び出す標準化された方法を提供します。MCPの設定は3つの部分から成ります:hosts(エージェントアプリケーション — Claude Code、Cursor、Claude Desktop、Windsurf)、clients(各ホストが維持するプロトコル接続)、servers(特定のツールやリソース、プロンプトを公開するプロセス)。トンネルクライアントを MCPサーバーにラップすることで、エージェントは start_tunnel のようなツールを直接呼び出し、構造化されたデータ(公開URL、トンネルID、状態)を受け取り、シェルコマンドの構築やパースを行う必要がなくなります。

SkillとMCPサーバーの違い

Pinggyは二つの別個のエージェントツールを提供しています。これらの違いを正確に理解することが重要です。なぜなら、ベンダーのドキュメントは次のようになっているからです:

Skill MCPサーバー
何か パッケージ化されたリファレンスドキュメント(SSH、CLI、SDK、すべてのフラグとトンネルタイプ) トンネル操作を呼び出し可能なツールとして公開する実行中のプロセス
エージェントの役割 ドキュメントを読み、通常のターミナルアクセスでコマンドを実行 直接ツールを呼び出し、コマンド構築不要
インストール方法 npx skills add https://pinggy.io uvxを用いたクライアントごとの設定

Pinggyの公式ガイドでは、エージェントにツール理解させたい場合はSkillから始め、トンネルを自律的に操作させたい場合はMCPサーバーを追加することを推奨しています。両者は独立してインストール可能で、Skillのインストールはエージェント間で共通です — CLIはクライアントを検知し、~/.claude/skills/pinggy/(Claude Codeの場合)にスキルファイルを書き込みます。

この後半部分は、エージェントが”チャットを離れずにトンネルを作る”動作を可能にするMCPサーバーに焦点を当てています。

Pinggy MCPサーバーが公開する内容

このサーバーはPythonパッケージ(Python 3.10+とuvが必要)で、github.com/Pinggy-io/pinggy_mcpに公開されています。READMEには明示的に実験的と記載されており、「早期フィードバック用、粗い部分もある」とのことです。導入前に念頭に置くべきポイントです。

インストール後、以下の13のツールを4つのグループに分けて登録します:

認証 - authenticate — OAuth2デバイスフローを開始し、ログインURLを返す - check_authentication — ログイン状態、アカウントメール、トークン有効期限 - get_profile — Pinggyアカウントプロフィール取得 - logout — セッションをクリア

トンネル - start_tunnel — HTTP、TCP、TLS、UDP(IP許可リスト、ヘッダー書き換え、Webデバッガ付き) - stop_tunnellist_tunnelsget_tunnel_info

ファイル共有 - share_directory — WebDAV経由でローカルフォルダを公開URLで共有 - stop_file_sharelist_file_shares

トークン管理 - add_tokenremove_tokenlist_tokensupdate_token — 特定のPinggyトークンをポートに紐付け

これらは直接呼び出すのではなく、「ポート3000を公開」「アクティブなトンネル一覧」「特定IPからのみ許可」などの自然言語でリクエストし、エージェントが適切なツールを選びます。最初の説明と一致しており、HTTP/TCP/TLS/UDPトンネルやWebDAVによるディレクトリ共有をサポートしています。

認証:この部分は正しい

PinggyがOAuth 2.0デバイス認証(RFC 8628)を使用しているのは正しいです。「Pinggyにログイン」コマンドはauthenticateを呼び出し、Pinggyのバックエンドに接続してURLを返します。ブラウザで承認し、MCPサーバーがバックグラウンドでポーリングし、セッションを保存・自動更新します。セッション情報は~/.config/pinggy-mcp/config.json(Linux/macOS)または%LOCALAPPDATA%\pinggy-mcp\config.json(Windows)に保存され、Unix系ではchmod 600を推奨します。保存されたトークンは任意で、OAuthがカバーしない特定のサブドメインやカスタムドメインのバインドに必要です。

インストール方法 — クライアントごとに修正

元の説明には誤りがありました。設定パスの間違いは、「動作する」か「ツールリストに表示されない」かの差です。CursorとVS Codeは異なる設定場所とJSONスキーマ(mcpServers vs. servers)を使用しており、これらを混同すると、意図したクライアントが設定を読み取れません。

Claude Code — 最も簡単な方法。1行のCLIコマンドです:

claude mcp add pinggy-mcp -- uvx --from git+https://github.com/Pinggy-io/pinggy_mcp.git pinggy-mcp

claude mcp listで確認できます。

Claude Desktop — 設定ファイルを直接編集: - macOS: ~/Library/Application Support/Claude/claude_desktop_config.json - Windows: %APPDATA%\Claude\claude_desktop_config.json - Linux: ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "pinggy-mcp": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/Pinggy-io/pinggy_mcp.git", "pinggy-mcp"]
    }
}

アプリを再起動し、pinggyがMCPインジケーターに表示されるはずです。

Cursor — VS Codeとは異なるパスです: - グローバル: ~/.cursor/mcp.json - プロジェクトごと: .cursor/mcp.json(プロジェクトルートに配置)

JSONの形状は上記のClaude Desktopと同じです。

VS Code — パスとスキーマが異なります(serversと`

Continue from this article into the most relevant product guides and workflows.

Related Topics

#Pinggy AI skill, MCP server tunneling, Claude Code localhost exposure, Cursor webhook testing, AI coding agents, AI tunnel automation, Windsurf AI tunnel, expose localhost Claude Code, Cursor AI localhost, MCP server local tunnel, Pinggy tunnel skill, agentic coding CLI, automate reverse proxy, AI SSH tunneling, Hermes agent skills, AI webhook testing, webhook receiver Claude Code, Claude Code UI, open source tunnel, Pinggy alternative ngrok, AI agent terminal access, AI developer tools 2026, SSH reverse tunnel AI, Model Context Protocol server, Claude API skills, Codex CLI tunneling, Github Copilot local tunnel, natural language CLI, AI coding assistants 2026, zero install tunnel, local development environment, AI workflow automation, expose MCP server, webhook callback testing, Stripe webhook Cursor, AI local dev server, Pinggy free tier, test webhooks locally Cursor, Windsurf webhook testing, AI powered tunneling, developer productivity tools, terminal automation AI, Model Context Protocol tunneling, local API gateway AI, Claude Code demo sharing, local server exposure, MCP webhook testing, AI proxy manager, natural language port forwarding, intelligent tunneling tools, automate local network AI, smart tunneling agent, terminal UI automation

Keep building with InstaTunnel

Read the docs for implementation details or compare plans before you ship.

Share this article

More InstaTunnel Insights

Discover more tutorials, tips, and updates to help you build better with localhost tunneling.

Browse All Articles