Guía

Cómo conectar ChatGPT a archivos locales en un Mac de forma segura

TunnelGPT permite que ChatGPT trabaje con una carpeta de proyecto de tu Mac mediante el Secure MCP Tunnel de OpenAI. Tus archivos originales permanecen en el ordenador y la conexión empieza en modo solo lectura. Los resultados de las herramientas que solicites sí viajan a OpenAI para que ChatGPT pueda responder, así que guardar los archivos en local no equivale a procesar la IA sin conexión.

La forma más prudente de empezar es conectar un proyecto pequeño y desechable, comprobar qué puede hacer y qué no puede hacer el acceso de solo lectura, y solo después valorar la edición, la ejecución de comandos o un servidor MCP local. El procedimiento siguiente es una comprobación controlada del producto, no una auditoría de seguridad.

Los archivos locales no significan IA sin conexión

TunnelGPT mantiene el proyecto seleccionado en tu ordenador y transporta las peticiones mediante el Secure MCP Tunnel hasta la aplicación local de TunnelGPT. TunnelGPT comprueba los permisos y devuelve el resultado permitido de la herramienta. ChatGPT recibe el resultado que necesita para responder. Durante el funcionamiento normal, los servidores comerciales de TunnelGPT quedan fuera de ese recorrido operativo de datos.

Esto hace que TunnelGPT sea adecuado cuando quieres que ChatGPT trabaje con un proyecto local concreto sin sincronizar toda la carpeta. No significa que el contenido solicitado por ChatGPT permanezca únicamente en el Mac. Si necesitas que ningún contenido salga del ordenador, necesitas un flujo verificado con un modelo local.

TunnelGPT es software independiente. Se conecta a los servicios de OpenAI con tu cuenta y tus permisos, y no está afiliado, patrocinado ni respaldado por OpenAI.

Qué hace cada parte

  1. ChatGPT es el lugar donde haces la pregunta y seleccionas el conector del proyecto.
  2. Secure MCP Tunnel transporta la petición sin exigir un puerto público de entrada en tu Mac.
  3. TunnelGPT en tu Mac gestiona la conexión y aplica los permisos que hayas elegido.
  4. La carpeta de proyecto seleccionada es el límite de las herramientas de archivos. Conectar un proyecto no da acceso mediante esas herramientas a tus otros proyectos.

Este límite no se aplica automáticamente a todos los tipos de trabajo. Los trabajos nativos del Mac y los servidores MCP locales externos tienen permisos propios. Un MCP local puede tener acceso a cuentas con sesión iniciada, archivos fuera del proyecto o servicios externos, según el servidor y las herramientas que autorices. Revisa esos permisos por separado.

Qué necesitas antes de conectar

Prepara todo lo siguiente:

  • Una cuenta de ChatGPT con acceso a conectores o apps personalizadas y a Secure MCP Tunnels.
  • Permisos en la organización de OpenAI Platform para crear o gestionar un túnel y su credencial restringida. El túnel debe asociarse al espacio de ChatGPT donde lo usarás; añadir y utilizar el conector requiere además los permisos correspondientes de ese espacio.
  • Docker 24 o superior en ejecución en el Mac.
  • Una carpeta de proyecto local que estés dispuesto a conectar.
  • Un Mac con Apple Silicon para la versión actual de escritorio de TunnelGPT.

TunnelGPT no incluye una suscripción de ChatGPT ni servicios de terceros. La licencia de Docker Desktop depende de tu uso y de tu organización.

Usa una credencial restringida con solo el alcance que necesita el túnel. Guárdala mediante la aplicación de escritorio en el almacenamiento seguro del sistema operativo. No guardes una clave en un archivo del proyecto ni la subas a un repositorio.

Tu Mac debe permanecer encendido, sin suspensión, conectado a internet, con Docker en ejecución y conectado mediante TunnelGPT mientras ChatGPT necesite el proyecto. El túnel no despierta un ordenador dormido o apagado.

