Skip to main content
Glama
Toligrim

letopis-mcp

by Toligrim

πŸ“œ Π›Π΅Ρ‚ΠΎΠΏΠΈΡΡŒ (Letopis)

Π”Π²ΠΈΠΆΠΎΠΊ Π°Ρ€Ρ…ΠΈΠ²Π° ΠΈ ΡƒΠΌΠ½ΠΎΠ³ΠΎ поиска ΠΏΠΎ истории Telegram-Ρ‡Π°Ρ‚ΠΎΠ²

Π‘Ρ‹Ρ€Ρ‹Π΅ сообщСния Π² JSONL Β· полнотСкстовый поиск с русской ΠΌΠΎΡ€Ρ„ΠΎΠ»ΠΎΠ³ΠΈΠ΅ΠΉ Β· ΠΊΠ°Ρ‡Π°Π»ΠΊΠ° с ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠΌ

Python 3.10+ Telethon SQLite FTS5 License


ИдСя

Π›Π΅Ρ‚ΠΎΠΏΠΈΡΡŒ β€” это Π½Π΅ Π±ΠΎΡ‚ ΠΈ Π½Π΅ сСрвис, Π° CLI-инструмСнт, Π·Π°Ρ‚ΠΎΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ LLM-Π°Π³Π΅Π½Ρ‚ (Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Claude Code) ΠΌΠΎΠ³ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ Π²Π°ΡˆΠΈΡ… Telegram-Ρ‡Π°Ρ‚ΠΎΠ² ΠΈ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ ΠΏΠΎ Π½Π΅ΠΉ Π½Π° вопросы, ΠΊΠ°ΠΊ ΠΏΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ Π±Π°Π·Π΅ Π·Π½Π°Π½ΠΈΠΉ.

Архив хранится ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ β€” .jsonl, ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ Π½Π° Ρ‡Π°Ρ‚ ΠΈ мСсяц, append-only. ΠŸΠΎΠ²Π΅Ρ€Ρ… Π½ΠΈΡ… строится индСкс SQLite с полнотСкстовым поиском (FTS5), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚ русскиС словоформы: запрос «хостинг» Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ сообщСния со словом «хостингами». К поиску ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠΈ голосовых, ΠΈΠΌΠ΅Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ тСкст опросов.

$ ./tg search ΠΏΠ΅Ρ€Π΅Π΅Π·Π΄ хостинг --chat devops --from 2025-06

Π”Π²ΠΈΠΆΠΎΠΊ ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Ρ‹. Π­Ρ‚ΠΎΡ‚ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ содСрТит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ΄ β€” сами Π°Ρ€Ρ…ΠΈΠ²Ρ‹ Ρ‡Π°Ρ‚ΠΎΠ², config.toml, .env ΠΈ сСссия Telegram ΠΆΠΈΠ²ΡƒΡ‚ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄Π΅Ρ€ΠΆΠΈΡ‚ вас Π² ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ Π½Π°Π΄ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½ΠΎ, Π° Ρ‡Ρ‚ΠΎ Π½Π΅Ρ‚. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ β€” Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ «Устройство».


Related MCP server: telegram-user-mcp

✨ ВозмоТности

πŸ”Ž ΠŸΠΎΠ»Π½ΠΎΡ‚Π΅ΠΊΡΡ‚ΠΎΠ²Ρ‹ΠΉ поиск

SQLite FTS5 + pymorphy3: ΠΈΡ‰Π΅Ρ‚ ΠΏΠΎ Π»Π΅ΠΌΠΌΠ°ΠΌ, Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΌ словам

πŸ“¦ Архив ΠΊΠ°ΠΊ Ρ„Π°ΠΉΠ»Ρ‹

archive/<chat_id>/<YYYY-MM>.jsonl, append-only, Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ пСрСписываСтся Π·Π°Π΄Π½ΠΈΠΌ числом

