Newer
Older
tgclient-mcp / .env.example
# tgclient-mcp — настройка. Скопировать в .env рядом с сервисом, chmod 600,
# значения секретов продублировать в gnexus-creds (канон handbook secrets.md).
# Секреты в git попадать не должны — файл в .gitignore.

# Порт HTTP-сервера (в compose уже проброшен; для голого uvicorn не используется)
TGCLIENT_PORT=8710
# Путь к SQLite-базе (в контейнере — том /data)
TGCLIENT_DB_PATH=/data/tgclient.db

# Статический супер-токен MCP-бэкдора (handbook mcp.md): `openssl rand -hex 32`.
# Пусто — работают только персональные ключи mcp_* (или cookie-сессии).
TGCLIENT_ADMIN_TOKEN=

# Креды приложения Telegram (one set на деплой — api_id идентифицирует
# приложение, не аккаунт; получить на my.telegram.org)
TGCLIENT_API_ID=
TGCLIENT_API_HASH=

# Лимиты
TGCLIENT_MAX_ACTIVE_ACCOUNTS=30      # максимум аккаунтов на пользователя
TGCLIENT_MEDIA_MAX_BYTES=20971520    # cap на download/upload через MCP, байт (20 МБ)
TGCLIENT_WRITE_LIMIT_N=20            # мутации через MCP: столько
TGCLIENT_WRITE_LIMIT_WINDOW=60       # ... за столько секунд, на аккаунт

# Пуш-события сообщений в Synapse (tg_message_received/edited/deleted) —
# payload несёт тексты переписки; включать осознанно (=1)
TGCLIENT_NOTIFY_MESSAGES=0

# gnexus-auth (SSO): задан client_id — браузерная авторизация через SSO;
# пусто — сервис открыт, все акки уходят локальному служебному юзеру
TGCLIENT_AUTH_BASE_URL=
TGCLIENT_AUTH_CLIENT_ID=
TGCLIENT_AUTH_CLIENT_SECRET=
TGCLIENT_AUTH_REDIRECT_URI=
TGCLIENT_AUTH_WEBHOOK_SECRET=
# пусто = любой залогиненный; через запятую — e-mail или user_id
TGCLIENT_AUTH_ALLOWLIST=
TGCLIENT_SESSION_TTL=604800          # TTL cookie-сессии, сек (7 суток)

# Gnexus Synapse (исходящие уведомления): пустой api_key = интеграция выключена
TGCLIENT_SYNAPSE_URL=
TGCLIENT_SYNAPSE_API_KEY=
TGCLIENT_SYNAPSE_DEFAULT_SOURCE=tgclient-mcp
TGCLIENT_SYNAPSE_TIMEOUT=10