Skip to main content
Glama
sh0tn1k

telegram-ads

by sh0tn1k

telegram-ads

Agent plugin for ads.telegram.org: typed tools, Playwright login, read-only watcher.

Give your agent the git URL. It installs itself. You do not host an MCP server.

MCP is local

The MCP entrypoint is a stdio child process the agent starts:

agent  --stdin/stdout JSON-RPC-->  python -m hermes_telegram_ads.mcp

No public port, no VPS daemon, no URL to keep alive. Chromium runs on the same machine as the agent. Same rule as Playwright MCP.

Related MCP server: OpenAI Ads MCP

Install

Hermes Agent

hermes plugins install https://github.com/sh0tn1k/telegram-ads.git --enable

Then follow after-install.md (venv pip, playwright install chromium, TELEGRAM_ADS_PHONE, gateway restart, telegram_ads_login_from_env + Accept in Telegram).

Grant watcher inject so the read-only watcher can wake a chat:

plugins:
  entries:
    telegram-ads:
      allow_gateway_injection: true

Claude Code

/plugin marketplace add https://github.com/sh0tn1k/telegram-ads.git
/plugin install telegram-ads@telegram-ads

Set TELEGRAM_ADS_PHONE in the environment. First mutating call uses Claude Code's own permission prompt (Hermes Once/Session/Always cards exist only on Hermes).

Other MCP agents (Cursor, …)

pip install -e '.[mcp]'
python -m playwright install chromium

Point the agent at this checkout:

{
  "mcpServers": {
    "telegram-ads": {
      "command": "python",
      "args": ["-m", "hermes_telegram_ads.mcp"]
    }
  }
}

First login (every host)

  1. TELEGRAM_ADS_PHONE in the host env (never in git).

  2. Call telegram_ads_login_from_env.

  3. Tap Accept in the Telegram app.

  4. Cookies stay in the persistent Chromium profile (TELEGRAM_ADS_HOME, or ~/.hermes/data/telegram_ads if Hermes is present, else ~/.telegram-ads).

Safety

  • Mutations require host approval (Hermes Once/Session/Always/Deny, or the MCP client's permission UI). Do not confirm by typing "yes".

  • Watcher is read-only. Do not start a second Playwright on the same Ads profile.

  • Do not start a second Telegram getUpdates poller. This plugin reuses the host bot.

  • Do not bind hermes serve / MCP HTTP on 0.0.0.0.

Not in this plugin

Telegram research (Telethon), GrokBot identity, channel portfolio, /sessions. Those stay on the operator host.

License

MIT

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • A
    license
    A
    quality
    D
    maintenance
    Stateful MCP server wrapping Playwright for browser automation. Provides tools to navigate, interact, and extract data from web pages via a persistent browser session.
    19
    1,251
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    Typed MCP server for OpenAI Ads and ChatGPT Ads via the Advertiser API. Supports account, campaign, ad group, ad, creative, audience, insight, and conversion tools with readonly mode and guarded writes.
    12
    3
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Integrates Telegram user account with MCP, exposing operations like reading and sending messages, managing chats, and more via stdio or SSE transport.
    Apache 2.0

View all related MCP servers

Related MCP Connectors

  • Multi-tenant Telegram gateway for AI agents — HTTP+stdio, 8 tools, MTProto User API

  • Telegram bridge for your MCP-compatible agent. Bidirectional, no LLM in our stack.

  • Browser MCP for logged-in tasks. Uses your Chrome — credentials stay local. Zero-token replay.

View all MCP Connectors

Latest Blog Posts

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/sh0tn1k/telegram-ads'

If you have feedback or need assistance with the MCP directory API, please join our Discord server