⬇️ ΠšΠ°Ρ‡Π°Π»ΠΊΠ° с ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠΌ

download / sync Π΄ΠΎΠΊΠ°Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½ΠΎΠ²ΠΎΠ΅; manifest.json ΠΏΠΎΠΌΠ½ΠΈΡ‚, Ρ‡Ρ‚ΠΎ отслСТиваСтся

πŸŽ™οΈ Вранскрипция голосовых

локально (faster-whisper), Ρ‡Π΅Ρ€Π΅Π· Telegram Premium ΠΈΠ»ΠΈ OpenAI Whisper API

🌐 Π’Π΅Π±-просмотрщик

Ρ‡Π°Ρ‚Ρ‹ β†’ Ρ‚ΠΎΠΏΠΈΠΊΠΈ-Ρ‡ΠΈΠΏΡ‹, бСсконСчная ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ°, Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹, ΠΏΠ»Π΅Π΅Ρ€ голосовых, ΠΏΡ€Ρ‹ΠΆΠΊΠΈ ΠΏΠΎ рСплаям

⌨️ TUI-просмотрщик

Ρ‚ΠΎΡ‚ ΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅ (textual)

πŸ‘₯ НСсколько Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠ²

Ρ€Π°Π·Π½Ρ‹Π΅ Ρ‡Π°Ρ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Telegram-Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°ΠΌΠΈ

πŸ€– Π—Π°Ρ‚ΠΎΡ‡Π΅Π½ ΠΏΠΎΠ΄ Π°Π³Π΅Π½Ρ‚ΠΎΠ²

JSON-Π²Ρ‹Π²ΠΎΠ΄, ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Ρ‹Π΅ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹, ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ CLI-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚


πŸš€ Быстрый старт

git clone https://github.com/Toligrim/letopis.git
cd letopis
python3 -m venv .venv && .venv/bin/pip install -e .
.venv/bin/pip install faster-whisper   # ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ: локальная транскрипция голосовых

Π›Π΅Ρ‚ΠΎΠΏΠΈΡΡŒ β€” это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²ΠΈΠΆΠΎΠΊ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ Π°Ρ€Ρ…ΠΈΠ²Ρƒ, создайтС ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅ Ρ‚ΡƒΠ΄Π° ΠΎΠ±Ρ‘Ρ€Ρ‚ΠΊΡƒ ./tg:

#!/bin/sh
exec "$HOME/projects/letopis/.venv/bin/tg" "$@"

Π”Π°Π»ΡŒΡˆΠ΅ всё запускаСтся ΠΈΠ· корня рСпозитория с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ:

chmod +x tg
./tg login              # авторизация Telegram-сСссии (Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ / ΠΊΠΎΠ΄ / 2FA)
./tg download --chat mychat --media all
./tg index && ./tg meta
./tg search ΠΏΡ€ΠΈΠ²Π΅Ρ‚

Π”Π²ΠΈΠΆΠΎΠΊ сам Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊΠΎΡ€Π΅Π½ΡŒ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ: ΠΏΡ€ΠΈ запускС tg ΠΈΡ‰Π΅Ρ‚ ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π²Π²Π΅Ρ€Ρ… ΠΏΠ°ΠΏΠΊΡƒ, Π³Π΄Π΅ рядом Π»Π΅ΠΆΠ°Ρ‚ config.toml ΠΈ archive/ (Π»ΠΈΠ±ΠΎ это явно задаётся ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ окруТСния TG_ROOT).

πŸ€– Read-only MCP для ChatGPT

