Skip to main content

Serverless Sovereign MCP Proxy for Tailscale Network Management

Project description

ts-proxy

    ╔╦╗┌─┐  ╔═╗╦═╗╔═╗═╗ ╦╦ ╦
     ║ └─┐  ╠═╝╠╦╝║ ║╔╩╦╝╚╦╝
     ╩ └─┘  ╩  ╩╚═╚═╝╩ ╚═ ╩ 
   Sovereign Tailscale Proxy

Serverless Sovereign MCP Proxy for Tailscale Network Management (v1.2.2) 0% Hardcode · 100% Flexibility · Strict Alphabetical Order

Part of the KpihX-Labs architecture, ts-proxy is a secure, ephemeral CLI tool that runs inside the docker-host abstraction layer. It acts as an intelligent intermediary between your AI agents (running on Ubuntu/Mac) and the global Tailscale API.

Core Principles

  1. JSON-RPC 2.0 Paradigm: All business logic commands follow a strict payload-driven model, decoupling API evolution from CLI flag stability.
  2. Dynamic Sovereign Documentation: Built-in introspection engine extracts rich docstrings and recursive JSON type schemas directly from the source code.
  3. Strict Alphabetical Ordering: To ensure maintainability and predictable CLI UX, all API methods and CLI commands are sorted alphabetically.
  4. Zero Hardcoding: All versions, paths, and configurations are dynamically resolved or extracted from pyproject.toml and config.yaml.
  5. Human-In-The-Loop (HITL) Validation: Critical operations require explicit web-based approval before execution.

Documentation Stack

  • CONTRACT.md: The total rigorous usage contract (Prod Facet) and sovereign development guide (Dev Facet). Source of truth for technical specs.
  • AGENTS.md: High-level instructions and mantras for AI agents assisting in this repository.
  • CHANGELOG.md: Evolution history and versioned releases.

Quick Start Visual

   AI Agent ──▶ ts-proxy ──▶ [Docker: Core] ──▶ Tailscale API
                │             │
                │             └─▶ [HITL Approval Web UI]
                └─▶ [Autosave: /tmp/ts-proxy/]

Usage

Discovery & Help

Explore the capabilities and expected JSON schemas directly from your terminal:

# List all available commands with summaries and schemas
ts-proxy do --help

# Get detailed documentation and examples for a specific command
ts-proxy do get-device --help

Business Operations (do namespace)

Commands accept a single JSON payload or a path to a JSON file.

# Simple read operation
ts-proxy do list-devices

# Targeted query with JSON payload
ts-proxy do get-device '{"device_id": "12345"}'

Administrative Control (admin namespace)

# Start a new session
ts-proxy admin login

# Check session status
ts-proxy admin status

Architecture

  • Core: Python 3.12 (uv)
  • Validation: Pydantic V2 (Strict Payload Firewall)
  • Engine: Httpx (Async), Typer (CLI Interface)
  • UI: Glassmorphism Web HITL (Approved by KpihX)
  • Runtime: Ephemeral Docker Container (ts-proxy:latest)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ts_proxy-1.1.1.tar.gz (28.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ts_proxy-1.1.1-py3-none-any.whl (35.9 kB view details)

Uploaded Python 3

File details

Details for the file ts_proxy-1.1.1.tar.gz.

File metadata

  • Download URL: ts_proxy-1.1.1.tar.gz
  • Upload date:
  • Size: 28.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for ts_proxy-1.1.1.tar.gz
Algorithm Hash digest
SHA256 7157887399ec78495b2f024544f50e46c3559d685a521cf93eb0ac4535a2a72f
MD5 f9302443b24f8327012bef7d49d1dcc3
BLAKE2b-256 4400ae98f49931b18444307c481602a7bbad090e2bafd3dd0089a1351777c3c2

See more details on using hashes here.

File details

Details for the file ts_proxy-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: ts_proxy-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 35.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for ts_proxy-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 78bf3137db9e1eed4afeb3615e47272c26c2f8a4f7dc625ff1c761e17c904d87
MD5 2909a940875f2fdbbf841ebd321fa584
BLAKE2b-256 a15e19dfa24ffe7f416ecb76da6216ee3e54fd3696132e06dc932c751625bd37

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page