Skip to main content
Glama

LYNK

Inteligencia de reuniones y relaciones para personas que trabajan a través de relaciones.

Convierte cada reunión externa en inteligencia de relaciones — automáticamente.

Python MCP SQLite Telegram Tests


Recuerda la relación. No solo la reunión.

Tu calendario te dice con quién te reúnes.

Tu bandeja de entrada te dice qué pasó antes.

Tu CRM te dice qué consta en el registro.

Se supone que tu memoria conecta los tres.

LYNK hace esa parte.

LYNK es un agente de IA basado en Telegram que construye contexto persistente en torno a las personas y organizaciones con las que trabajas.

Antes de una reunión, te prepara con el historial relevante.

Después de una reunión, puede capturar lo que ocurrió.

Entre reuniones, hace seguimiento de lo que sigue pendiente.

Está diseñado para cualquier persona cuyo trabajo dependa de relaciones externas recurrentes — representantes de ventas, gestores de cuentas, consultores, reclutadores, fundadores, autónomos, agencias, ejecutivos y cualquier otra persona que necesite recordar qué se dijo, qué se prometió y qué viene después.

ANTES

Conoce el historial.

DURANTE

Captura lo que ocurrió.

DESPUÉS

Mantén la relación en movimiento.


Related MCP server: Graphiti MCP Server

Antes de la reunión

Entra ya conociendo el contexto.

Entre 45 y 75 minutos antes de una reunión externa, LYNK envía un informe directamente a Telegram.

No es un resumen de calendario.

Un informe de relación construido a partir del historial que ya tienes con esa persona u organización.

Puede mostrar:

  • Último contacto — cuándo hablaste por última vez y qué ocurrió

  • Compromisos — qué les debes y qué te deben

  • Acuerdos — términos que se confirmaron realmente

  • Asuntos pendientes — preguntas, tareas y seguimientos que siguen sin resolver

  • Preguntas sugeridas — cosas útiles que preguntar según el historial de la relación

El objetivo no es decirte qué hay en tu calendario.

Es recordarte qué es lo que importa antes de que entres.


La parte que importa

La mayoría de los sistemas de IA son muy buenos para resumir.

A LYNK le importa algo más difícil:

¿Qué sabemos realmente?

Una conversación puede contener algo que fue:

dicho → discutido → sugerido → acordado → confirmado

No son lo mismo.

LYNK mantiene esa distinción explícita.

        DISCUSSION
             │
             ▼
        ┌──────────┐
        │ DECISION │
        └────┬─────┘
             │
             ▼
       ┌────────────┐
       │ COMMITMENT │
       └──────┬─────┘
              │
              ▼
       ┌────────────┐
       │ CONFIRMED  │
       └────────────┘

Una afirmación generada por IA no se convierte en un hecho solo porque suene segura.

La información no verificada sigue sin verificar hasta que se confirma.


Después de la reunión

LYNK puede convertir la propia reunión en datos estructurados de relación.

JOIN → RECORD → TRANSCRIBE → EXTRACT → UPDATE

Puede capturar:

  • puntos clave de la discusión

  • decisiones

  • compromisos

  • preguntas abiertas

  • elementos de seguimiento

La misma regla se aplica después de la reunión:

Una discusión no es automáticamente una decisión.

Una declaración no es automáticamente un compromiso.

El registro de la relación se actualiza sin reescribir silenciosamente el historial.


Una relación que recuerda

En el centro de LYNK hay un registro de relaciones local y persistente.

Acumula contexto a lo largo de las interacciones con personas y organizaciones:

                         RELATIONSHIP
                              │
          ┌───────────────────┼───────────────────┐
          │                   │                   │
       PEOPLE             INTERACTIONS       ORGANIZATIONS
          │                   │                   │
          └───────────────────┼───────────────────┘
                              │
                     ┌────────┴────────┐
                     │                 │
                COMMITMENTS        AGREEMENTS
                     │                 │
                     └────────┬────────┘
                              │
                         OPEN LOOPS