Letopis ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ read-only MCP retrieval gateway для ChatGPT: сСрвСр ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ‚ΠΎΡ‚ ΠΆΠ΅ data/index.db, Ρ‡Ρ‚ΠΎ ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ поиск, Π½ΠΎ ΠΎΡ‚Π΄Π°Ρ‘Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡΡ‚ΡŒ бСзопасных retrieval-инструмСнтов β€” ΠΎΠ±Π·ΠΎΡ€ Π°Ρ€Ρ…ΠΈΠ²Π°, поиск, Π°Π³Ρ€Π΅Π³Π°Ρ‚Ρ‹, Π²Ρ‹Π±ΠΎΡ€ΠΊΡƒ сообщСний ΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ контСкст. MCP-процСсс Π½Π΅ синхронизируСт Telegram, Π½Π΅ скачиваСт Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ Π½Π΅ мСняСт индСкс.

Установка ΠΈ запуск

УстановитС MCP SDK ΠΈ тСстовыС зависимости Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π΄Π²ΠΈΠΆΠΊΠ°:

.venv/bin/pip install -e ".[mcp,test]"

Запуск Ρ‡Π΅Ρ€Π΅Π· entrypoint:

.venv/bin/letopis-mcp

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Π°Ρ Ρ„ΠΎΡ€ΠΌΠ° β€” .venv/bin/python -m tgarchive.mcp.server. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ сСрвСр ΡΠ»ΡƒΡˆΠ°Π΅Ρ‚ http://127.0.0.1:8765/mcp ΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ loopback-адрСса. Для production Π·Π°Π΄Π°ΠΉΡ‚Π΅ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ сСкрСт курсоров ΠΈ ΠΏΡƒΡ‚ΡŒ ΠΊ индСксу Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ процСсса, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

export LETOPIS_MCP_DB=/srv/letopis-data/data/index.db
export LETOPIS_MCP_CURSOR_SECRET='случайный-Π΄Π»ΠΈΠ½Π½Ρ‹ΠΉ-сСкрСт'
.venv/bin/letopis-mcp

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ окруТСния

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

НазначСниС

LETOPIS_MCP_DB

Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ [general].db ΠΈΠ· config.toml, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ data/index.db

ΠŸΡƒΡ‚ΡŒ ΠΊ SQLite-индСксу; ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ считаСтся ΠΎΡ‚ корня ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

LETOPIS_MCP_CURSOR_SECRET

Π½Π΅Ρ‚; Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ случайный сСкрСт Π½Π° процСсс

HMAC-SHA256 для Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹Ρ… курсоров. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»Π΅Π½ Π² production: Π±Π΅Π· Π½Π΅Π³ΠΎ курсоры Π½Π΅ ΠΏΠ΅Ρ€Π΅ΠΆΠΈΠ²Π°ΡŽΡ‚ рСстарт процСсса.

LETOPIS_MCP_HOST

127.0.0.1

Loopback-адрСс bind; ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ отклоняСт Π½Π΅Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ адрСса.

LETOPIS_MCP_PORT

8765

TCP-ΠΏΠΎΡ€Ρ‚ Streamable HTTP endpoint.

LETOPIS_MCP_LOG_LEVEL

INFO

Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ структурированных Π»ΠΎΠ³ΠΎΠ² (DEBUG, INFO, WARNING, ERROR, CRITICAL).

LETOPIS_MCP_MAX_CONCURRENCY

8

ΠœΠ°ΠΊΡΠΈΠΌΡƒΠΌ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с read-only Π‘Π”.

LETOPIS_MCP_QUERY_TIMEOUT_SECONDS

30.0

Π”Π΅Π΄Π»Π°ΠΉΠ½ SQLite-запроса ΠΈ оТидания слота concurrency.

LETOPIS_MCP_ROLLING_CALLS_MAX

60

ΠœΠ°ΠΊΡΠΈΠΌΡƒΠΌ Π·Π°Π²Π΅Ρ€ΡˆΡ‘Π½Π½Ρ‹Ρ… Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² Π² глобальном rolling-ΠΎΠΊΠ½Π΅.

LETOPIS_MCP_ROLLING_CHARS_MAX

250000

