# Publishing mcp-browser with ngrok The `scripts/run_mcp_ngrok.sh` helper launches `mcp-browser` in streamable-http mode and exposes it through an ngrok tunnel. By default it uses the `builtin-only` server profile so only the minimal proxy tools are visible. ```bash ./scripts/run_mcp_ngrok.sh \ --allow-origin https://platform.openai.com \ --ngrok-basic-auth "user:pass" ``` Key behaviours: - Picks a free local port and starts `mcp-browser --mode streamable-http` with `--http-path /mcp`. - Starts `ngrok http` pointing at that port and prints the public URL once the tunnel is ready. - Writes logs to temporary files (paths shown on startup). - Cleans up both processes when interrupted. Useful options: - `--server chrome` – publish a different server entry from your config. - `--config ~/.claude/mcp-browser/config.yaml` – point at a custom config file. - `--ngrok-region eu` or `--ngrok-domain your-name.ngrok.app` – choose a region or reserved domain. - `--ngrok-basic-auth user:pass` – require HTTP basic auth. Strongly recommended if the tunnel is exposed to the public. Additional `mcp-browser` arguments can be passed after `--`, for example to connect to a streamable HTTP upstream: ```bash ./scripts/run_mcp_ngrok.sh -- \ --transport streamable-http \ --transport-url http://127.0.0.1:12306/mcp ``` The resulting public URL terminates at `/mcp`. Configure your MCP client (e.g. OpenAI’s MCP interface) with that URL and the optional basic auth credentials.