À propos du projet

tunnel-client est l'agent exécuté par le client derrière le Secure MCP Tunnel d'OpenAI. Il connecte un serveur MCP (Model Context Protocol) privé ou localhost à ChatGPT, Codex, l'API Responses et AgentKit via un point de terminaison tunnel hébergé par OpenAI, gardant le serveur MCP hors de l'internet public. Il est conçu pour les scénarios où un produit hébergé par OpenAI doit atteindre un serveur MCP sur un ordinateur portable, une VM, un cluster Kubernetes ou un réseau privé, mais où les politiques de sécurité empêchent les règles de pare-feu entrantes ou les points de terminaison publics. Le démon expose les points de terminaison /healthz, /readyz, /metrics et /ui visibles par l'opérateur. L'outil peut être installé via Homebrew (brew install openai/tools/tunnel-client) ou compilé depuis les sources avec Go. Il propose une CLI pour l'intégration, l'administration et la gestion des profils (tunnel-client help quickstart), ainsi que des variantes d'exécution uniquement (tunnel-client-runtime et tunnel-client-runtime-cloudflared) qui n'exposent que la commande run pour les démons de longue durée. La variante Cloudflare supervise un compagnon cloudflared épinglé pour le provisionnement géré. Les développeurs peuvent intégrer le client directement dans un processus Go à l'aide du SDK Go et du transport en mémoire du SDK MCP, évitant ainsi que le serveur MCP doive lier un port ou utiliser stdio. Le dépôt inclut un mode démo intégré avec des options de gestion MCP sans état et avec état. Le projet met l'accent sur la sécurité de la chaîne d'approvisionnement. Les versions incluent des fichiers annexes SPDX 2.3, des sommes de contrôle SHA256, des bundles de provenance Sigstore, des rapports de vulnérabilités et des documents de preuve pour l'entreprise. Le dépôt fournit des scripts pour vérifier les archives de version, les bases de référence SBOM et la provenance hors ligne. Il prend en charge le déploiement via des images Docker/Kubernetes publiées sur ghcr.io/openai/tunnel-client pour Linux amd64 et arm64.