ΠœΠ°ΠΊΡΠΈΠΌΡƒΠΌ ΠΎΡ‚Π΄Π°Π½Π½Ρ‹Ρ… символов Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ ΠΎΠΊΠ½Π΅.

LETOPIS_MCP_ROLLING_WINDOW_SECONDS

600

Π”Π»ΠΈΠ½Π° rolling-ΠΎΠΊΠ½Π° Π² сСкундах.

Rate limit Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ для ΠΎΠ΄Π½ΠΎΠ³ΠΎ процСсса: Π² v1 Π½Π΅Ρ‚ OAuth ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… principals, поэтому это Π½Π΅ per-user ACL. MCP Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ эти ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΊ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ процСсса ΠΈ Π½Π΅ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ .env автоматичСски.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ ChatGPT

РСкомСндуСмая схСма Π½Π΅ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ΅Ρ‚ Letopis Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ:

ChatGPT ↔ OpenAI Secure MCP Tunnel ↔ tunnel-client Π½Π° этом хостС
                                      ↔ 127.0.0.1:8765/mcp

ΠšΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈ шаги настройки Secure MCP Tunnel зависят ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ OpenAI workspace ΠΈ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ OpenAI. Π£Ρ‚ΠΎΡ‡Π½ΠΈΡ‚Π΅ ΠΈΡ… Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ; этот Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π½Π΅ Π²Ρ‹Π΄ΡƒΠΌΡ‹Π²Π°Π΅Ρ‚ Π½Π΅ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½ΡƒΡŽ OAuth/tunnel-ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ.

Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ deployment

MCP-процСссу Π½ΡƒΠΆΠ½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ data/index.db ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ SQLite sidecar-Ρ„Π°ΠΉΠ»Ρ‹ data/index.db-wal / data/index.db-shm. Π•ΠΌΡƒ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ доступны .env, telegram.session*, archive/, media ΠΈΠ»ΠΈ manifest. ЗапускайтС сСрвСр ΠΏΠΎΠ΄ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Unix-ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΡ€Π°Π²Π°ΠΌΠΈ, Π° ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡŽ выполняйтС ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ процСссом с Π½ΡƒΠΆΠ½Ρ‹ΠΌΠΈ ΠΏΡ€Π°Π²Π°ΠΌΠΈ записи.


πŸ—‚ Устройство

Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ/
β”œβ”€β”€ config.toml              # настройки: Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Ρ‹, транскрипция, Π²Π΅Π±-ΠΏΠΎΡ€Ρ‚
β”œβ”€β”€ .env                     # api_id / api_hash Telegram
β”œβ”€β”€ telegram.session         # сСссия Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π° (ΠΈ Π΄ΠΎΠΏ. сСссии ΠΈΠ· [accounts])
β”œβ”€β”€ tg -> letopis/.venv/bin/tg   # ΠΎΠ±Ρ‘Ρ€Ρ‚ΠΊΠ°-энтрипоинт
β”œβ”€β”€ data/
β”‚   └── index.db             # SQLite + FTS5 β€” ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΉ, пСрСсобираСтся
└── archive/
    β”œβ”€β”€ manifest.json        # ΠΊΠ°ΠΊΠΈΠ΅ Ρ‡Π°Ρ‚Ρ‹ отслСТиваСм, ΠΊΠ°ΠΊΠΈΠΌ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΌΠ΅Π΄ΠΈΠ° ΠΊΠ°Ρ‡Π°Π΅ΠΌ
    └── <chat_id>/
        β”œβ”€β”€ 2025-06.jsonl    # сырыС сообщСния этого мСсяца β€” источник истины
        β”œβ”€β”€ 2025-07.jsonl
        β”œβ”€β”€ transcripts.jsonl   # Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠΈ голосовых/ΠΊΡ€ΡƒΠΆΠΊΠΎΠ²
        β”œβ”€β”€ media_index.jsonl   # рССстр скачанных Ρ„Π°ΠΉΠ»ΠΎΠ²
        └── media/               # сами Ρ„Π°ΠΉΠ»Ρ‹
  • JSONL β€” источник истины. Π€Π°ΠΉΠ»Ρ‹ ΠΏΠΎ мСсяцам, sync Ρ‚ΠΎΠ»ΡŒΠΊΠΎ дописываСт Π½ΠΎΠ²Ρ‹Π΅ сообщСния, старыС Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Ρ‚Ρ€ΠΎΠ³Π°Π΅Ρ‚.

  • index.db β€” ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΉ слой. МоТно ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΈ ΠΏΠ΅Ρ€Π΅ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ (./tg index --rebuild) Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π±Π΅Π· ΠΏΠΎΡ‚Π΅Ρ€ΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

  • manifest.json β€” ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€. ΠŸΠ΅Ρ€Π΅ΠΆΠΈΠ²Π°Π΅Ρ‚ пСрСсборку индСкса; Ρ…Ρ€Π°Π½ΠΈΡ‚, ΠΊΠ°ΠΊΠΈΠ΅ Ρ‡Π°Ρ‚Ρ‹/Ρ‚ΠΎΠΏΠΈΠΊΠΈ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ ΠΌΠ΅Π΄ΠΈΠ° для Π½ΠΈΡ… ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ.

