GitDiagram
Architecture diagrams, explanations and Mermaid source for public GitHub repositories.
Tailscale device, route, DNS, key, user, and ACL management over MCP and CLI.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
3/4 Prüfungen bestanden · Läuft auf deinem Computer
Wir haben einen Teil der Befehle ausgeblendet
Per URL verbinden: die Server-Adresse hat bei der Prüfung nicht geantwortet
Nutze stattdessen „Auf dem eigenen Rechner“; die Schritte stehen unten
Zuerst: Welche KI nutzt du?
Wähle deine App, dann erscheinen die Schritte unten.
Klappt mit Claude, aber erst etwas vorbereiten
Du brauchst einen Schlüssel von Tailscale RMCP (auf der Seite des Anbieters erstellen) · Installiere zuerst Node.js auf deinem Computer (nur einmal) · Nur in der Claude-App für den Computer (Windows oder Mac), nicht im Web oder auf dem Handy
Kopiere diese Nachricht in einen Claude-Chat. Die KI prüft deinen Rechner, sagt dir, welche Datei sie ändert, und wartet jedes Mal auf dein OK.
Installiere bitte den MCP server Tailscale RMCP für Claude auf diesem Rechner, in dieser Reihenfolge: 1) Prüfe Node.js mit node -v. Fehlt es, sag mir, dass ich es von https://nodejs.org/en/download installiere; installiere es nicht selbst. 2) Verwende nur diese Konfiguration (von PopNx MCP geprüft): { "mcpServers": { "rtailscale": { "command": "npx", "args": [ "-y", "@dinglebear/rtailscale", "mcp" ], "env": { "TAILSCALE_API_KEY": "your-value" } } } } 3) Nenne mir den vollständigen Pfad der Datei, die du änderst, oder den Befehl, den du ausführst, und warte auf mein OK. 4) Lass bei TAILSCALE_API_KEY "your-value" stehen und sag mir, dass ich den echten Wert selbst in die Datei oder das Feld der App einfüge. Bitte mich nie, einen Schlüssel in den Chat zu schreiben. 5) Führe das Vereinbarte aus und prüfe, dass die Tools von Tailscale RMCP wirklich erscheinen.Diese Nachricht enthält keinen Schlüssel. Wird einer gebraucht, bittet dich die KI, ihn selbst in die Datei oder das Feld der App einzufügen.
Schon installiert? Zuerst prüfen · Öffne das Terminal, gib diesen Befehl ein und drücke Enter
node -vMac: ⌘ + Leertaste drücken, Terminal eingeben, Enter
Windows: Start öffnen, Windows PowerShell eingeben, dann Öffnen
Noch nicht installiert: Öffne die offizielle Download-Seite, wähle die LTS-Version und den Klick-Installer: .pkg auf dem Mac · .msi unter Windows. Doppelklicken und bis zum Ende durchklicken. Kein curl-Befehl nötig
Download-Seite von Node.js öffnen ↗
Danach das Terminal schließen, neu öffnen und denselben Befehl erneut ausführen. Es muss eine Versionsnummer erscheinen: node -v
Einmal installieren, gilt für alles, was Node.js braucht
Öffne die Seite des Anbieters, registriere dich und erstelle einen API-Schlüssel für den nächsten Schritt. Preise und Gratis-Tarife siehst du auf seiner Seite.
SettingsDeveloperEdit Config
{
"mcpServers": {
"rtailscale": {
"command": "npx",
"args": [
"-y",
"@dinglebear/rtailscale",
"mcp"
],
"env": {
"TAILSCALE_API_KEY": "your-value"
}
}
}
}Füge den Schlüssel nur in das Feld der App ein, nie in einen Chat und schick ihn niemandem
Nutze Tailscale RMCP und sag mir, was du für mich tun kannst; zeig mir dann eine Sache✓ Wenn Claude sagt, dass es Tailscale RMCP nutzt, oder ein Werkzeug von Tailscale RMCP in der Antwort zeigt, bist du verbunden
Der Befehl oben funktioniert auch ohne diese Werte. Füge sie nur hinzu, wenn du etwas ändern willst, nach der Beschreibung des Autors.
TAILSCALE_RMCP_VERSION Optionales Überschreiben des GitHub-Release-Tags für das heruntergeladene Tailscale-RMCP-Binary. TAILSCALE_RMCP_REPO Optionale Überschreibung von owner/repo bei GitHub für Downloads von Release-Assets. TAILSCALE_RMCP_RELEASE_BASE_URL Optional: Überschreibung der Basis-URL für Release-Downloads. RUST_LOG Tracing-Filter für Tailscale-RMCP-Protokolle. Beschreibungen automatisch übersetzt; Variablennamen bleiben wie im Original. Im Zweifel das Original ansehen.
Menünamen am 11. Nov. 2026 mit der Hilfe von Anthropic abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen
ChatGPT kann Tailscale RMCP noch nicht verbinden
Tailscale RMCP läuft auf deinem Computer, aber ChatGPT verbindet nur Server, die im Web laufen
A · Eine App nutzen, die Tailscale RMCP verbinden kann
B · Andere in Entwicklertools, die mit ChatGPT funktionieren
Aus den meistgenutzten derselben Kategorie, nur solche, die per Adresse ohne Schlüssel verbinden
Klappt mit Claude Code, aber erst etwas vorbereiten
Du brauchst einen Schlüssel von Tailscale RMCP (auf der Seite des Anbieters erstellen) · Installiere zuerst Node.js auf deinem Computer (nur einmal)
Kopiere diese Nachricht in einen Claude Code-Chat. Die KI prüft deinen Rechner, sagt dir, welche Datei sie ändert, und wartet jedes Mal auf dein OK.
Installiere bitte den MCP server Tailscale RMCP für Claude Code auf diesem Rechner, in dieser Reihenfolge: 1) Prüfe Node.js mit node -v. Fehlt es, sag mir, dass ich es von https://nodejs.org/en/download installiere; installiere es nicht selbst. 2) Verwende nur diese Konfiguration (von PopNx MCP geprüft): claude mcp add --scope user rtailscale --env TAILSCALE_API_KEY=your-value -- npx -y @dinglebear/rtailscale mcp 3) Nenne mir den vollständigen Pfad der Datei, die du änderst, oder den Befehl, den du ausführst, und warte auf mein OK. 4) Lass bei TAILSCALE_API_KEY "your-value" stehen und sag mir, dass ich den echten Wert selbst in die Datei oder das Feld der App einfüge. Bitte mich nie, einen Schlüssel in den Chat zu schreiben. 5) Führe das Vereinbarte aus und prüfe, dass die Tools von Tailscale RMCP wirklich erscheinen.Diese Nachricht enthält keinen Schlüssel. Wird einer gebraucht, bittet dich die KI, ihn selbst in die Datei oder das Feld der App einzufügen.
Schon installiert? Zuerst prüfen · Öffne das Terminal, gib diesen Befehl ein und drücke Enter
node -vMac: ⌘ + Leertaste drücken, Terminal eingeben, Enter
Windows: Start öffnen, Windows PowerShell eingeben, dann Öffnen
Noch nicht installiert: Öffne die offizielle Download-Seite, wähle die LTS-Version und den Klick-Installer: .pkg auf dem Mac · .msi unter Windows. Doppelklicken und bis zum Ende durchklicken. Kein curl-Befehl nötig
Download-Seite von Node.js öffnen ↗
Danach das Terminal schließen, neu öffnen und denselben Befehl erneut ausführen. Es muss eine Versionsnummer erscheinen: node -v
Einmal installieren, gilt für alles, was Node.js braucht
Öffne die Seite des Anbieters, registriere dich und erstelle einen API-Schlüssel für den nächsten Schritt. Preise und Gratis-Tarife siehst du auf seiner Seite.
Mac: Command+Leertaste drücken und Terminal tippen · Windows: PowerShell öffnen
claude mcp add --scope user rtailscale --env TAILSCALE_API_KEY=your-value -- npx -y @dinglebear/rtailscale mcpErsetze „your-value“ vor dem Enter durch deinen Schlüssel
Füge den Schlüssel nur in das Feld der App ein, nie in einen Chat und schick ihn niemandem
Tailscale RMCP sollte in der Liste als verbunden erscheinen
Nutze Tailscale RMCP und sag mir, was du für mich tun kannst; zeig mir dann eine Sache✓ Wenn Claude Code sagt, dass es Tailscale RMCP nutzt, oder ein Werkzeug von Tailscale RMCP in der Antwort zeigt, bist du verbunden
Der Befehl oben funktioniert auch ohne diese Werte. Füge sie nur hinzu, wenn du etwas ändern willst, nach der Beschreibung des Autors.
TAILSCALE_RMCP_VERSION Optionales Überschreiben des GitHub-Release-Tags für das heruntergeladene Tailscale-RMCP-Binary. TAILSCALE_RMCP_REPO Optionale Überschreibung von owner/repo bei GitHub für Downloads von Release-Assets. TAILSCALE_RMCP_RELEASE_BASE_URL Optional: Überschreibung der Basis-URL für Release-Downloads. RUST_LOG Tracing-Filter für Tailscale-RMCP-Protokolle. Beschreibungen automatisch übersetzt; Variablennamen bleiben wie im Original. Im Zweifel das Original ansehen.
Menünamen am 11. Nov. 2026 mit der Hilfe von Anthropic abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen
Klappt mit Cursor, aber erst etwas vorbereiten
Du brauchst einen Schlüssel von Tailscale RMCP (auf der Seite des Anbieters erstellen) · Installiere zuerst Node.js auf deinem Computer (nur einmal)
Kopiere diese Nachricht in einen Cursor-Chat. Die KI prüft deinen Rechner, sagt dir, welche Datei sie ändert, und wartet jedes Mal auf dein OK.
Installiere bitte den MCP server Tailscale RMCP für Cursor auf diesem Rechner, in dieser Reihenfolge: 1) Prüfe Node.js mit node -v. Fehlt es, sag mir, dass ich es von https://nodejs.org/en/download installiere; installiere es nicht selbst. 2) Verwende nur diese Konfiguration (von PopNx MCP geprüft): { "mcpServers": { "rtailscale": { "command": "npx", "args": [ "-y", "@dinglebear/rtailscale", "mcp" ], "env": { "TAILSCALE_API_KEY": "your-value" } } } } 3) Nenne mir den vollständigen Pfad der Datei, die du änderst, oder den Befehl, den du ausführst, und warte auf mein OK. 4) Lass bei TAILSCALE_API_KEY "your-value" stehen und sag mir, dass ich den echten Wert selbst in die Datei oder das Feld der App einfüge. Bitte mich nie, einen Schlüssel in den Chat zu schreiben. 5) Führe das Vereinbarte aus und prüfe, dass die Tools von Tailscale RMCP wirklich erscheinen.Diese Nachricht enthält keinen Schlüssel. Wird einer gebraucht, bittet dich die KI, ihn selbst in die Datei oder das Feld der App einzufügen.
Schon installiert? Zuerst prüfen · Öffne das Terminal, gib diesen Befehl ein und drücke Enter
node -vMac: ⌘ + Leertaste drücken, Terminal eingeben, Enter
Windows: Start öffnen, Windows PowerShell eingeben, dann Öffnen
Noch nicht installiert: Öffne die offizielle Download-Seite, wähle die LTS-Version und den Klick-Installer: .pkg auf dem Mac · .msi unter Windows. Doppelklicken und bis zum Ende durchklicken. Kein curl-Befehl nötig
Download-Seite von Node.js öffnen ↗
Danach das Terminal schließen, neu öffnen und denselben Befehl erneut ausführen. Es muss eine Versionsnummer erscheinen: node -v
Einmal installieren, gilt für alles, was Node.js braucht
Öffne die Seite des Anbieters, registriere dich und erstelle einen API-Schlüssel für den nächsten Schritt. Preise und Gratis-Tarife siehst du auf seiner Seite.
In den Einstellungen von Tailscale RMCP ist TAILSCALE_API_KEY leer; trag deinen Schlüssel ein und speichere
Füge den Schlüssel nur in das Feld der App ein, nie in einen Chat und schick ihn niemandem
Nutze Tailscale RMCP und sag mir, was du für mich tun kannst; zeig mir dann eine Sache✓ Wenn Cursor sagt, dass es Tailscale RMCP nutzt, oder ein Werkzeug von Tailscale RMCP in der Antwort zeigt, bist du verbunden
Der Befehl oben funktioniert auch ohne diese Werte. Füge sie nur hinzu, wenn du etwas ändern willst, nach der Beschreibung des Autors.
TAILSCALE_RMCP_VERSION Optionales Überschreiben des GitHub-Release-Tags für das heruntergeladene Tailscale-RMCP-Binary. TAILSCALE_RMCP_REPO Optionale Überschreibung von owner/repo bei GitHub für Downloads von Release-Assets. TAILSCALE_RMCP_RELEASE_BASE_URL Optional: Überschreibung der Basis-URL für Release-Downloads. RUST_LOG Tracing-Filter für Tailscale-RMCP-Protokolle. Beschreibungen automatisch übersetzt; Variablennamen bleiben wie im Original. Im Zweifel das Original ansehen.
Menünamen am 11. Nov. 2026 mit der Hilfe von Cursor abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen
Klappt mit VS Code, aber erst etwas vorbereiten
Du brauchst einen Schlüssel von Tailscale RMCP (auf der Seite des Anbieters erstellen) · Installiere zuerst Node.js auf deinem Computer (nur einmal)
Kopiere diese Nachricht in einen VS Code-Chat. Die KI prüft deinen Rechner, sagt dir, welche Datei sie ändert, und wartet jedes Mal auf dein OK.
Installiere bitte den MCP server Tailscale RMCP für VS Code auf diesem Rechner, in dieser Reihenfolge: 1) Prüfe Node.js mit node -v. Fehlt es, sag mir, dass ich es von https://nodejs.org/en/download installiere; installiere es nicht selbst. 2) Verwende nur diese Konfiguration (von PopNx MCP geprüft): { "servers": { "rtailscale": { "type": "stdio", "command": "npx", "args": [ "-y", "@dinglebear/rtailscale", "mcp" ], "env": { "TAILSCALE_API_KEY": "your-value" } } } } 3) Nenne mir den vollständigen Pfad der Datei, die du änderst, oder den Befehl, den du ausführst, und warte auf mein OK. 4) Lass bei TAILSCALE_API_KEY "your-value" stehen und sag mir, dass ich den echten Wert selbst in die Datei oder das Feld der App einfüge. Bitte mich nie, einen Schlüssel in den Chat zu schreiben. 5) Führe das Vereinbarte aus und prüfe, dass die Tools von Tailscale RMCP wirklich erscheinen.Diese Nachricht enthält keinen Schlüssel. Wird einer gebraucht, bittet dich die KI, ihn selbst in die Datei oder das Feld der App einzufügen.
Schon installiert? Zuerst prüfen · Öffne das Terminal, gib diesen Befehl ein und drücke Enter
node -vMac: ⌘ + Leertaste drücken, Terminal eingeben, Enter
Windows: Start öffnen, Windows PowerShell eingeben, dann Öffnen
Noch nicht installiert: Öffne die offizielle Download-Seite, wähle die LTS-Version und den Klick-Installer: .pkg auf dem Mac · .msi unter Windows. Doppelklicken und bis zum Ende durchklicken. Kein curl-Befehl nötig
Download-Seite von Node.js öffnen ↗
Danach das Terminal schließen, neu öffnen und denselben Befehl erneut ausführen. Es muss eine Versionsnummer erscheinen: node -v
Einmal installieren, gilt für alles, was Node.js braucht
Öffne die Seite des Anbieters, registriere dich und erstelle einen API-Schlüssel für den nächsten Schritt. Preise und Gratis-Tarife siehst du auf seiner Seite.
VS Code fragt nach einer Bestätigung; klicke Install
In den Einstellungen von Tailscale RMCP ist TAILSCALE_API_KEY leer; trag deinen Schlüssel ein und speichere
Füge den Schlüssel nur in das Feld der App ein, nie in einen Chat und schick ihn niemandem
Nutze Tailscale RMCP und sag mir, was du für mich tun kannst; zeig mir dann eine Sache✓ Wenn VS Code sagt, dass es Tailscale RMCP nutzt, oder ein Werkzeug von Tailscale RMCP in der Antwort zeigt, bist du verbunden
Der Befehl oben funktioniert auch ohne diese Werte. Füge sie nur hinzu, wenn du etwas ändern willst, nach der Beschreibung des Autors.
TAILSCALE_RMCP_VERSION Optionales Überschreiben des GitHub-Release-Tags für das heruntergeladene Tailscale-RMCP-Binary. TAILSCALE_RMCP_REPO Optionale Überschreibung von owner/repo bei GitHub für Downloads von Release-Assets. TAILSCALE_RMCP_RELEASE_BASE_URL Optional: Überschreibung der Basis-URL für Release-Downloads. RUST_LOG Tracing-Filter für Tailscale-RMCP-Protokolle. Beschreibungen automatisch übersetzt; Variablennamen bleiben wie im Original. Im Zweifel das Original ansehen.
Menünamen am 11. Nov. 2026 mit der Hilfe von VS Code abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen
Andere Apps mit MCP, etwa Windsurf, Zed oder Gemini CLI, fügen Server unterschiedlich hinzu. Sieh in der App-Liste nach
JSON-Einstellungen stehen unten unter „Für Entwickler“
Claude Code
claude mcp add --scope user rtailscale --env TAILSCALE_API_KEY=your-value -- npx -y @dinglebear/rtailscale mcpClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"rtailscale": {
"command": "npx",
"args": [
"-y",
"@dinglebear/rtailscale",
"mcp"
],
"env": {
"TAILSCALE_API_KEY": "your-value"
}
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"rtailscale": {
"command": "npx",
"args": [
"-y",
"@dinglebear/rtailscale",
"mcp"
],
"env": {
"TAILSCALE_API_KEY": "your-value"
}
}
}
}VS Code (mcp.json)
{
"servers": {
"rtailscale": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@dinglebear/rtailscale",
"mcp"
],
"env": {
"TAILSCALE_API_KEY": "your-value"
}
}
}
}TAILSCALE_API_KEY geheim erforderlich envTAILSCALE_RMCP_VERSION envTAILSCALE_RMCP_REPO envTAILSCALE_RMCP_RELEASE_BASE_URL envRUST_LOG envBeschreibungen automatisch übersetzt; Variablennamen bleiben wie im Original. Im Zweifel das Original ansehen.
Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
npm: @dinglebear/rtailscaleBasierend darauf, wie sich dieser Server verbindet, und auf der eigenen Doku jeder App, geprüft am 10. Nov. 2026.
Verbinden sich über das Internet in
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast
Laufen auf deinem Computer in
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
Der Server hat bei unserer letzten Prüfung nicht geantwortet, deshalb konnten wir seine Tools nicht lesen.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 16. Nov. 2026
Der Registry-Name wurde über die Domain dinglebear.ai bestätigt (die Registry prüft, wem die Domain gehört)
Code zuletzt geändert: vor 14 Tagen
Nutzt AGPL-3.0
Hat bei unserer Prüfung nicht innerhalb von 6 Sekunden geantwortet
Hat bei unserer Prüfung nicht innerhalb von 6 Sekunden geantwortet
Noch nicht geprüft; wir lesen die Tool-Liste, wenn wir den Endpunkt prüfen
Keine Einträge auf OSV.dev für @dinglebear/rtailscale@0.1.4
Prüft nur diese Paketversion, nicht alle Abhängigkeiten · geprüft 15. Nov. 2026
Fragen, Tipps teilen oder melden, dass etwas nicht geht. Sortiert nach „hilfreich“.
Noch keine Beiträge. Stell die erste Frage oder teile einen Tipp.
Beiträge hier stammen von Nutzern, nicht vom PopNx-Team.
Noch keine Bewertungen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 3 von 4 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Das musst du eintragen: Authorization, TAILSCALE_API_KEY
Beides geht: Installiere ihn auf deinem Computer oder verbinde dich mit der Cloud-Version.
Das GitHub-Repo wurde zuletzt vor 14 Tagen geändert, und die neueste Version (0.1.4) kam vor 3 Monaten in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Er verbindet sich per URL und funktioniert daher auch in Apps mit Remote-MCP, etwa ChatGPT im Web (volles MCP ab Business; Pro nur lesend).
In derselben Kategorie: GitDiagram, Appllama, Cloudflare MCP, Omnara, Repowise
Gleiche Kategorie, andere Entwickler, Befehle bereits geprüft. Offizielle zuerst, dann nach Sternen.
So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
Architecture diagrams, explanations and Mermaid source for public GitHub repositories.
Study screens, flows and paywalls from top-earning iOS apps, then build from what wins.
Cloudflare MCP servers
Deploy durable AI agents with Omnara, an open-source managed-agent platform.
Codebase intelligence for AI coding agents: graph, git history, docs, decisions, code health.
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
Tailscale device, route, DNS, key, user, and ACL management over MCP and CLI.
It exposes one MCP tool, tailscale, plus the rtailscale CLI. Agents can list devices, inspect routes, read API keys, ACL policy, DNS settings, and users, authorize devices, and delete devices when the destructive gate is explicitly enabled.
30-second path: set TAILSCALE_API_KEY, then run npx -y @dinglebear/rtailscale devices --json -> start loopback HTTP with TAILSCALE_MCP_HOST=127.0.0.1 npx -y @dinglebear/rtailscale serve -> call tools/call with {"action":"devices"}.
Status: operational RMCP upstream-client server. Write-capable for device authorization; destructive device deletion requires both server opt-in and caller confirmation. HTTP MCP supports loopback dev mode, static bearer tokens, and Google OAuth through lab-auth.
Not for: replacing the Tailscale admin console, bypassing Tailscale account permissions, operating multiple unrelated tailnets from one trust boundary, storing API keys for callers, arbitrary WireGuard control, or passing Tailscale API keys through MCP tool arguments.
| Surface | This repo |
|---|---|
| Repository | tailscale-rmcp |
| Rust crate | tailscale-rmcp |
| Binary / CLI | rtailscale |
| npm package | @dinglebear/rtailscale |
| npm binary aliases | tailscale-rmcp, rtailscale |
| MCP tool | tailscale |
| Config home | ~/.tailscale-mcp on hosts, /data in containers |
| Env prefixes | TAILSCALE_*, TAILSCALE_MCP_*, TAILSCALE_RMCP_* for npm launcher controls |
The repo, crate, and npm package use the RMCP family name. The shipped binary is rtailscale to avoid shadowing the official tailscale CLI.
TAILSCALE_ALLOW_DESTRUCTIVE=true and the caller also passes explicit confirmation.| This repo owns | Tailscale owns | Explicitly out of scope |
|---|---|---|
| MCP/CLI projection, request validation, HTTP MCP auth policy, response shaping, setup checks, and destructive gates. | Tailnet state, device identities, ACL semantics, DNS behavior, API key issuance, user membership, and upstream authorization. | Replacing the admin console, storing caller credentials, multi-tailnet tenancy, arbitrary WireGuard control, policy editing beyond exposed actions, and local Tailscale daemon management. |
| Path | Command | Best for | Notes | |
|---|---|---|---|---|
| npm / npx | npx -y @dinglebear/rtailscale --help | Local MCP clients and quick trials. | Downloads the matching rtailscale binary from GitHub Releases. | |
| Release installer | `curl -fsSL https://raw.githubusercontent.com/dinglebear-ai/rtailscale/main/scripts/install.sh \ | bash` | Host installs without Node. | Installs rtailscale for the current Linux host. |
| Docker / Compose | docker compose up -d | Shared HTTP MCP deployments. | Reads .env and exposes container port 40040. | |
| Build from source | cargo build --release | Development and audits. | Produces target/release/rtailscale. | |
| Plugin | claude plugin install plugins/tailscale | Claude Code local plugin setup from this checkout. | Ships the skill, .mcp.json, and a bundled binary. No hooks — run rtailscale setup check yourself if you want the environment verified. |
Run the stdio MCP server or CLI without a manual binary install:
npx -y @dinglebear/rtailscale --help
npx -y @dinglebear/rtailscale mcp npx -y @dinglebear/rtailscale devices --json
The npm package downloads rtailscale during postinstall. Override download behavior only when testing packaging:
| Variable | Purpose |
|---|---|
TAILSCALE_RMCP_SKIP_DOWNLOAD=1 | Skip postinstall binary download. |
TAILSCALE_RMCP_VERSION or TAILSCALE_RMCP_BINARY_VERSION | Select the GitHub Release tag. |
TAILSCALE_RMCP_REPO | Select the GitHub repo used for release downloads. |
TAILSCALE_RMCP_RELEASE_BASE_URL | Select a custom release base URL. |
git clone https://github.com/dinglebear-ai/rtailscale
cd rtailscale cargo build --release ./target/release/rtailscale --help
Minimum supported Rust version: 1.86.
Create an API key at https://login.tailscale.com/admin/settings/keys. Use the minimum capability needed for the actions you plan to expose.
export TAILSCALE_API_KEY="tskey-api-..."
export TAILSCALE_TAILNET="-" # personal, or "example.com" for orgs
Every Tailscale account belongs to a tailnet. TAILSCALE_TAILNET=- targets the default personal tailnet; organization tailnets usually use the org domain.
npx -y @dinglebear/rtailscale devices --json
TAILSCALE_MCP_HOST=127.0.0.1 npx -y @dinglebear/rtailscale serve
In another shell:
curl -sf http://127.0.0.1:40040/health
curl -s -X POST http://127.0.0.1:40040/mcp \
-H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"tailscale","arguments":{"action":"devices"}}}'
{
"mcpServers": { "tailscale": { "command": "npx", "args": ["-y", "tailscale-rmcp", "mcp"], "env": { "TAILSCALE_API_KEY": "tskey-api-...", "TAILSCALE_TAILNET": "-" } } } }
{
"mcpServers": { "tailscale": { "type": "http", "url": "http://127.0.0.1:40040/mcp", "headers": { "Authorization": "Bearer ${TAILSCALE_MCP_TOKEN}" } } } }
Register Tailscale through Labby as an HTTP upstream when sharing one long-running server, or run it directly as stdio for local-only use.
[mcp_servers.tailscale]
command = "npx" args = ["-y", "tailscale-rmcp", "mcp"]
{
"command": "rtailscale", "args": ["mcp"], "env": { "TAILSCALE_API_KEY": "tskey-api-...", "TAILSCALE_TAILNET": "-" } }
Do not put TAILSCALE_API_KEY, OAuth secrets, passwords, SSH keys, or upstream bearer tokens in MCP tool arguments. Use env, config files, or the MCP client's secret storage. MCP callers never provide credentials, tokens, keys, or secrets as action arguments.
| Surface | Status | Entry point | Purpose |
|---|---|---|---|
| MCP stdio | Supported | rtailscale mcp, npx -y @dinglebear/rtailscale mcp | Local child-process MCP clients. |
| MCP HTTP | Supported | rtailscale serve, POST /mcp | Streamable HTTP MCP for local or shared server deployments. |
| CLI | Supported | rtailscale | Scriptable parity and debugging. |
| REST API | Not shipped | N/A | Tailscale already owns the REST API. |
| Web UI | Not shipped | N/A | Tailscale already owns the admin console. |
One MCP tool is exposed: tailscale. Pass the required action argument to select the operation.
| Action | Description | Required params | Optional params |
|---|---|---|---|
devices | List all devices in the tailnet. | none | none |
device | Return one device. | id | none |
device_routes | Return subnet routes for one device. | id | none |
keys | List API keys in the tailnet. | none | none |
acl | Return ACL policy JSON. | none | none |
dns | Return DNS nameservers, search paths, and MagicDNS preferences. | none | none |
users | List tailnet users. | none | none |
help | Return built-in action documentation. | none | none |
| Action | Description | Required params | Optional params |
|---|---|---|---|
authorize_device | Approve a device for the tailnet. | id | none |
| Action | Description | Required params | Optional params |
|---|---|---|---|
delete_device | Permanently remove a device. | id, confirm=true | none |
Device IDs may be stable node IDs such as n1234abc or legacy numeric device IDs. Use action=devices first to discover IDs.
The binary calls the same service layer as the MCP tool:
rtailscale devices [--json]
rtailscale device [--json] rtailscale routes [--json] rtailscale keys [--json] rtailscale acl [--json] rtailscale dns [--json] rtailscale users [--json] rtailscale authorize [--json] rtailscale delete-device --confirm [--json] rtailscale doctor [--json] rtailscale setup check [--json] rtailscale setup repair [--json] rtailscale setup plugin-hook [--no-repair] [--json] rtailscale serve # HTTP MCP (also the no-argument default) rtailscale mcp # stdio MCP
All commands currently print JSON. --json is accepted for parity with the rest of the RMCP family.
Host installs read ~/.tailscale-mcp/.env before loading config. Containers read /data/.env. Process environment overrides both.
| Variable | Default | Purpose |
|---|---|---|
TAILSCALE_API_KEY | unset | Tailscale API key. |
TAILSCALE_TAILNET | - | Tailnet: org domain or - for personal. |
TAILSCALE_ALLOW_DESTRUCTIVE | false | Enable delete_device server-side. |
TAILSCALE_MCP_HOST | 0.0.0.0 | HTTP bind host. |
TAILSCALE_MCP_PORT | 40040 | HTTP bind port. |
TAILSCALE_MCP_SERVER_NAME | tailscale-rmcp | Advertised MCP server name. |
TAILSCALE_MCP_NO_AUTH | false | Disable auth only for loopback development. |
TAILSCALE_MCP_TOKEN | unset | Static bearer token for HTTP MCP. |
TAILSCALE_NOAUTH | false | Trust an upstream gateway to enforce auth. |
TAILSCALE_MCP_AUTH_MODE | bearer | bearer or oauth. |
TAILSCALE_MCP_PUBLIC_URL | unset | Public URL for OAuth discovery. |
TAILSCALE_MCP_GOOGLE_CLIENT_ID | unset | Google OAuth client ID. |
TAILSCALE_MCP_GOOGLE_CLIENT_SECRET | unset | Google OAuth client secret. |
TAILSCALE_MCP_AUTH_ADMIN_EMAIL | unset | Admin email for OAuth bootstrap. |
TAILSCALE_MCP_ALLOWED_HOSTS | unset | Extra accepted Host header values. |
TAILSCALE_MCP_ALLOWED_ORIGINS | unset | Extra accepted CORS origins. |
TAILSCALE_MCP_HOME | platform appdata | Override the config/log home used by setup and file logging. |
The Tailscale API base URL is not configurable; it is fixed at https://api.tailscale.com/api/v2 in src/tailscale.rs.
Stdio MCP runs as a local trusted child process and does not use HTTP auth.
HTTP MCP auth policy:
| State | Condition | Behavior |
|---|---|---|
| Loopback dev | TAILSCALE_MCP_HOST starts with 127. or auth is explicitly disabled on loopback | Local unauthenticated development is allowed. |
| Mounted bearer | Non-loopback with TAILSCALE_MCP_TOKEN | Requires Authorization: Bearer and action