gitwtfhub

wtf is tailscale-mullvad-toggle?

0xsero/tailscale-mullvad-toggle — explained in plain English

Analysis updated 2026-05-18

31PythonAudience · developerComplexity · 2/5Setup · easy

TL;DR

A command line tool and macOS menu bar app for turning a Mullvad VPN exit node on or off inside Tailscale without any cloud account.

Mindmap

mindmap
  root((ts-mullvad))
    What it does
      Toggle exit node
      Country and city pick
      Status checks
    Tech stack
      Python
      Tailscale CLI
      SwiftBar
    Use cases
      Quick VPN switch
      Menu bar control
      Exit verification
    Audience
      Tailscale users
      Privacy focused users

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Quickly switch your Tailscale exit node to a specific country from the terminal

REASON 2

Toggle Mullvad VPN routing from a macOS menu bar icon

REASON 3

Verify your public exit point using Mullvad's checker

REASON 4

Check whether your tailnet has the Mullvad add on enabled

What's in the stack?

PythonTailscaleSwiftBarBash

How it stacks up

0xsero/tailscale-mullvad-toggleafspies/clawdmojiaka-kika/hig-mcp
Stars313131
LanguagePythonPythonPython
Setup difficultyeasyeasyeasy
Complexity2/52/52/5
Audiencedevelopergeneraldeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · easy Time to first run · 5min

Requires an existing Tailscale account with the Mullvad exit node add on already enabled.

Wtf does this do

This project is a small command line tool and macOS menu bar app that makes it easy to turn a Mullvad VPN exit node on or off inside Tailscale, a private networking service. Normally switching exit nodes means going through several manual steps, and this tool turns that into a single command or a click in the menu bar. The tool does not run its own server or require a cloud account. It works entirely by talking to your local Tailscale installation and reading the list of available exit nodes. When you run a command like turning the exit node on for a specific country or city, it looks at your Tailscale status, finds the Mullvad exit nodes that are currently online, picks the best match for your preference, and applies that setting using Tailscale's own command line tool. A companion feature checks whether your Tailscale network actually has the Mullvad add on enabled yet. If it is not, the tool points you to the right setup page instead of failing silently. There is also a way to verify your public network exit point using Mullvad's own connection checker. To use it, you need Tailscale already installed and signed in, plus a Tailscale network with the Mullvad VPN add on turned on. The menu bar interface additionally requires a macOS tool called SwiftBar. Installation is a single shell command that downloads and sets up the tool, after which you can run commands such as listing available countries, turning the exit node on for a specific country, or checking its current status. The README does not state a specific license for the project. It explicitly avoids collecting or transmitting any of your data beyond what is needed to reach Tailscale and Mullvad's own services.

Yoink these prompts

Prompt 1
Show me how to install ts-mullvad and turn on a Mullvad exit node in a specific country.
Prompt 2
Help me set up the SwiftBar menu bar plugin for tailscale-mullvad-toggle.
Prompt 3
Explain how ts-mullvad picks the best online exit node for my city preference.
Prompt 4
Walk me through troubleshooting ts-mullvad doctor when no exit nodes are visible.

Frequently asked questions

wtf is tailscale-mullvad-toggle?

A command line tool and macOS menu bar app for turning a Mullvad VPN exit node on or off inside Tailscale without any cloud account.

What language is tailscale-mullvad-toggle written in?

Mainly Python. The stack also includes Python, Tailscale, SwiftBar.

How hard is tailscale-mullvad-toggle to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is tailscale-mullvad-toggle for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.