Π’Π°ΠΊΠΎΠ΅ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ (Π΄Π²ΠΈΠΆΠΎΠΊ Π² git, ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎ Β· Π΄Π°Π½Π½Ρ‹Π΅ β€” ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ, ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎ) позволяСт свободно Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ ΠΊΠΎΠ΄ΠΎΠΌ, Π½Π΅ рискуя ΡƒΡ‚Π΅Ρ‡ΠΊΠΎΠΉ пСрСписки.


🧭 ΠšΠΎΠΌΠ°Π½Π΄Ρ‹

Поиск β€” основноС для Π°Π³Π΅Π½Ρ‚Π°

Команда

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚

tg search <слова…>

ΠŸΠΎΠ»Π½ΠΎΡ‚Π΅ΠΊΡΡ‚ΠΎΠ²Ρ‹ΠΉ поиск. Π€Π»Π°Π³ΠΈ: --any (OR вмСсто AND), --chat, --topic, --sender, --from / --to, --media, --around N (контСкст Π²ΠΎΠΊΡ€ΡƒΠ³ Π½Π°Ρ…ΠΎΠ΄ΠΎΠΊ), --count, --by-chat / --by-topic / --by-sender (Π°Π³Ρ€Π΅Π³Π°Ρ‚Ρ‹), --rank (ΠΏΠΎ рСлСвантности), --json, --short N, --limit N|0

tg dump --chat X [--topic N]

Π₯ронологичСский кусок пСрСписки Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ

tg context --chat X --id N

БообщСния Π²ΠΎΠΊΡ€ΡƒΠ³ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ (--before / --after / --whole-chat)

tg chats

ΠžΠ±Π·ΠΎΡ€ Ρ‡Π°Ρ‚ΠΎΠ² Π² Π°Ρ€Ρ…ΠΈΠ²Π΅

tg topics --chat X

Π’ΠΎΠΏΠΈΠΊΠΈ Ρ„ΠΎΡ€ΡƒΠΌ-Ρ‡Π°Ρ‚Π°

tg status

БостояниС Π°Ρ€Ρ…ΠΈΠ²Π° ΠΈ индСкса

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Ρ‰ΠΈΠΊΠΈ β€” Ρ€ΡƒΡ‡Π½ΠΎΠΉ Ρ€Π΅ΠΆΠΈΠΌ

Команда

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚

