Telegram Archive MCP

Pesquise mensagens, navegue por chats e acesse o histórico arquivado do Telegram a partir de uma instância auto-hospedada.

Documentação

Telegram Archive MCP banner

Telegram-Archive-MCP

codecov npm Go Docker Pulls GitHub Stars License

Official MCP Registry Glama MCP Server MCPServers.org mcp.so ToolSDK Registry listed on awesome-mcp-servers

Uma ponte mínima que expõe qualquer instância do Telegram-Archive como um servidor MCP, permitindo que LLMs pesquisem mensagens, naveguem por chats e acessem o histórico arquivado do Telegram.


O que você obtém

TipoPara que serveURI MCP / ID da ferramenta
RecursosNavegar por estatísticas do arquivo, chats e pastas somente leituratelegram-archive://stats
telegram-archive://chats
telegram-archive://folders
telegram-archive://health
FerramentasPesquisar e recuperar mensagens (paginação por deslocamento ou cursor de keyset; dias de calendário inteiros em um fuso horário), inspecionar estatísticas de chatsearch_messages
get_messages
get_pinned_messages
get_messages_by_date
get_chat_stats
get_topics
refresh_stats

Tudo é exposto por meio de um único endpoint JSON-RPC (/mcp). LLMs / Agentes podem: initialize -> readResource -> listTools -> callTool ... e assim por diante.


Início rápido (Docker Compose)

services:
  telegram-archive-mcp:
    image: drumsergio/telegram-archive-mcp:latest
    ports:
      - "127.0.0.1:8080:8080"
    environment:
      - TELEGRAM_ARCHIVE_URL=http://telegram-archive:3000
      - TELEGRAM_ARCHIVE_USER=your-username
      - TELEGRAM_ARCHIVE_PASS=your-password

Nota de segurança: O transporte HTTP escuta em 127.0.0.1:8080 por padrão. Se você precisar expô-lo em uma rede, coloque-o atrás de um proxy reverso com autenticação.

Instalação via npm (transporte stdio)

npx telegram-archive-mcp

Ou instale globalmente:

npm install -g telegram-archive-mcp
telegram-archive-mcp

Isso baixa o binário Go pré-compilado do GitHub Releases para sua plataforma e o executa com transporte stdio. Requer pelo menos um lançamento publicado.

Build local

git clone https://github.com/GeiserX/telegram-archive-mcp
cd telegram-archive-mcp

# (optional) create .env from the sample
cp .env.example .env && $EDITOR .env

go run ./cmd/server

Configuração

VariávelPadrãoDescrição
TELEGRAM_ARCHIVE_URLhttp://localhost:3000URL da instância do Telegram-Archive (sem barra final)
TELEGRAM_ARCHIVE_USER(vazio)Nome de usuário de login para autenticação de sessão via /api/login
TELEGRAM_ARCHIVE_PASS(vazio)Senha de login para autenticação de sessão via /api/login
LISTEN_ADDR127.0.0.1:8080Endereço de escuta HTTP (Docker define 0.0.0.0:8080)
MCP_AUTH_TOKEN(vazio)Token Bearer para autenticação HTTP (obrigatório se não for loopback)
TRANSPORT(vazio = HTTP)Defina como stdio para transporte stdio

Coloque-os em um arquivo .env (a partir de .env.example) ou defina-os no ambiente.

Testes

Testado com Inspector e atualmente totalmente funcional. Antes de fazer um PR, certifique-se de que este servidor MCP se comporte bem por esse meio.

Exemplo de configuração para LLMs clientes

{
  "schema_version": "v1",
  "name_for_human": "Telegram-Archive-MCP",
  "name_for_model": "telegram_archive_mcp",
  "description_for_human": "Search messages, browse chats, and access archived Telegram history.",
  "description_for_model": "Interact with a Telegram-Archive instance that stores archived Telegram messages. First call initialize, then reuse the returned session id in header \"Mcp-Session-Id\" for every other call. Use readResource to fetch URIs that begin with telegram-archive://. Use listTools to discover available actions and callTool to execute them.",
  "auth": {
    "type": "bearer",
    "token": "<your MCP_AUTH_TOKEN value>"
  },
  "api": {
    "type": "jsonrpc-mcp",
    "url":  "http://localhost:8080/mcp",
    "init_method": "initialize",
    "session_header": "Mcp-Session-Id"
  },
  "contact_email": "acsdesk@protonmail.com",
  "legal_info_url": "https://github.com/GeiserX/telegram-archive-mcp/blob/main/LICENSE"
}

Créditos

Telegram-Archive -- Arquivamento e pesquisa de mensagens do Telegram

MCP-GO -- Implementação moderna de MCP

GoReleaser -- Lançamentos multi-arquitetura sem dor

Mantenedores

@GeiserX.

Contribuindo

Sinta-se à vontade para mergulhar! Abra uma issue ou envie PRs.

Telegram-Archive-MCP segue o Código de Conduta do Contributor Covenant.

Outros Servidores MCP por GeiserX

Projetos Relacionados

ProjetoDescrição
Telegram-ArchiveBackups automáticos e incrementais do Telegram com visualizador web local
telegram-delay-channel-clonerBot do Telegram que retransmite mensagens entre canais com atraso configurável
telegram-slskd-local-botDescoberta e download automatizados de música via bot do Telegram com Soulseek
paperless-telegram-botGerencie documentos Paperless-NGX inteiramente pelo Telegram
n8n-nodes-telegram-archiveNó da comunidade n8n para Telegram-Archive