tunnelto.devtunnel → dev

Public URLs for localhost

Give your agent the power of creating secure HTTPS URLs for your apps running on localhost.

Claude Code — ~/acme
>

Set it up in 60 seconds

  1. 1
    Add the tunnelto MCP server to your agent
    Add the server
    $claude mcp add --transport http --scope user tunnelto https://tunnelto.dev/mcp
    Sign in: inside Claude Code, run /mcp, pick tunnelto, then Authenticate
    >/mcp
    Other agents and one-click installs →
  2. 2
    Tell your agent
    >Set up tunnelto for me by following https://tunnelto.dev/AGENTS.md, then test it with a demo app
    It signs you in (creating your account), installs the CLI, and needs permission to run it on the machine where your app runs.
  3. ✓
    What you should seeYour agent opens a tunnel to a small demo page and hands back a public URL like https://bold-otter-42.tunn.dev. From then on, just ask: “Give me a public URL for my app on port 3000”

Open sourceStar7.1kCLI releases

Why use a tunnel?

More building. Less "deploy & wait."

  • Remote dev serversOpen a devbox port in your laptop's browser.
  • OAuth & HTTPSReal HTTPS for OAuth callbacks and secure cookies.
  • DemosShare what's on your laptop with a link.
  • WebhooksReceive, inspect, and replay webhooks on localhost.
  • Mobile appsPoint your phone at your local API.
  • HTTPS on every URL
  • WebSockets
  • Local request inspector
  • Forward to any host or port

Built for agents

Connect the tunnelto MCP server and ask your agent for a public URL. It checks your plan, installs and signs in the CLI, opens the tunnel, and hands back the link. You sign in once in the browser, with no access key to copy and paste.

  • One sign-inOAuth in the browser; the agent stores the CLI key for you.
  • Account awareSees your plan, trial minutes, and reserved subdomains.
  • SubdomainsReserves and releases custom subdomains on request.
  • Works withClaude Code, Codex, Cursor, VS Code, Grok, and any MCP client over HTTP.
agent
> expose port 3000 with tunnelto
● tunnelto.get_account()
└ free trial · 10 min left
● tunnelto.start_tunnel(port: 3000)
└ returned the command to run
● Bash(tunnelto --port 3000 &)
└ Public tunnel URL: https://bold-otter-42.tunn.dev
● tunnelto.list_tunnels(active_only: true)
└ 1 tunnel connected
The tunnel is up: https://bold-otter-42.tunn.dev → localhost:3000

Set it up with the steps above, or install the skill instead: npx skills add tunneltodev/tunnelto

Pricing

Start free. Upgrade for custom subdomains like <yourapp>.tunn.dev.

Free
$0no card needed
Try it on a generated subdomain.
  • 10-minute free trial
  • Random <name>.tunn.dev subdomain
  • HTTPS and WebSockets
  • Local request inspector
ProTeams
$4per user / month
Stable URLs for you and your team.
  • No time limit
  • Reserve up to 20 custom subdomains
  • Up to 5 active tunnels per user
  • Invite teammates, each with their own key

Higher volume? Contact us.