Command Palette

Search for a command to run...

UnylyUnyly
Browse all

TelegramMCP

FreeNot checked

MCP server that sends Telegram notifications with project name and completion status via a single tool notify_task_done, supporting StreamableHTTP and stdio tra

GitHubEmbed

About

MCP server that sends Telegram notifications with project name and completion status via a single tool notify_task_done, supporting StreamableHTTP and stdio transports.

README

Сервер с протоколом MCP — единственный инструмент: отправляет в Telegram название проекта и статус завершения. Работает в двух вариантах транспорта: StreamableHTTP (FastAPI) и stdio (stdin/stdout).

Возможности

  • 🚀 MCP-сервер с инструментом notify_task_done(project_name, status)
  • 📡 StreamableHTTP транспорт — FastAPI-сервер на порту 8000
  • 💬 Stdio транспорт — stdin/stdout для MCP-клиентов
  • 📱 Отправка уведомлений в Telegram (через python-telegram-bot)
  • 🌐 Прокси SOCKS5 (по умолчанию socks5://192.168.0.250:2081)
  • 🧪 Unit-тесты (mock, без сети)

Требования

  • Python 3.11+
  • Windows 10/11 (PowerShell 5.1)

Установка

# Создание виртуального окружения
python -m venv venv

# Установка зависимостей (используем прямой вызов python)
.\venv\Scripts\python.exe -m pip install --upgrade pip
.\venv\Scripts\python.exe -m pip install -r requirements.txt

# Настройка переменных окружения
copy .env.example .env
# Отредактируйте .env: BOT_TOKEN, TG_CHAT_ID и т.д.

Запуск

HTTP (StreamableHTTP)

# Запуск HTTP-сервера (двойной вызов, без активации venv)
.\venv\Scripts\python.exe main.py

Или через батник:

.\run_server.bat

Сервер запустится на 127.0.0.1:8000, MCP-эндпоинт доступен на /mcp.

Stdio

# Запуск MCP-сервера через stdin/stdout
.\venv\Scripts\python.exe mcp_stdio.py

Подключение MCP-клиента

Ниже примеры конфигурации для подключения MCP-клиента (Claude Desktop, opencode, VS Code и т.д.) к каждому транспорту.

Конфиг для HTTP (StreamableHTTP)

{
  "mcpServers": {
    "telegram": {
      "type": "streamableHttp",
      "url": "http://127.0.0.1:8000/mcp"
    }
  }
}

Конфиг для STDIO

{
  "mcpServers": {
    "telegram": {
      "type": "stdio",
      "command": ".\\venv\\Scripts\\python.exe",
      "args": ["mcp_stdio.py"],
      "cwd": "<путь к корню проекта, например C:\\Projects\\TelegramMCP>"
    }
  }
}

cwd можно опустить — mcp_stdio.py сам добавляет свою директорию в sys.path, поэтому сервер запустится из любого рабочего каталога. Путь к python.exe должен быть абсолютным или указываться относительно cwd.

Переменные окружения (.env)

Переменная Описание По умолчанию
BOT_TOKEN Токен Telegram-бота CHANGE_ME
TG_CHAT_ID ID чата для уведомлений 0
PROXY_URL URL SOCKS5-прокси socks5://192.168.0.250:2081
PROXY_LOGIN Логин прокси (пусто = без auth) ""
PROXY_PASSWORD Пароль прокси ""
HOST Адрес привязки 127.0.0.1
PORT Порт сервера 8000
LOG_LEVEL Уровень логов INFO

Использование MCP-инструмента

Сервер предоставляет один инструмент MCP:

notify_task_done(project_name: str, status: str, message: str?)

Проект поддерживает два транспорта — оба используют одинаковую логику (app/server.py):

Транспорт Запуск MCP-эндпоинт
StreamableHTTP python main.py POST /mcp на порту 8000
stdio python mcp_stdio.py stdin / stdout

Вызов инструмента через HTTP

{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "notify_task_done",
    "arguments": {
      "project_name": "MyProject",
      "status": "completed",
      "message": "All green"
    }
  }
}

Вызов инструмента через stdio

MCP-клиент (например, Claude Desktop, VS Code) подключается к mcp_stdio.py напрямую через stdio. Сами JSON-RPC-сообщения передаются клиентом автоматически.

В Telegram будет отправлено сообщение: Задача "MyProject": completed

Тестирование

.\venv\Scripts\python.exe -m pytest tests/ -v

Все тесты используют mock — реальная сеть не используется. Подробности см. в tests/TEST_GUIDE.md.

from github.com/StandarterDF/TelegramMCP

Installing TelegramMCP

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/StandarterDF/TelegramMCP

FAQ

Is TelegramMCP MCP free?

Yes, TelegramMCP MCP is free — one-click install via Unyly at no cost.

Does TelegramMCP need an API key?

No, TelegramMCP runs without API keys or environment variables.

Is TelegramMCP hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install TelegramMCP in Claude Desktop, Claude Code or Cursor?

Open TelegramMCP on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare TelegramMCP with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All communication MCPs