tailscale-blade-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TAILSCALE_API_KEY | Yes | Tailscale API access token (tskey-api-...) or OAuth Bearer token. | |
| TAILSCALE_MCP_API_TOKEN | No | Optional Bearer token for HTTP transport authentication. | |
| TAILSCALE_WRITE_ENABLED | No | Set to 'true' to enable write operations. | false |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ts_infoA | Health check: device counts, online/offline, key expiry warnings, updates, tailnet settings, write gate. |
| ts_devicesA | List all devices: hostname, OS, IP, online/offline, key expiry, tags, update status. Optional |
| ts_deviceA | Full detail for a single device: addresses, OS, client version, key status, tags, user. Single-record fetch — server-side filter is |
| ts_device_routesA | Routes for a device: advertised subnets, approved/unapproved status. Emits a DD-338 |
| ts_dnsB | DNS configuration: nameservers, MagicDNS status, search paths, split DNS rules. |
| ts_aclA | ACL policy summary: groups, rules, SSH rules, tag owners. Shows who can talk to whom. |
| ts_acl_validateA | Validate an ACL policy without applying it. Returns errors or 'passed'. |
| ts_acl_setA | Apply (POST) a full ACL policy to the tailnet. Requires TAILSCALE_WRITE_ENABLED=true. Always validates the policy first and refuses to apply on validation failure.
By default uses optimistic concurrency: the current ETag is sent as |
| ts_keysA | List auth keys: ID, description, reusable/ephemeral/preauth flags, tags, expiry. Optional |
| ts_usersA | List users: name, login, role, status, device count, online/last seen. Sorted by case-folded loginName ascending (numeric id tie-break). |
| ts_webhooksA | List configured webhooks: endpoint URL, event subscriptions, created date. Sorted by endpointId ascending. |
| ts_audit_logA | Configuration audit log: who changed what, when. Recent entries first. Optional |
| ts_authorize_deviceA | Authorize or deauthorize a device. Requires TAILSCALE_WRITE_ENABLED=true. |
| ts_set_tagsA | Set ACL tags on a device. Replaces existing tags. Requires TAILSCALE_WRITE_ENABLED=true. |
| ts_expire_deviceA | Force key expiry on a device — it must re-authenticate. Requires TAILSCALE_WRITE_ENABLED=true. |
| ts_approve_routesA | Approve subnet routes on a device. Requires TAILSCALE_WRITE_ENABLED=true. Default (
|
| ts_create_keyA | Create a new auth key. Requires TAILSCALE_WRITE_ENABLED=true. |
| ts_delete_keyA | Revoke an auth key. Requires TAILSCALE_WRITE_ENABLED=true and confirm=true. |
| ts_delete_deviceA | Delete a device from the tailnet. Requires TAILSCALE_WRITE_ENABLED=true and confirm=true. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 19 tools
Each tool targets a distinct aspect of Tailscale management: ACL policies, devices, auth keys, DNS, users, webhooks, audit, and health. Even similar-sounding tools like ts_device and ts_devices serve different purposes (single vs. list). No ambiguity.
All tools use the 'ts_' prefix with consistent verb_noun pattern in snake_case (e.g., ts_acl_set, ts_approve_routes, ts_delete_device). There are no deviations or mixed conventions.
19 tools cover the full lifecycle of Tailscale resources a reasonable granularity. The scope is not overburdened; each tool provides a specific function without redundancy.
The tool set covers ACL (read, validate, apply), device lifecycle (list, detail, routes, authorize, delete, expire, tags), auth keys (list, create, revoke), DNS config, users, webhooks, audit log, and health check. No obvious gaps for typical tailnet management.