Conecta un proyecto en modo solo lectura

Las etiquetas disponibles en ChatGPT pueden cambiar según la cuenta y la interfaz. Sigue el flujo actual de la aplicación para el espacio de ChatGPT donde usarás el conector.

1. Crea o reutiliza una credencial restringida

Crea o reutiliza una credencial restringida para el túnel. Crear o gestionar el túnel y la credencial requiere los permisos correspondientes en tu organización de OpenAI Platform. Dale a la credencial solo el alcance que necesita y mantenla en el almacenamiento seguro del sistema operativo mediante la aplicación de escritorio. Asocia el túnel al espacio de ChatGPT donde lo usarás; añadir y utilizar el conector requiere además los permisos correspondientes de ese espacio.

2. Crea el túnel en Platform y asócialo con ChatGPT

Crea o gestiona el Secure MCP Tunnel en tu organización de OpenAI Platform y asócialo al espacio de ChatGPT donde usarás el conector. Copia su identificador completo. TunnelGPT no crea el túnel ni la credencial por ti. Añadir y utilizar el conector requiere los permisos correspondientes de ese espacio de ChatGPT.

3. Crea el árbol de prueba ficticio antes de la primera petición

Antes de hacer la primera petición mediante el conector seleccionado, crea un directorio padre desechable con esta estructura:

tunnelgpt-boundary-test/
  allowed.txt
  nested/
    nested.txt
tunnelgpt-boundary-sibling.txt

Escribe una frase única e inofensiva en cada archivo. Deja el archivo hermano junto a la carpeta del proyecto, no dentro de ella. Registra la lista y el contenido exacto antes de conectar. No uses credenciales, datos de clientes, secretos ni trabajo irreemplazable.

Mantén desactivadas la ejecución de comandos y la edición de archivos. Todas las comprobaciones de esta sección deben usar únicamente las herramientas de archivos expuestas por el conector seleccionado. No uses ejecución de comandos, scripts de shell, trabajos nativos del Mac ni otro MCP.

4. Selecciona un proyecto en TunnelGPT

Elige una carpeta y dale un nombre reconocible. Vincula el perfil del proyecto a su túnel y deja el acceso a los archivos en modo solo lectura. Conectar una carpeta no conecta tus otras carpetas de proyecto.

Para la primera comprobación, usa una carpeta desechable sin secretos, datos de clientes, credenciales ni trabajo irreemplazable.

5. Inicia la conexión y espera a que esté lista

Inicia el perfil y espera a que TunnelGPT indique que la conexión está lista. Mantén el Mac encendido, conectado a internet y con Docker en ejecución.

6. Añade el conector del proyecto en ChatGPT

Usa el flujo de conector o app personalizada disponible en tu cuenta de ChatGPT. Selecciona el túnel del proyecto, introduce el identificador exacto cuando el flujo lo solicite, revisa las herramientas que muestra y guarda el conector.

7. Haz la primera petición de solo lectura

Empieza con una petición que solo lea un archivo de prueba conocido:

Enumera los archivos del proyecto conectado. Lee allowed.txt y cita su contenido. No edites, crees, borres, renombres ni ejecutes nada.

Comprueba la respuesta y el resultado real de la herramienta antes de pedir contenido real del proyecto. Una afirmación en lenguaje natural de que se ha cambiado un archivo no demuestra que el cambio se haya producido. Las pruebas siguientes deben mantenerse dentro de las herramientas de archivos del conector seleccionado.

Haz una comprobación controlada con archivos ficticios

Este procedimiento describe comprobaciones que debes realizar, no resultados verificados. No constituye una auditoría de seguridad.

Comprueba la lectura

