tunnels-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@tunnels-mcplist my active tunnels and show usage"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
tunnels-mcp
MCP server for tunnels.io.
It runs locally, holds one CLI token, and gives an assistant read access to the account. It can also open a tunnel.
Install
Download a binary for your platform from the releases page, or build it:
go install github.com/tunnels-io/tunnels-mcp/cmd/tunnels-mcp@v0.0.2Clients that take MCP bundles, such as Claude Desktop, can install
tunnels-mcp-<version>.mcpb from the same page. It asks for the token.
The server is listed in the MCP Registry as io.github.tunnels-io/tunnels-mcp.
Related MCP server: Sprinklr MCP Server
Token
Create one at tunnels.io/account/tokens. Tick the permissions you want.
Skipping a permission is not a broken tool. The server reads the token's permissions at startup and lists only the tools that work.
An older all-access token (*) works for everything except billing, domains
and cloud apps. Those three services refuse *, so the server does not list
their tools for such a token. Make a token on the page above to reach them.
TUNNELS_TOKEN required, starts tnl_
TUNNELS_API default https://tunnels.io
TUNNELS_CLI default "tunnels" on PATH
TUNNELS_INSPECT unset. The CLI inspector is off; set an address to enable it.A config file works too, at ~/.config/tunnels/mcp.json:
{ "token": "tnl_..." }The environment wins.
Client setup
{
"mcpServers": {
"tunnels": {
"command": "tunnels-mcp",
"env": { "TUNNELS_TOKEN": "tnl_..." }
}
}
}Tools
Tool | Permission |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| none |
| none |
Reads only, apart from the last two. Those shell out to the tunnels CLI, which
must be on PATH. No tool changes a plan, buys a domain or deploys anything.
start_tunnel takes http (the default, served as HTTPS on the public URL) or
tcp.
Token handling
The token goes to tunnels.io in a Bearer header, and to the CLI through the environment. Never a command line. Never a log. Never a tool result.
Error bodies are redacted before they are shown.
The server contacts tunnels.io and nothing else.
Build
make check
make buildNo dependencies.
Release
Push a tag such as v0.0.2. The release workflow builds six binaries and
the MCPB bundle, creates the GitHub release, and publishes server.json to the
MCP Registry. To build the same files locally, on macOS:
make release V=0.0.2Licence
MIT. See LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Read-only access to a Lumin project's logs, metrics, uptime checks, alerts and infrastructure.
Browse OfficeRnD members, bookings, memberships, invoices and tickets, with optional write access.
Read-only MCP access to sessions, funnels, campaigns, errors, live visitors, and anomalies.
Read-only access to your CodeMouse accounts, repositories, and AI pull-request reviews.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to interact with VAST Data clusters for monitoring, listing, and management operations. It provides both read-only and read-write modes for cluster and tenant administration tasks.Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants read-only access to Sprinklr data via MCP, allowing querying reports, searching cases, and calling Sprinklr API endpoints.8 npmISC

Alternative Payments MCPofficial
FlicenseNot gradedqualityAmaintenanceProvides AI assistants with read and safe-write access to Alternative Payments customers, invoices, payment requests, transactions, payouts, and webhooks without directly moving money.-- AlicenseNot gradedqualityBmaintenanceEnables AI coding agents to read your own Telegram account via MTProto, including listing chats, searching and reading message history, resolving chats, and downloading attachments, with sending available only when explicitly enabled.MIT