Con el tiempo, LYNK se vuelve menos un asistente de reuniones y más una capa de memoria para tus relaciones profesionales.


Pregúntale cuando lo necesites

No tienes que esperar al próximo informe programado.

Solo pregunta.

"What did we agree on last time?"

"What are they waiting for from us?"

"What commitments are overdue?"

"When did we last talk?"

"What's our status with Acme?"

LYNK consulta el contexto de relación acumulado en lugar de empezar desde cero.


Y luego sigue trabajando

Una vez activado, LYNK puede encargarse discretamente del mantenimiento recurrente de las relaciones:

Resumen semanal de relaciones Una vista compacta de la actividad relevante en las relaciones.

Recordatorios de compromisos vencidos Saca a la luz las cosas que siguen esperando a alguien.

Delegación de tareas Convierte una conversación en una acción sin salir de Telegram.

Inteligencia posterior a la reunión Captura decisiones, compromisos y seguimientos automáticamente.

Interruptor de apagado remoto Detén al agente directamente desde Telegram cuando sea necesario.

Ningún panel que mantener. Ninguna base de datos de relaciones que actualizar manualmente.

El sistema mantiene el contexto.

Tú lo usas.


Ejecutar LYNK

LYNK puede ejecutarse de dos maneras:

Local — todo se ejecuta en tu propio ordenador.

Servidor — el agente permanece en línea 24/7 en un VPS Linux, incluso cuando tu ordenador está apagado.

Si estás configurando LYNK por primera vez, empieza localmente. Una vez que funcione, traslada la misma configuración a un servidor.

Qué necesitas

What

Why

Python 3.11+

Ejecuta el servidor MCP de LYNK

Cuenta de Google

Acceso a Calendar y Gmail

Cuenta de Telegram

Entrega del bot e interacción

Hermes Agent

Modelo, orquestación, Telegram y programación

1. Instalar Python

LYNK requiere Python 3.11+.

Comprueba tu versión:

python --version

o:

python3 --version

Necesitas Python 3.11 o superior.

2. Instalar uv

LYNK usa uv para los entornos de Python y las dependencias.

macOS / Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh

Reinicia tu terminal y verifica:

uv --version

En Windows, instala uv siguiendo sus instrucciones para Windows y verifica el mismo comando desde PowerShell.

3. Clonar LYNK

git clone https://github.com/mariiammaysara/LYNK.git
cd LYNK

4. Instalar dependencias

uv sync --all-groups

Luego ejecuta las pruebas:

uv run pytest

LYNK tiene actualmente 220+ pruebas.

5. Crear un proyecto de Google Cloud

Abre Google Cloud Console:

https://console.cloud.google.com/

Crea un proyecto nuevo, por ejemplo:

lynk-agent

Luego ve a:

API y Servicios → Biblioteca

Habilita:

  • Google Calendar API

  • Gmail API

6. Configurar OAuth de Google

Ve a:

API y Servicios → Pantalla de consentimiento de OAuth

Elige Interna para una aplicación solo de Workspace o Externa para una cuenta de Gmail personal.

Añade los ámbitos de solo lectura:

https://www.googleapis.com/auth/calendar.readonly
https://www.googleapis.com/auth/gmail.readonly

Si la aplicación es externa y está en modo de prueba, añade tu propia cuenta de Google en Usuarios de prueba.

Luego ve a:

API y Servicios → Credenciales → Crear credenciales → ID de cliente de OAuth

Elige:

Aplicación de escritorio

Descarga las credenciales y guárdalas como:

credentials.json

en la raíz del proyecto:

LYNK/
├── credentials.json
├── rel_mcp/
├── scripts/
└── ...

El archivo ya está ignorado por Git.

Nunca lo incluyas en un commit.

7. Configurar el entorno

Crea tu archivo de entorno:

cp .env.example .env

En Windows PowerShell:

Copy-Item .env.example .env

Configura:

GOOGLE_CREDENTIALS_PATH=./credentials.json
OWNER_EMAIL=<your Google email>
TIMEZONE=<your timezone>

