El podcast de Sergio
El podcast de Sergio
Ep. 26 16 octubre 2026 · 3m 18s

Mi app de gimnasio ya habla con la IA

My gym app now talks to AI

LiftCoach, mi app de gimnasio, ya tiene conector MCP. Cualquier asistente de IA puede leer mis entrenos, rutinas y nutrición con OAuth e inicio de sesión con Apple, todo en mi servidor. Diez herramientas, dos de escritura que pasan por una bandeja donde decido yo. Y un bug de horas por una barra. Post completo: https://sergiocomeron.com/blog/posts/liftcoach-mcp/

LiftCoach, my gym app, now has an MCP connector. Any AI assistant can read my workouts, routines and nutrition through OAuth and Sign in with Apple, all on my own server. Ten tools, two that write, and those land in an inbox where I decide. Plus a bug that cost hours over one slash. Full post: https://sergiocomeron.com/blog/posts/liftcoach-mcp/

0:00--:--

Lo escribe Sergio. Lo lee una voz generada · Written by Sergio. Read by a generated voice · Colophon

TranscripciónTranscript · del guión del episodio· from the episode script

Hace unas semanas me propuse una cosa que me apetecía mucho. Que un asistente de inteligencia artificial pudiera leer mis entrenos de verdad. Sin copiar y pegar. Sin apaños. Con un inicio de sesión de los serios. Hoy ya funciona. El título de hoy: mi app de gimnasio ya habla con la IA. Y esto es el podcast.

La app es LiftCoach. La estoy haciendo yo, para iPhone y para el reloj. Todavía está en TestFlight, pero la uso cada día. Apunto series, rutinas y algo de lo que como. Y todo eso acaba en mi servidor, aquí en España. Nada de nubes de terceros para los datos.

Mi bot entrenador ya leía esos datos. Pero con un truco de andar por casa. Un conector que solo funcionaba en mi máquina y con una contraseña fija. Para que lo usara cualquier otro asistente hacía falta algo de verdad. Y eso tiene nombre: MCP. Es un protocolo para que los asistentes se enchufen a tus herramientas.

Me puse una regla antes de empezar. Nada de esto podía obligarme a sacar una versión nueva de la app.

Primero, ordenar la casa. Los tokens ya no se guardan tal cual, se guardan como un resumen que no sirve si alguien lo roba. Si borras tu cuenta, se va todo lo que cuelga de ella. Puedes exportar tus datos o borrarlo todo, que es lo que pide la ley, y lo que a mí me gustaría encontrar en cualquier app. Cosas poco vistosas. Pero sin eso, lo demás no se sostiene.

Luego, el conector en sí. Un servicio aparte, que no se mete dentro de la API. Tiene diez herramientas. La mayoría son para leer: entrenos, rutinas, ejercicios, nutrición, lo que registra el reloj. Y dos para escribir: crear una rutina y crear un plan de comidas. Pero ojo, que lo que crea el asistente no se aplica solo. Llega a una bandeja dentro de la app. Y soy yo quien dice sí o no. La IA propone, la persona decide. Con el entrenamiento y con la dieta me parece lo mínimo.

El grueso del trabajo fue la puerta de entrada. Para que un asistente remoto toque tus datos, la especificación pide OAuth. Podía haberlo contratado a un servicio externo. Preferí hacerlo yo. Quería entender cada pieza y que la autenticación también se quedara en mi servidor. Me tocó leer las normas técnicas con calma, una por una.

Para entrar uso iniciar sesión con Apple. Quien tiene un iPhone ya tiene esa cuenta, y así yo no guardo contraseñas de nadie. El permiso que recibe el asistente caduca a los quince minutos. Se renueva solo, y si alguien intenta reutilizar uno viejo, se corta toda la cadena.

Y claro, hubo bug. El último paso, el botón de aceptar, daba un error de página no encontrada. Horas mirando la configuración del proxy. Al final era una ruta relativa en el formulario. Una barra. Horas por una barra.

Lo he probado en Grok Bot y en Cursor. Añades el conector, te manda a Apple, aceptas, y listo. Le preguntas cómo vas con el press de banca y te contesta con tus números. Le pides una rutina nueva y aparece en la bandeja de la app, esperando.

Lo que más me gusta es que la app no ha cambiado ni una línea. Cuando LiftCoach salga en la App Store, pediré que el conector aparezca en las tiendas de plugins. Antes no tiene sentido. El post largo, con el montaje entero, está en el blog.

Esto ha sido el podcast de Sergio por hoy. Nos escuchamos en el próximo.