Conecta solo tunnelgpt-boundary-test en modo solo lectura, con la ejecución de comandos y la edición de archivos desactivadas. Pide a ChatGPT que enumere los archivos del proyecto y lea allowed.txt, usando únicamente las herramientas de archivos expuestas por el conector seleccionado. Compara el resultado real de la herramienta con el contenido conocido. Registra el conector, el nombre de la herramienta, la petición, la ruta y el resultado. La condición esperada es que la herramienta de archivos del conector seleccionado pueda leer el archivo permitido.

Comprueba que la escritura está desactivada

Mientras el proyecto siga en solo lectura y la edición de archivos continúe desactivada, pide a ChatGPT mediante el conector seleccionado:

Crea write-check.txt con el texto exacto READ_ONLY_TEST. No uses un comando ni otro MCP.

Haz la comprobación en dos partes y no uses ejecución de comandos, scripts de shell, trabajos nativos del Mac ni otro MCP:

  1. Inspecciona la superficie real de herramientas y el resultado de la herramienta. Registra por separado si el inventario completo de herramientas confirma que no hay una herramienta de escritura expuesta o si una llamada de escritura expuesta fue denegada. Si no puedes inspeccionar el inventario completo, la ausencia de la herramienta es inconclusa. Un rechazo en texto natural sin resultado real de herramienta no es evidencia técnica.
  2. Inspecciona la carpeta del proyecto antes y después de la petición. Confirma que no se creó write-check.txt y que allowed.txt no cambió.

Registra el resultado como uno de estos estados: no expuesta, llamada denegada, inconcluso o no ejecutado. La ausencia de llamada de escritura, un timeout, una respuesta ambigua o un estado del sistema de archivos que no puedas verificar es inconcluso. La descripción actual del producto indica que, en el modo predeterminado, las herramientas de escritura no están disponibles y la carpeta se monta en solo lectura. Comprueba el comportamiento en tu instalación, no trates esta guía como un informe de prueba.

Si la escritura funciona, cambia un archivo o la respuesta es ambigua, detén la conexión y no continúes con datos reales. Revisa los permisos activos del proyecto antes de hacer nada más.

Comprueba el límite del archivo hermano

Pide a ChatGPT mediante la herramienta de archivos del conector seleccionado que lea la ruta relativa explícita ../tunnelgpt-boundary-sibling.txt, si la herramienta admite esa ruta relativa. Si la herramienta exige otra forma explícita de ruta exterior, registra la forma exacta admitida antes de usarla. Registra el conector, el nombre de la herramienta, la ruta exacta y el resultado real.

No encontrado, timeout, ausencia de llamada, rechazo de la ruta antes de que se ejecute la herramienta de archivos o una ruta que en realidad no estuviera fuera del proyecto son estados inconclusos, no evidencia de aislamiento. No pruebes rutas o métodos alternativos para eludir un rechazo. Si la herramienta devuelve el contenido del archivo hermano, detén la prueba e investiga. No generalices este límite de las herramientas de archivos a comandos nativos del Mac ni a un MCP local externo, porque tienen permisos distintos y pueden tener rutas de lectura adicionales.

Comprueba las exclusiones solo si el producto las ofrece

Si la herramienta de archivos y la aplicación actuales ofrecen un control de exclusión documentado, añade un archivo ficticio inofensivo a esa exclusión y comprueba que la herramienta lo rechaza. Registra el nombre del control y el resultado de la herramienta. Si no aparece un control de exclusión compatible, omite esta prueba. No describas las exclusiones como una función configurable basándote solo en una suposición.

Detén la conexión, comprueba el estado del trabajo y pide contenido nunca leído

Detén la conexión del proyecto en TunnelGPT. Desconectar no demuestra que los trabajos anteriores hayan terminado. Usa los controles documentados de trabajos para consultar el estado, los logs y los resultados de cualquier trabajo previo, y registra ese estado antes de continuar. No deduzcas que terminó solo porque la respuesta del chat haya finalizado.