Para Egipto:

TIMEZONE=Africa/Cairo

8. Autenticarse con Google

Ejecuta:

uv run python scripts/google_check.py

Debería abrirse un navegador.

Inicia sesión con la cuenta de Google que configuraste y aprueba los permisos de solo lectura solicitados.

Una configuración correcta debería mostrar algo como:

connected as: you@example.com

En este punto, la parte de Google de LYNK está lista.

9. Crear un bot de Telegram

Abre Telegram y escribe a @BotFather.

Envía:

/newbot

Elige un nombre para mostrar y un nombre de usuario que termine en bot.

BotFather te dará un token de bot.

Trátalo como una contraseña.

Abre el bot nuevo y pulsa Iniciar.

10. Configurar Hermes

Instala Hermes por separado y luego crea el perfil de LYNK:

hermes profile create lynk \
  --description "Meeting and relationship agent"

Configura un proveedor de modelos:

hermes -p lynk auth add openrouter

Usa otro proveedor compatible con Hermes si lo prefieres.

Establece tu zona horaria:

hermes -p lynk config set timezone Africa/Cairo

Configura Telegram:

hermes gateway setup

Proporciona el token del bot de Telegram cuando se te solicite.

11. Iniciar la puerta de enlace

hermes gateway run

Envía a tu bot un mensaje como:

What's my status with Acme?

o:

When did we last talk?

Luego verifica que una próxima reunión externa genere su informe programado.

Para las tareas programadas locales, tu ordenador debe permanecer encendido y conectado a internet.

Una vez que la configuración local funcione, despliega LYNK en un VPS Linux.

Un VPS es simplemente una máquina Linux remota que permanece en línea mientras tu propio ordenador está apagado.

1. Conectarse al servidor

Crea un VPS Linux y conéctate por SSH:

ssh youruser@YOUR_SERVER_IP

2. Preparar el servidor

sudo apt update
sudo apt upgrade -y
sudo apt install -y git curl

Verifica Python:

python3 --version

Instala uv:

curl -LsSf https://astral.sh/uv/install.sh | sh

Verifica:

uv --version

3. Instalar LYNK

git clone https://github.com/mariiammaysara/LYNK.git
cd LYNK

uv sync --all-groups
uv run pytest

Asegúrate de que las pruebas pasen antes de continuar.

4. Configurar el entorno

cp .env.example .env

Configura:

GOOGLE_CREDENTIALS_PATH=./credentials.json
OWNER_EMAIL=<your Google email>
TIMEZONE=<your timezone>

Copia credentials.json de forma segura al servidor.

Desde tu máquina local:

scp credentials.json youruser@YOUR_SERVER_IP:/path/to/LYNK/credentials.json

Luego en el servidor:

chmod 600 credentials.json

5. Autenticar Google

Un servidor sin interfaz gráfica normalmente no tiene navegador.

Si el flujo de OAuth necesita uno, crea un túnel SSH desde tu ordenador local:

ssh -L 8080:localhost:8080 youruser@YOUR_SERVER_IP

Mantén abierta esa sesión SSH.

En el servidor:

cd LYNK
uv run python scripts/google_check.py

Completa el inicio de sesión de Google en tu navegador local.

El estado de autenticación resultante debe permanecer en el servidor.

Nunca incluyas tokens o credenciales de OAuth en un commit.

6. Configurar Hermes

Instala Hermes en el servidor y crea el perfil:

hermes profile create lynk \
  --description "Meeting and relationship agent"

hermes -p lynk auth add openrouter
hermes -p lynk config set timezone Africa/Cairo
hermes gateway setup

Introduce el token del bot de Telegram.

Prueba manualmente primero:

hermes gateway run

Envía un mensaje de Telegram y asegúrate de que funciona.

No configures systemd hasta que esta prueba manual tenga éxito.

7. Ejecutarlo permanentemente

Encuentra el ejecutable de Hermes:

which hermes

