cd /news/developer-tools/show-hn-mcptunnels-ngrok-for-mcp-wit… · home topics developer-tools article
[ARTICLE · art-118225] src=terragohan.github.io ↗ pub= topic=developer-tools verified=true sentiment=· neutral

Show HN: Mcptunnels – ngrok for MCP with basic OAuth

Mcptunnels v1, an open-source tool from developer terragohan, exposes any stdio MCP server as a public Streamable HTTP URL with a single command, featuring built-in OAuth 2.1, no account requirement, and ephemeral 24-hour tunnels. The tool bridges MCP servers to HTTP for clients like ChatGPT, Claude, and Cursor, and supports self-hosted relays, with the hosted relay at tunnel.mcptunnels.xyz as the default.

read2 min views1 publishedSep 1, 2026

One command

mcptunnel expose -- <your MCP server> spawns any stdio MCP server, bridges it to Streamable HTTP, and prints a public URL. Nothing to deploy.

mcptunnel expose -- <your MCP server> spawns any stdio MCP server, bridges it to Streamable HTTP, and prints a public URL. Nothing to deploy.

No signup, no login, no config files. The hosted relay at tunnel.mcptunnels.xyz

is the default — or self-host your own tunneld

.

Public endpoints are gated behind a password the CLI generates. Clients like ChatGPT, Claude, and Cursor discover the OAuth flow automatically. `--no-auth`

for open URLs.

Tunnels live for 24 hours, then they’re gone. Ctrl-C deletes the tunnel server-side immediately — the URL and password die with your process.

Generic tunnels forward raw TCP/HTTP. mcptunnels is MCP-shaped.

mcptunnels ngrok cloudflared bore
Takes an MCP server command ❌ (ports only)
stdio → Streamable HTTP bridging
No account required ❌ (named tunnels)
Self-hostable relay
| Ephemeral-by-default URLs | ✅ (24h TTL) | ❌ | ❌ | ✅ |

If you already have an MCP server listening on a port with its own HTTP transport, a generic tunnel works fine. mcptunnels removes the stdio bridging step and everything around it.

Status: v1. The tunnel data plane is covered by end-to-end tests; compatibility with every major hosted MCP client is not yet exhaustively verified. Bug reports welcome on

GitHub. Where mcptunnels is headed. Roughly ordered; no dates — this is a spare-time project and priorities follow real user pain.

mcptunnel expose – <cmd>

→ public URL.–no-auth

for open URLs).tunneld : single binary + SQLite, ACME TLS, Docker or bare-metal.The MVP’s ephemerality is the feature that lets us skip accounts — and the first thing real users will outgrow.

/<you>/<name> once, keep it across restarts, reboots, and laptop sleeps.Today expose

bolts a public URL onto a single local process. The destination is making MCP servers easy to run and scale as Streamable HTTP services.

Per-tunnel OAuth 2.1 (discovery metadata, DCR, PKCE) shipped with the MVP. What comes later:

https://tunnel.mcptunnels.xyz

for convenience — it’s free and best-effort, and self-hosting
stays a first-class path.)[File an issue](https://github.com/terragohan/mcptunnels/issues) describing your use case —

especially if the MVP’s 24h model is the thing blocking you. That’s the signal that permanent tunnels should move up.

── more in #developer-tools 4 stories · sorted by recency
── more on @mcptunnels 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/show-hn-mcptunnels-n…] indexed:0 read:2min 2026-09-01 ·