Después de comprobar el estado documentado del trabajo, crea o modifica localmente un archivo de prueba con una frase nueva que nunca se haya mostrado en el chat ni se haya expuesto a otro conector. Comparte únicamente su ruta mediante la herramienta de archivos del conector seleccionado y pide una llamada real de esa herramienta para leerla. Registra el conector, el nombre de la herramienta, la ruta exacta, el estado de la llamada y el resultado. No presupongas que la desconexión funcionó. Una llamada ausente, timeout, falta de resultado o respuesta ambigua es inconcluso. No uses otro conector, comando, script de shell, trabajo nativo del Mac ni MCP, y no pruebes alternativas para eludir un rechazo.

Activa más permisos solo después de la comprobación de solo lectura

La edición de archivos es independiente de la lectura

Activa la edición únicamente para el proyecto que la necesite. Las herramientas de archivos comprueban si un archivo ha cambiado y el cliente gestiona la confirmación necesaria para modificarlo.

Usa una copia privada o control de versiones antes de autorizar cambios. TunnelGPT no puede deshacer cambios directos en el proyecto.

La ejecución de comandos es otro permiso

La ejecución de comandos y scripts de shell requiere una autorización separada. Elige deliberadamente el entorno de ejecución, el modo de trabajo y las carpetas adicionales de lectura.

Los trabajos Linux se ejecutan en Docker sin acceso a la red exterior. Si se permiten descargas para preparar dependencias, es otro permiso y otro alcance. Los trabajos nativos avanzados del Mac utilizan un sandbox de macOS y carpetas de herramientas autorizadas, y sus rutas de lectura y red deben revisarse por separado. Los comandos directos pueden cambiar archivos del proyecto sin confirmar cada edición.

No describas los controles de aislamiento del servicio de archivos como si cubrieran automáticamente los trabajos nativos del Mac. La documentación del producto separa expresamente esos controles.

Los servidores MCP locales tienen su propio límite de riesgo

Cuando conectes un MCP local, revisa sus herramientas disponibles y autoriza solo las que quieras utilizar. Un MCP local de otro desarrollador tiene sus propios permisos y prácticas de tratamiento de datos. Ejecutarlo en local no impide que envíe datos a servicios externos.

Qué permanece en el Mac y qué viaja a OpenAI

Durante el funcionamiento normal, TunnelGPT indica que los siguientes elementos permanecen bajo tu control en el ordenador:

  • Los archivos originales del proyecto.
  • Las rutas del proyecto y el estado local del runtime.
  • Las credenciales de conexión guardadas en el almacenamiento seguro del sistema operativo.
  • El proceso local de TunnelGPT y del MCP.

La carpeta completa no se sincroniza como una sola subida. Sin embargo, los resultados de las herramientas que solicitas se envían a OpenAI a través del túnel para que ChatGPT pueda responder. Revisa las condiciones y los controles de datos de OpenAI para la cuenta de ChatGPT que utilices. Los servidores comerciales de TunnelGPT quedan fuera de ese recorrido operativo durante el funcionamiento normal.

Esta distinción también se aplica a los MCP locales. TunnelGPT no puede eliminar las prácticas de datos propias de un MCP de terceros. Revisa el servidor antes de conectarlo y no uses un proyecto sensible hasta entender qué herramientas pueden acceder a qué servicios.

Los problemas de conexión tienen soluciones distintas

El conector se añadió antes de que el perfil estuviera listo. Inicia el perfil, espera al estado de listo y añade o actualiza el conector después.

Se rechaza el identificador del túnel. Vuelve a copiar el identificador completo y comprueba que no falten caracteres ni haya espacios alrededor. Debe coincidir exactamente.

Docker no está en ejecución. Inicia Docker antes de iniciar el perfil de TunnelGPT.

La credencial o el túnel no tienen los permisos necesarios. Comprueba tus permisos en la organización de OpenAI Platform para gestionar el túnel y el alcance de la credencial; después comprueba los permisos correspondientes del espacio de ChatGPT para añadir y utilizar el conector. Emite o reutiliza una credencial restringida con solo el alcance que necesita el túnel.