tg web

Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π²Π΅Π±-интСрфСйс: Ρ‡Π°Ρ‚Ρ‹ β†’ Ρ‚ΠΎΠΏΠΈΠΊΠΈ-Ρ‡ΠΈΠΏΡ‹, бСсконСчная ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ°, поиск с Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°ΠΌΠΈ, ΠΏΡ€Ρ‹ΠΆΠΎΠΊ ΠΊ Π΄Π°Ρ‚Π΅, Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ ΠΏΠΎ Π°Π²Ρ‚ΠΎΡ€Ρƒ (ΠΊΠ»ΠΈΠΊ ΠΏΠΎ Π½ΠΈΠΊΡƒ), Ρ„ΠΎΡ‚ΠΎ/Π²ΠΈΠ΄Π΅ΠΎ ΠΈΠ½Π»Π°ΠΉΠ½, ΠΏΠ»Π΅Π΅Ρ€ голосовых с Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠΎΠΉ, Ρ€Π΅ΠΏΠ»Π°ΠΈ с ΠΏΡ€Ρ‹ΠΆΠΊΠΎΠΌ ΠΏΠΎ Ρ‚Ρ€Π΅Π΄Ρƒ, ссылки t.me. ΠŸΠΎΡ€Ρ‚ β€” Π² config.toml [web]

tg tui

Π’ΠΎ ΠΆΠ΅ самоС Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅: / поиск Β· g Π΄Π°Ρ‚Π° Β· s Π°Π²Ρ‚ΠΎΡ€ Β· o/n старСС/Π½ΠΎΠ²Π΅Π΅ Β· c контСкст Β· m ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π² Telegram Β· f ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Β· Esc Π½Π°Π·Π°Π΄ Β· q Π²Ρ‹Ρ…ΠΎΠ΄

ΠšΠ°Ρ‡Π°Π»ΠΊΠ° ΠΈ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€

Команда

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚

tg dialogs

ВсС Ρ‡Π°Ρ‚Ρ‹ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π° (βœ“ β€” ΡƒΠΆΠ΅ Π² Π°Ρ€Ρ…ΠΈΠ²Π΅)

tg download --chat <имя|id|@user>

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Ρ‡Π°Ρ‚/Ρ‚ΠΎΠΏΠΈΠΊΠΈ ΠΈ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π½Π° отслСТиваниС. Π€Π»Π°Π³ΠΈ: --topic N, --from 2025-01, --media photo,voice|all|none

tg sync [--chat X]

Π”ΠΎΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ сообщСния всСх отслСТиваСмых Ρ‡Π°Ρ‚ΠΎΠ²

tg media --chat X --media voice

Π”ΠΎΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ для ΡƒΠΆΠ΅ скачанных сообщСний

tg transcribe [--provider …]

Π Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Ρ‚ΡŒ голосовыС Π² тСкст, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ ΠΏΠΎΠΏΠ°Π» Π² поиск

tg untrack --chat X

Π‘Π½ΡΡ‚ΡŒ Ρ‡Π°Ρ‚ с отслСТивания (Ρ„Π°ΠΉΠ»Ρ‹ ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π½Π° дискС)

tg meta / tg index

ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ названия Ρ‡Π°Ρ‚ΠΎΠ² / Π΄ΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π°Ρ€Ρ…ΠΈΠ²

tg login [--account имя]

ΠΠ²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Telegram-сСссию (Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ / ΠΊΠΎΠ΄ / 2FA)

Π§Π°Ρ‚ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ id, алиас ΠΈΠ· config.toml, Ρ‡Π°ΡΡ‚ΡŒ названия, @username ΠΈΠ»ΠΈ ссылку t.me/.... НовыС сообщСния ΡΠΊΠ°Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ со всСми рСакциями, опросами ΠΈ сСрвисными событиями.


πŸŽ™ Вранскрипция голосовых

ΠŸΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ задаётся Π² config.toml [transcription]:

ΠŸΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€

Π‘Ρ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ

ВрСбования

whisper-local

бСсплатно, локально

faster-whisper, модСль small ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

telegram

бСсплатно

Telegram Premium Π½Π° Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π΅

openai

