Skip to main content
Glama
RaspizDIYs

telegram-notes-mcp

by RaspizDIYs

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
TG_API_IDYesYour Telegram API ID from my.telegram.org
TG_API_HASHYesYour Telegram API hash from my.telegram.org
TG_BOT_TOKENNoBot token for the bot-message editor (optional)
TG_OLLAMA_URLNoURL of your Ollama server for semantic search (optional)http://localhost:11434
TG_EMBED_MODELNoEmbedding model name for semantic search (optional)nomic-embed-text
TG_OLLAMA_AUTHNoAuthentication token for Ollama if required (optional)
TG_CHAT_WHITELISTYesComma-separated usernames (e.g., @someone) and/or numeric chat IDs (e.g., -1001234567890); use 'me' for Saved Messages
TG_OWN_BOT_USERNAMENoYour bot username for analytics noise-filter (optional)

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_messagesC

Full-text search over indexed Telegram messages.

list_chatsA

List whitelisted chats with message counts and last activity date.

get_chat_contextB

Return messages surrounding a specific message in a chat.

semantic_searchA

Поиск сообщений по СМЫСЛУ (эмбеддинги), а не по точным словам. Требует предварительной индексации (embed_index / scripts/embed_backfill.py). Если обучен whitening-индекс (scripts/build_white_index.py) — использует retrieve-more + bge-rerank; иначе честный fallback на сырой nomic.

embed_indexA

Проиндексировать (сгенерировать эмбеддинги) одну пачку сообщений без вектора. Вызывать повторно, пока has_more=true. Для полной переиндексации удобнее scripts/embed_backfill.py.

sync_nowA

Force an incremental re-sync of all whitelisted chats.

transcribe_voicesA

Transcribe pending voice/video-note messages via Telegram's built-in transcription (requires the logged-in account to have Premium). Transcripts are written into messages.text so they flow into search, embeddings, bursts and topics. Returns {total, transcribed, failed}.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.5/5.0

Scored across 7 tools

Disambiguation5/5

Each tool has a distinct function: indexing, context retrieval, listing chats, full-text search, semantic search, syncing, and transcription. No two tools overlap in purpose.

Naming Consistency3/5

Naming is a mix of English and Russian, and patterns vary: verb_noun (list_chats), verb_adverb (sync_now), adjective_noun (semantic_search). All use snake_case, but the inconsistency reduces predictability.

Tool Count5/5

Seven tools is appropriate for the server's purpose of searching and analyzing Telegram messages. Each tool provides necessary functionality without excess.

Completeness4/5

Core workflows (indexing, searching, syncing, transcription) are covered. Missing explicit get/export message operations, but the set is largely complete for its intended use.

Maintenance

ActivityStale
ResponsivenessNo issues