Skip to main content
Glama

Tailscale MCP Server

Serveur Model Context Protocol (MCP) pour interagir avec l'API Tailscale. Ce serveur permet de gérer vos appareils, ACLs, clés et configurations DNS directement depuis des clients MCP comme Claude Desktop ou Raycast.

Prérequis

  • Python 3.11+ (pour l'exécution locale)

  • Docker & Docker Compose (pour le déploiement conteneurisé)

  • Compte Tailscale avec une clé API valide.

Configuration

  1. Créez un fichier .env à la racine du projet (copiez l'exemple ci-dessous) :

touch .env
  1. Ajoutez vos identifiants Tailscale dans le fichier .env :

TAILSCALE_API_KEY=tskey-auth-xxxxxx-xxxxxx TAILSCALE_TAILNET=example-tailnet.ts.net

Note: Vous pouvez générer une clé API dans la section Settings > Keys de votre console d'administration Tailscale. Le nom du tailnet se trouve en haut à gauche de la console (ex: mon-email.gmail.com ou une organisation).

Installation & Démarrage

Option 1 : Docker (Recommandé)

C'est la méthode la plus simple pour déployer le serveur.

  1. Construisez et démarrez le conteneur :

    docker compose up -d --build
  2. Le serveur sera accessible sur http://localhost:8000.

Option 2 : Exécution Locale

  1. Créez un environnement virtuel :

    python -m venv venv source venv/bin/activate # Sur Windows: venv\Scripts\activate
  2. Installez les dépendances :

    pip install -r requirements.txt
  3. Lancez le serveur :

    python server.py

Configuration des Clients

Raycast

  1. Ouvrez Raycast Settings.

  2. Allez dans l'onglet Extensions.

  3. Sélectionnez l'extension Model Context Protocol (installez-la si nécessaire).

  4. Cliquez sur Add Server ('+').

  5. Configurez comme suit :

    • Name: Tailscale

    • Type: HTTP (Streamable)

    • URL: http://localhost:8000/mcp

  6. Validez. Le statut doit passer au vert.

Claude Desktop

Vous avez deux options pour connecter Claude Desktop : via HTTP (recommandé pour Docker) ou via stdio (local).

Option 1 : Via HTTP (Streamable) - Recommandé avec Docker

Cette méthode connecte Claude au serveur exposé sur le port 8000. Assurez-vous que le conteneur est lancé (docker compose up -d).

Ajoutez dans votre config ~/Library/Application Support/Claude/claude_desktop_config.json :

{ "mcpServers": { "tailscale": { "url": "http://localhost:8000/mcp" } } }

Option 2 : Via stdio (Local sans Docker)

Si vous exécutez le serveur directement en python sur votre machine :

{ "mcpServers": { "tailscale": { "command": "/Users/VOTRE_USER/.../venv/bin/python", "args": [ "/Users/VOTRE_USER/.../server.py", "stdio" ] } } }

Note: Pour l'option stdio, remplacez les chemins par les chemins absolus réels sur votre machine.


Vérification

Pour valider l'accès HTTP Streamable :

curl -v http://localhost:8000/mcp

Vous devriez recevoir une réponse, même 404 ou 405, qui confirme que le service écoute.

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/davidyannick86/tailscale_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server