Featured

Deploy OpenClaw in 60 seconds — 20% off logoDeploy OpenClaw in 60 seconds — 20% off

Launch OpenClaw on Hostinger in about 60 seconds and keep your agent live 24/7. Our referral link gives you 20% off, no coupon code needed.

Launch on Hostinger
Run your Hermes agent on Hostinger, fully managed logoRun your Hermes agent on Hostinger, fully managed

Launch Hermes on Hostinger in one click, fully managed, no VPS knowledge needed. Use code ZACAARON10 for 10% off.

Launch on Hostinger
Crawl and scrape any site into clean data, 10% off logoCrawl and scrape any site into clean data, 10% off

Firecrawl crawls and scrapes any site into clean markdown for your agent. Get 1,000 free credits, and new users get 10% off their first purchase.

Try Firecrawl free
Your own AI agent, running 24/7 with QwikClaw logoYour own AI agent, running 24/7 with QwikClaw

QwikClaw sets up and runs an always-on OpenClaw agent for you. One click, no config files, no server setup.

Deploy now
One API to scrape, enrich, and extract the internet. logoOne API to scrape, enrich, and extract the internet.

Context.dev gives your agents a single API to scrape, enrich, and extract live web data — no proxies, no parsers, no maintenance.

Start building free
SetupClaw: done-for-you OpenClaw for founders & exec teams logoSetupClaw: done-for-you OpenClaw for founders & exec teams

White-glove OpenClaw for founders and exec teams (4–50+ employees): we install, harden, integrate your tools, and maintain it — secured from day one.

Get it set up for you
SEO data APIs for your agent, $1 free credit logoSEO data APIs for your agent, $1 free credit

DataForSEO gives your agent live access to SERP results, keyword data, backlinks, and on-page SEO data through one API. New accounts get a $1 credit, good for up to 20,000 keyword or backlink lookups.

Try DataForSEO free
Reach 47,000+ AI builders

A flat monthly placement in front of developers actively installing AI tools. No lock-in, cancel anytime.

Advertise here

Works with

Claude CodeClaude DesktopCursorVS CodeClineCodex CLIOpenClaw+ any MCP client

Install to Claude Code

This server doesn't publish a one-line install command. Follow the setup in the source repository.

Summary

Enables communication with users through Telegram, including asking questions, sending notifications, sharing files, and creating project archives via a bot.

README.md

MCP Communicator (Telegram)

An MCP server that enables communication with users through Telegram. This server provides tools to interact with users via a Telegram bot, including asking questions, sending notifications, sharing files, and creating project archives.

Installation

Via npm (global)

npm install -g mcp-communicator-telegram

Via npx (on-demand)

npx mcptelegram

To get your Telegram chat ID: ``bash npx mcptelegram-chatid ``

Features

  • Ask questions to users through Telegram
  • Send notifications to users (no response required)
  • Send files to users via Telegram
  • Create and send project zip files (respecting .gitignore)
  • Receive responses asynchronously (waits indefinitely for response)
  • Support for reply-based message tracking
  • Secure chat ID validation
  • Error handling and logging

Prerequisites

  • Node.js (v14 or higher)
  • A Telegram bot token (obtained from @BotFather)
  • Your Telegram chat ID (can be obtained using the included utility)

Installation

  1. Clone the repository:
git clone https://github.com/qpd-v/mcp-communicator-telegram.git
cd mcp-communicator-telegram
  1. Install dependencies:
npm install
  1. Create a Telegram bot:
  • Open Telegram and search for @BotFather
  • Send /newbot and follow the instructions
  • Save the bot token you receive
  1. Get your chat ID:
  • Copy .env.example to .env
  • Add your bot token to the .env file:
     TELEGRAM_TOKEN=your_bot_token_here
  • Run the chat ID utility:
     npm run build
     node build/get-chat-id.js
  • Send any message to your bot
  • Copy the chat ID that appears in the console
  • Add the chat ID to your .env file:
     TELEGRAM_TOKEN=your_bot_token_here
     CHAT_ID=your_chat_id_here

Configuration

Add the server to your MCP settings file (usually located at %APPDATA%\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\cline_mcp_settings.json on Windows):

{
  "mcpServers": {
    "mcp-communicator-telegram": {
      "command": "node",
      "args": ["path/to/mcp-communicator-telegram/build/index.js"],
      "env": {
        "TELEGRAM_TOKEN": "your_bot_token_here",
        "CHAT_ID": "your_chat_id_here"
      }
    }
  }
}

Available Tools

ask_user

Asks a question to the user via Telegram and waits for their response.

Input Schema: ``json { "type": "object", "properties": { "question": { "type": "string", "description": "The question to ask the user" } }, "required": ["question"] } ``

Example usage: ``typescript const response = await use_mcp_tool({ server_name: "mcp-communicator-telegram", tool_name: "ask_user", arguments: { question: "What is your favorite color?" } }); ``

notify_user

Sends a notification message to the user via Telegram (no response required).

Input Schema: ``json { "type": "object", "properties": { "message": { "type": "string", "description": "The message to send to the user" } }, "required": ["message"] } ``

Example usage: ``typescript await use_mcp_tool({ server_name: "mcp-communicator-telegram", tool_name: "notify_user", arguments: { message: "Task completed successfully!" } }); ``

send_file

Sends a file to the user via Telegram.

Input Schema: ``json { "type": "object", "properties": { "filePath": { "type": "string", "description": "The path to the file to send" } }, "required": ["filePath"] } ``

Example usage: ``typescript await use_mcp_tool({ server_name: "mcp-communicator-telegram", tool_name: "send_file", arguments: { filePath: "path/to/file.txt" } }); ``

zip_project

Creates a zip file of a project directory (respecting .gitignore patterns) and sends it to the user via Telegram.

Input Schema: ``json { "type": "object", "properties": { "directory": { "type": "string", "description": "Directory to zip (defaults to current working directory)" } }, "required": [] } ``

Example usage with default directory (current working directory): ``typescript await use_mcp_tool({ server_name: "mcp-communicator-telegram", tool_name: "zip_project", arguments: {} }); ``

Example usage with specific directory: ``typescript await use_mcp_tool({ server_name: "mcp-communicator-telegram", tool_name: "zip_project", arguments: { directory: "/path/to/your/project" } }); ``

Features:

  • Creates a zip file named [project-name]-project.zip based on the directory name
  • Can zip any specified directory or the current working directory
  • Respects .gitignore patterns
  • Maintains correct file paths in the archive
  • Automatically cleans up the zip file after sending
  • Handles files up to 2GB in size

Development

Build the project: ``bash npm run build ``

Run in development mode: ``bash npm run dev ``

Watch for changes: ``bash npm run watch ``

Clean build directory: ``bash npm run clean ``

Security

  • The server only responds to messages from the configured chat ID
  • Environment variables are used for sensitive configuration
  • Message IDs are used to track question/answer pairs
  • The bot ignores messages without proper context

License

ISC

Author

qpd-v

Version

0.2.1 # Major version bump for new features: notify_user, send_file, and zip_project tools

See related servers & alternatives →

Related MCP servers

Browse all →

Related guides

Hand-picked reading to help you choose and use Communication servers.