# rustunnel > rustunnel is an open-source, self-hosted tunnel server written in Rust — an ngrok alternative. Expose local HTTP, TCP, and UDP services to the internet through the managed cloud (rustunnel.com) or your own server. The same CLI client works against both. Every page below is also available as raw markdown by fetching the `.md` URL shown. The complete documentation in a single file: https://rustunnel.com/docs/llms-full.txt ## Getting started - [rustunnel docs — open-source, self-hosted tunnel server](https://rustunnel.com/docs/index.md): What rustunnel is, managed cloud vs self-hosted, and where to start. - [rustunnel Quickstart — expose localhost in three steps](https://rustunnel.com/docs/quickstart.md): Install the client, sign in with an API token, and expose your first local service over HTTPS. ## AI tools and agents - [Using rustunnel from an AI agent or LLM harness](https://rustunnel.com/docs/guides/agent-integration.md): Copy-paste MCP config for Claude Code, Claude Desktop, Codex, Cursor, Windsurf, Cline, and any custom MCP client, plus a programmatic JSON-RPC example. - [MCP Tunnel Server](https://rustunnel.com/docs/guides/mcp-server.md): rustunnel-mcp lets any MCP-compatible agent create, list, and close tunnels with six dedicated tools. - [Claude Code Tunnel Plugin — one-command MCP install](https://rustunnel.com/docs/guides/claude-plugin.md): Install the rustunnel Claude Code plugin in one command; tunnels are cleaned up automatically on session exit. ## Guides - [rustunnel CLI Client Guide — every flag, command, and config option](https://rustunnel.com/docs/guides/client-guide.md): Complete reference for the CLI client: installation, authentication, HTTP/TCP/UDP/P2P tunnel commands, region selection, config file format, and troubleshooting. - [Self-Host the rustunnel Tunnel Server on Ubuntu](https://rustunnel.com/docs/guides/self-hosting.md): Production-ready walkthrough for a Linux VPS with systemd, Let's Encrypt TLS, and PostgreSQL. - [Deploy rustunnel-server with Docker](https://rustunnel.com/docs/guides/docker-deployment.md): Local-development setup with a self-signed certificate and a production VPS deployment with real TLS. - [rustunnel Architecture — control plane, data plane, and yamux multiplexing](https://rustunnel.com/docs/guides/architecture.md): Control protocol (JSON over WebSocket), data plane (yamux multiplexed binary), Tokio concurrency model, and crate structure. ## Reference - [Tunnel Load Balancing with Multiple Backends and Health Checks](https://rustunnel.com/docs/reference/load-balancing.md): Run multiple backends behind one subdomain or TCP port with automatic health-based rotation. - [P2P Tunnels — direct peer-to-peer connections without an exit node](https://rustunnel.com/docs/reference/p2p-tunnels.md): NAT hole punching over QUIC, relay vs direct mode, NAT classification, and automatic fallback. - [UDP Tunnels in rustunnel](https://rustunnel.com/docs/reference/udp-tunnels.md): Forward datagrams to local UDP services — game servers, DNS resolvers, QUIC endpoints, VoIP. ## Contributing - [Contributing](https://rustunnel.com/docs/contribute.md): How to contribute to rustunnel — repo layout, dev setup, and PR conventions. ## Optional - [rustunnel.com](https://rustunnel.com/llms.txt): The product site index — landing page, pricing, and engineering blog. - [rustunnel on GitHub](https://github.com/joaoh82/rustunnel): Source code for the tunnel server, CLI client, and MCP server.