Crea:

sudo nano /etc/systemd/system/lynk.service

Usa:

[Unit]
Description=LYNK Hermes gateway
After=network.target

[Service]
Type=simple
User=youruser
WorkingDirectory=/opt/lynk
ExecStart=/usr/local/bin/hermes gateway run
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

Ajusta User, WorkingDirectory y ExecStart para tu servidor.

Luego:

sudo systemctl daemon-reload
sudo systemctl enable lynk
sudo systemctl start lynk

Comprueba:

sudo systemctl status lynk

Sigue los registros con:

sudo journalctl -u lynk -f

LYNK se iniciará automáticamente después de un reinicio del servidor y seguirá ejecutándose después de que te desconectes de SSH.

Antes de considerar que la implementación está completa:

[ ] Python 3.11+ installed
[ ] uv installed
[ ] LYNK dependencies installed
[ ] pytest passes
[ ] Google Calendar API enabled
[ ] Gmail API enabled
[ ] OAuth credentials configured
[ ] Google authentication succeeds
[ ] Telegram bot created
[ ] Telegram bot responds
[ ] Hermes profile configured
[ ] Model provider works
[ ] Hermes gateway works manually
[ ] systemd service starts
[ ] Service survives SSH logout
[ ] Service starts after reboot
[ ] Scheduled brief arrives

Mantén los secretos fuera de Git

Nunca incluyas en un commit:

.env
credentials.json
OAuth tokens
Telegram bot tokens
API keys
private databases

Protege el servidor

Usa claves SSH siempre que sea posible y evita exponer puertos innecesarios.

Protege Telegram

Trata el token del bot de Telegram como una contraseña.

Si se expone, revócalo o regenéralo a través de BotFather.

Protege los datos de las relaciones

La base de datos local puede contener información sobre contactos, organizaciones, reuniones, compromisos y conversaciones.

Trata el servidor y sus copias de seguridad como almacenes de datos sensibles.

Permisos de Google

La integración de Google de LYNK usa ámbitos de solo lectura de Calendar y Gmail.


Arquitectura

LYNK separa la lógica de negocio determinista del razonamiento del agente.

Calendar + Gmail + CRM
          │
          ▼
     ┌──────────┐
     │ rel_mcp  │
     │ facts +  │
     │  rules   │
     └────┬─────┘
          │
          ▼
     ┌──────────┐
     │  Hermes  │
     │   agent  │
     └────┬─────┘
          │
          ▼
       Telegram

rel_mcp es responsable de la recuperación, el estado de las relaciones, la clasificación y las reglas de negocio deterministas.

Hermes proporciona el modelo, la orquestación, Telegram, la programación y la capa de aprobación.

El LLM no es la fuente de verdad.


Desarrollado

Core — built & tested

Additional — built & tested

✓ Inteligencia previa a la reunión

✓ Resumen semanal de relaciones

✓ Registro de relaciones

✓ Recordatorios diarios de compromisos

✓ Seguimiento de compromisos

✓ Delegación de tareas

✓ Detección de vencimientos

✓ Interruptor de apagado remoto

✓ Consultas instantáneas de relaciones

✓ Grabación y transcripción posterior a la reunión

✓ Extracción de decisiones y compromisos


Para los detalles de implementación y el razonamiento detrás de las reglas deterministas, el manejo de confirmaciones, el contrato de entorno y las decisiones de prueba, consulta README.dev.md.


Creado por Mariam Maysara

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to build and query temporally-aware knowledge graphs from conversations and data, maintaining persistent memory of entities, relationships, and facts across interactions.
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to persist and retrieve memories via a personal knowledge graph, with tools for emotional intelligence, CRM, life management, social features, self-training, and autonomous insights.
    116
    5
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides persistent knowledge graph memory for AI agents, enabling them to store, recall, and query facts about people, projects, and relationships across sessions.
    MIT

View all related MCP servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mariiammaysara/LYNK'

If you have feedback or need assistance with the MCP directory API, please join our Discord server