El proyecto es demasiado amplio. Usa una carpeta de proyecto dedicada y mantén los secretos fuera de ella. Empieza con un proyecto ficticio antes de conectar un repositorio real.

Se produce una escritura o un comando inesperado. Detén la conexión, vuelve a solo lectura y revisa el permiso concedido a la herramienta de archivos, al ejecutor de comandos o al MCP local. No supongas que los controles de archivos del proyecto gobiernan los comandos o los MCP externos.

El ordenador no está disponible. Mantén el Mac encendido, conectado a internet, con Docker en ejecución y conectado durante la tarea.

Preguntas que conviene resolver antes de conectar archivos sensibles

¿Conectar archivos locales equivale a usar ChatGPT sin conexión?

No. Los archivos originales permanecen en el Mac, pero los resultados de las herramientas solicitadas viajan a OpenAI para que ChatGPT responda. El almacenamiento local y el procesamiento local de IA son requisitos distintos.

¿Se sube todo mi proyecto a ChatGPT?

TunnelGPT indica que la carpeta completa no se sincroniza como una sola subida. ChatGPT sí recibe los resultados de las herramientas que solicitas, y esos resultados pueden contener contenido del proyecto.

¿Puede TunnelGPT ejecutar comandos?

Sí, cuando habilitas expresamente la ejecución de comandos o scripts de shell para el proyecto. Los trabajos Linux, los trabajos nativos avanzados del Mac, los modos de trabajo y las carpetas adicionales de lectura tienen controles separados. Los comandos directos pueden cambiar archivos sin confirmar cada edición, así que revisa los permisos de ejecución antes de activarlos.

¿Puedo trabajar en el proyecto de mi Mac desde ChatGPT en el móvil?

Muchas veces sí, pero depende de tu cuenta y de la interfaz. Abre ChatGPT en el móvil o en otro ordenador y usa el conector del proyecto cuando esté disponible en esa interfaz. La disponibilidad en móvil y por voz, y lo que puede hacer el modelo ahí, varían según la cuenta, el plan y el despliegue, y la documentación pública de OpenAI puede no coincidir con funciones que aún se están desplegando.

Tu Mac sigue siendo donde están los archivos. Debe estar encendido, sin suspensión, con internet, con Docker en marcha y conectado a través de TunnelGPT mientras trabajas desde el móvil. El límite es el mismo: el proyecto se queda en el Mac y los resultados de herramientas que pide ChatGPT viajan a OpenAI. Usa los 3 días gratis para comprobar que tu móvil y tu cuenta muestran el conector antes de comprar.

¿Puede un MCP local acceder a algo más que al proyecto conectado?

Puede tener permisos y prácticas de datos propios. Según el servidor y las herramientas autorizadas, un MCP local puede acceder a cuentas con sesión iniciada, archivos fuera del proyecto o servicios externos. Revísalo por separado de la conexión de archivos del proyecto.

¿TunnelGPT recibe mis archivos o mi clave?

La aplicación local necesita acceder al proyecto seleccionado y usar tu credencial de conexión. TunnelGPT indica que el contenido del proyecto y de las peticiones y respuestas MCP no pasa por sus servidores comerciales durante el funcionamiento normal, y que las credenciales guardadas por la aplicación permanecen en el almacenamiento seguro del sistema operativo. Los resultados solicitados siguen viajando a OpenAI cuando usas ChatGPT.

¿TunnelGPT es una aplicación oficial de OpenAI?

No. TunnelGPT es software independiente que se conecta a los servicios de OpenAI con tu cuenta y tus permisos. No está afiliado, patrocinado ni respaldado por OpenAI.

El punto de partida práctico es pequeño: conecta un proyecto desechable, mantenlo en solo lectura, comprueba el resultado de la herramienta y el estado del sistema de archivos, y solo después decide si la tarea justifica editar, ejecutar comandos o conectar un MCP local.

Lecturas adicionales

Producto