ΠΏΠ»Π°Ρ‚Π½ΠΎ (Whisper API)

OPENAI_API_KEY Π² .env


πŸ‘₯ НСсколько Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠ²

[accounts]
default = "telegram.session"
backup  = "sessions/backup.session"

tg login --account backup Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΡƒΠ΅Ρ‚ Π½ΠΎΠ²ΡƒΡŽ сСссию. Π£ download / sync / dialogs / meta Π΅ΡΡ‚ΡŒ Ρ„Π»Π°Π³ --account. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‡Π°Ρ‚ Π² манифСстС Π·Π°ΠΊΡ€Π΅ΠΏΠ»Ρ‘Π½ Π·Π° своим Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠΌ.


πŸ—Ί Бтатус

Π­Ρ‚Π°ΠΏ

Бтатус

Π§Ρ‚ΠΎ Π²Ρ…ΠΎΠ΄ΠΈΡ‚

A

βœ… Π³ΠΎΡ‚ΠΎΠ²ΠΎ

ИндСкс, поиск, CLI, интСграция с Claude Code

B

βœ… Π³ΠΎΡ‚ΠΎΠ²ΠΎ

ΠšΠ°Ρ‡Π°Π»ΠΊΠ° (download/sync, append-only), ΠΌΠ΅Π΄ΠΈΠ° ΠΏΠΎ настройкам, бэкфилл, транскрипция, ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ (manifest.json), нСсколько Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠ², FloodWait-Π·Π°Ρ‰ΠΈΡ‚Π°

C

βœ… Π³ΠΎΡ‚ΠΎΠ²ΠΎ

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Ρ‰ΠΈΠΊΠΈ: tg web (Π±Ρ€Π°ΡƒΠ·Π΅Ρ€, ΠΌΠ΅Π΄ΠΈΠ°) ΠΈ tg tui (Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»)

Π”Π°Π»ΡŒΡˆΠ΅: автосинк ΠΏΠΎ Ρ€Π°ΡΠΏΠΈΡΠ°Π½ΠΈΡŽ, OCR ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ, Azure Speech-ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€, экспорт Π²Ρ‹Π±ΠΎΡ€ΠΎΠΊ.


πŸ”’ Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ

telegram.session ΠΈ .env Π΄Π°ΡŽΡ‚ ΠΏΠΎΠ»Π½Ρ‹ΠΉ доступ ΠΊ Telegram-Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Ρƒ. Π”Π΅Ρ€ΠΆΠΈΡ‚Π΅ ΠΈΡ… Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Π½Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚ΡŒΡ‚Π΅ Π² этот ΠΈ Π½ΠΈΠΊΡƒΠ΄Π° Π½Π΅ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠΉΡ‚Π΅.


Π‘Π΄Π΅Π»Π°Π½ΠΎ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π°Π³Π΅Π½Ρ‚ ΠΏΠΎΠΌΠ½ΠΈΠ» пСрСписку Π»ΡƒΡ‡ΡˆΠ΅, Ρ‡Π΅ΠΌ Π²Ρ‹ сами.

F
license - not found
Not graded
quality - not tested
B
maintenance

Maintenance

–Maintainers
–Response time
–Release cycle
–Releases (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 Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    An MCP server that connects to Telegram as your real user account and exposes read-only tools to read and search messages, list chats and folders, inspect group info, and download media.
    9
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    A local MCP server that enables full-text and semantic search over your own Telegram chats using your personal MTProto login, with everything running locally.
    7
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Read-only MCP server for Telegram chats and channels that provides digest summaries, message search, and action items.
    27
    MIT

View all related MCP servers

Related MCP Connectors

  • Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.

  • Search your AI chat history (ChatGPT, Claude, Codex) from any MCP client. Remote, private, read-only

  • Telegram bridge for your MCP-compatible agent. Bidirectional, no LLM in our stack.

View all MCP Connectors

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/Toligrim/Letopis-mcp'

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