telegram-archive-mcp
This server bridges a Telegram-Archive instance to the Model Context Protocol, enabling LLMs to search, browse, and retrieve archived Telegram messages, chats, and statistics.
Tools:
search_messages: Search for messages in a specific chat by keyword, with a configurable result limit.get_messages: Retrieve paginated messages from a chat usinglimitandoffsetparameters.get_messages_by_date: Fetch messages from a chat on a specific date (YYYY-MM-DD), with optional IANA timezone support.get_pinned_messages: Retrieve all pinned messages from a specific chat.get_topics: List forum threads/topics from a specific chat.get_chat_stats: View statistics for a specific chat.refresh_stats: Force a recalculation of global archive statistics.
Resources (via telegram-archive:// URIs):
Browse archive-wide stats, list of chats, folders, and health status of the connected Telegram-Archive instance.
Enables searching archived Telegram messages, browsing chats and folders, and retrieving chat statistics through a Telegram-Archive instance.
What you get
Type | What for | MCP URI / Tool id |
Resources | Browse archive stats, chats, and folders read-only |
|
Tools | Search and retrieve messages, inspect chat statistics |
|
Everything is exposed over a single JSON-RPC endpoint (/mcp).
LLMs / Agents can: initialize -> readResource -> listTools -> callTool ... and so on.
Related MCP server: mcp-telegram
Quick-start (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-passwordSecurity note: The HTTP transport listens on
127.0.0.1:8080by default. If you need to expose it on a network, place it behind a reverse proxy with authentication.
Install via npm (stdio transport)
npx telegram-archive-mcpOr install globally:
npm install -g telegram-archive-mcp
telegram-archive-mcpThis downloads the pre-built Go binary from GitHub Releases for your platform and runs it with stdio transport. Requires at least one published release.
Local build
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/serverConfiguration
Variable | Default | Description |
|
| Telegram-Archive instance URL (without trailing /) |
| (empty) | Login username for session auth via |
| (empty) | Login password for session auth via |
|
| HTTP listen address (Docker sets |
| (empty) | Bearer token for HTTP auth (required if not loopback) |
| (empty = HTTP) | Set to |
Put them in a .env file (from .env.example) or set them in the environment.
Testing
Tested with Inspector and it is currently fully working. Before making a PR, make sure this MCP server behaves well via this medium.
Example configuration for client LLMs
{
"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"
}Credits
Telegram-Archive -- Telegram message archival and search
MCP-GO -- modern MCP implementation
GoReleaser -- painless multi-arch releases
Maintainers
Contributing
Feel free to dive in! Open an issue or submit PRs.
Telegram-Archive-MCP follows the Contributor Covenant Code of Conduct.
Other MCP Servers by GeiserX
cashpilot-mcp — Passive income monitoring
duplicacy-mcp — Backup health monitoring
genieacs-mcp — TR-069 device management
lynxprompt-mcp — AI configuration blueprints
pumperly-mcp — Fuel and EV charging prices
Related Projects
Project | Description |
Automated, incremental Telegram backups with a local web viewer | |
Telegram bot that relays messages between channels with configurable delay | |
Automated music discovery and download via Telegram bot with Soulseek | |
Manage Paperless-NGX documents entirely through Telegram | |
n8n community node for Telegram-Archive |
Maintenance
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
- Alicense-qualityCmaintenanceAn MCP server that enables interaction with Telegram to send, read, and search messages across chats and dialogs. It supports waiting for incoming messages and retrieving conversation history through natural language commands.Last updated354MIT
- Alicense-qualityDmaintenanceMCP server that connects AI assistants to your real Telegram account via User API (MTProto). Features default-deny ACL with per-chat permissions, message search, file sending, forwarding, media downloads, and rate limiting.Last updated2MIT
- Flicense-qualityBmaintenanceModel Context Protocol server for Telegram. Let AI read, search, send, and forward your Telegram messages.Last updated40
- Flicense-qualityCmaintenanceAn MCP server that connects to a Telegram group chat, persists messages to a local SQLite database, and exposes tools to search, retrieve, and send messages via SSE.Last updated
Related MCP Connectors
Search your AI chat history (ChatGPT, Claude, Codex) from any MCP client. Remote, private, read-only
MCP server for AI dialogue using various LLM models via AceDataCloud
Telegram bridge for your MCP-compatible agent. Bidirectional, no LLM in our stack.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/GeiserX/telegram-archive-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server