Back to Directory/Developer Tools

io.github.asadullokhn/teztun

Manage TezTun tunnels, subdomains, and service tokens from any MCP-compatible AI client.

Developer ToolsJavaScriptv1.0.1

@asadullokhn/teztun-mcp

Official TezTun MCP server, as a single-install npm package for Claude Desktop / Claude Code / Cursor / Zed / Windsurf / any Model Context Protocol client.

Lets your AI editor manage your TezTun infrastructure through chat:

  • "What's my current webhook URL?" → list_tunnels
  • "Reserve a subdomain called demo" → reserve_subdomain
  • "Mint a service token for prod-docker, never expires" → create_service_token
  • "Revoke the staging-ci token" → revoke_service_token

Install & configure

You don't install this manually — MCP clients run it via npx. Pick your client:

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "teztun": {
      "command": "npx",
      "args": ["-y", "@asadullokhn/teztun-mcp"],
      "env": { "TEZTUN_TOKEN": "tzt_your-token-here" }
    }
  }
}

Claude Code

claude mcp add --scope user teztun \
  -e TEZTUN_TOKEN=tzt_your-token-here \
  -- npx -y @asadullokhn/teztun-mcp

Cursor / Zed / Windsurf

Each editor has an MCP config file (~/.cursor/mcp.json, etc.). The block shape is the same as the Claude Desktop example above.

Get a service token

Sign up at app.teztun.uz, then mint a service token. On the Max plan ($10/year) tokens never expire — recommended for AI editor use.

How the package works

This package is a thin launcher. It tries, in order:

  1. If the TezTun CLI (teztun) is installed, it runs teztun mcp.
  2. If Docker is available, it runs docker run --rm -i -e TEZTUN_TOKEN asadullokhn/teztun:latest mcp.
  3. Otherwise it errors with install instructions.

No bundled binaries, no postinstall side effects. The MCP server itself is the Go binary from teztun.uz/download, or the asadullokhn/teztun image on Docker Hub.

Exposed tools

ToolWhat it does
get_accountCurrent user (plan, status)
list_tunnelsActive tunnels with their public URLs
list_subdomainsReserved subdomains
reserve_subdomain(name)Reserve a new subdomain (plan-gated)
release_subdomain(id)Release a reserved subdomain (destructive)
list_custom_domainsCustom domains on the Max plan
list_service_tokensService tokens the user has minted
create_service_token(name, expiry_seconds?, expire_never?)Mint a token
revoke_service_token(id)Revoke a service token (destructive)

Links

License

MIT. Launcher only — the MCP server binary it spawns is the official TezTun client.

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
npx -y @asadullokhn/teztun-mcp

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-asadullokhn-teztun": {
      "command": "npx",
      "args": [
        "-y",
        "@asadullokhn/teztun-mcp"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

@asadullokhn/teztun-mcpnpm

Compatible MCP Clients

io.github.asadullokhn/teztun works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More