
Claude Ops Telegram Server
- 20 repo stars
- Updated July 26, 2026
- Lifecycle-Innovations-Limited/claude-ops
Claude Ops Telegram Server is a MCP server that connects your personal Telegram account for reading DMs, sending messages, and searching chats.
About
Claude Ops Telegram Server is a Model Context Protocol integration that logs into your personal Telegram account using MTProto user authentication, so an AI coding agent can read direct messages, send replies, and search across conversations. developers and operators install it when Telegram is their primary support or community channel and they want summaries, drafts, or lookups without constantly switching to the mobile app. It is not a classic bot-token integration: you create a personal app at my.telegram.org, supply API ID and hash, phone in E.164, and persist a gram.js StringSession after an interactive auth step. That model suits one-person businesses but demands careful secret handling because the session equals account access. Register the stdio server in Claude Code or Cursor for support workflows, outbound lifecycle nudges, or light distribution follow-ups. Treat credentials as production secrets and avoid shared machines without encryption.
- Personal Telegram account via MTProto user auth (not a BotFather bot-only flow)
- Read DMs, send messages, and search across chats from MCP tools
- Requires TELEGRAM_API_ID, API_HASH, PHONE, and SESSION from my.telegram.org setup
- One-time session generation: node index.js --auth (gram.js StringSession)
- stdio npm package claude-ops-telegram-server v0.2.1
Claude Ops Telegram Server by the numbers
- Data as of Jul 27, 2026 (Skillselion catalog sync)
claude mcp add --env TELEGRAM_API_ID=YOUR_TELEGRAM_API_ID --env TELEGRAM_API_HASH=YOUR_TELEGRAM_API_HASH --env TELEGRAM_PHONE=YOUR_TELEGRAM_PHONE --env TELEGRAM_SESSION=YOUR_TELEGRAM_SESSION claude-ops-telegram-server -- npx -y claude-ops-telegram-serverAdd your badge
Show developers this MCP server is listed on Skillselion. Paste this into your README.
| repo stars | ★ 20 |
|---|---|
| Package | claude-ops-telegram-server |
| Transport | STDIO |
| Auth | Required |
| Last updated | July 26, 2026 |
| Repository | Lifecycle-Innovations-Limited/claude-ops ↗ |
What it does
Let your coding agent read Telegram DMs, search chats, and send messages from your personal MTProto account for support and ops.
Who is it for?
Best when you run support and community on a personal Telegram account and want agent-assisted triage and replies.
Skip if: Skip if you need official Bot API-only automations, multi-tenant inboxes, or and refuse to store high-privilege session tokens.
What you get
Your agent gains MCP tools to search chats, read DMs, and send messages under your MTProto session after one-time auth.
- Agent tools to read DMs and search Telegram chats
- Ability to send messages from the authenticated personal account
By the numbers
- Server version 0.2.1
- Four required secret env vars: API_ID, API_HASH, PHONE, SESSION
- stdio transport via npm identifier claude-ops-telegram-server
README.md
claude-ops
Business Operating System for Claude Code
One command. Sixty seconds. Your entire business, at a glance.
╭──────────────────────────────────────────────────────────────────────────────╮
│ /ops:go ► MORNING BRIEFING 2026-04-12 09:03 │
├─────────────────────────────────┬────────────────────────────────────────────┤
│ INFRA ████████████████ ok │ ECS: 4/4 healthy RDS: ok Redis: ok │
│ CI/CD ████████████░░░░ 75% │ 3 passing 1 failing (my-api #847) │
│ INBOX ░░░░░░░░░░░░░░░░ 14 │ Slack: 9 Telegram: 3 Gmail: 2 unread │
│ PRs ████████████████ 3 │ 3 ready to merge 1 needs review │
│ SPRINT ████████████░░░░ 67% │ Sprint 24 — 8 of 12 issues complete │
│ REVENUE ████████████████ $ │ $2,847 MTD ↑12% vs last month │
├─────────────────────────────────┴────────────────────────────────────────────┤
│ Next action: merge feat/user-profile · fix my-api CI · reply @alice │
╰──────────────────────────────────────────────────────────────────────────────╯
Turn Claude Code into a complete business operating system — infrastructure health, CI/CD status, unified inbox, open PRs, sprint state, revenue snapshot (Stripe + RevenueCat + AWS), and autonomous C-suite agents that act on your behalf.
What's new in v2.0
v2 turns claude-ops from a briefing + comms surface into an autonomy layer for Claude Code itself. Purely additive — no v1 behaviour changes by default. See claude-ops/CHANGELOG.md and docs/migrating-from-v1.md.
| Capability | Skill | Doc |
|---|---|---|
| Post-merge + build-failure auto-fix (PostToolUse hooks → headless Haiku fixer) | /ops:deploy-fix |
deploy-fix.md |
Pre-installed specialist agents + silent general-purpose → specialist routing |
(transparent) | agents.md |
Universal safety hooks: secret-scan, rm -rf anchor block, main push warn |
(always-on) | safety-hooks.md |
Recap marquee — multi-session digest in tmux status-right / statusLine |
/ops:recap |
recap.md |
Multi-account Claude Max rotator with launchd daemon + AI-brain (jittered post-rotation respawn + /login re-auth so a freshly-rotated account isn't hit by a synchronized first-call burst) |
/ops:rotate, /ops:rotate-setup |
CHANGELOG |
| Periodic Task* tracking nudge | (PostToolUse hook) | CHANGELOG |
| Windsor.ai live marketing data source for ops dashboards, marketing, socials & ecom | /ops:marketing |
windsor-ai.md |
Quick start for the auto-fix subsystem
# 1. Upgrade
/plugin update ops@lifecycle-innovations-limited-claude-ops
# 2. Run the wizard (hits new steps 6.5a–6.5d for v2 toggles)
/ops:setup
# 3. Map your repos to their deploy URLs
/ops:deploy-fix configure
# (opens ~/.claude/config/post-merge-services.json)
# 4. From now on, every `gh pr merge` you run from Claude Code will:
# - poll the deploy workflow
# - curl /health on success
# - verify /version returns the merged SHA
# - on failure: auto-rerun transients, OR dispatch a Haiku deploy-fixer
/ops:deploy-fix # see status / budget / live runs
Per-repo budget caps (default 3/hour), single-flight locks, and content-hash dedup prevent runaway spending. Notifications route via macos/ntfy/pushover/discord/telegram/none. Every toggle is spacebar-toggleable in /plugins settings.
Quick Start
# 1. Add the marketplace
/plugin marketplace add Lifecycle-Innovations-Limited/claude-ops
# 2. Install the plugin
/plugin install ops@lifecycle-innovations-limited-claude-ops
# 3. Run the guided setup wizard
/ops:setup
[!TIP] The wizard installs the background daemon EARLY (Step 2c). While you're still answering "connect Slack? [OAuth/Skip]" questions,
briefing-pre-warmis already running every 2 minutes — pre-fetching ECS health, git state, PRs, CI, and unread counts. By the time setup finishes, your first/ops:gobriefing loads in <3 seconds from warm cache instead of ~30s cold.
Local development:
git clone https://github.com/Lifecycle-Innovations-Limited/claude-ops.git
claude --plugin-dir ./claude-ops/claude-ops
Commands
All 59 skills, grouped by category:
| 🧭 Navigation | 📊 Daily Ops |
|---|---|
/ops — pixel-art dashboard |
/ops:go — morning briefing |
/ops:dash — same + hotkeys |
/ops:next — priority next action |
/ops:setup — guided wizard |
/ops:inbox — deep-context inbox zero |
/ops:uninstall — clean removal |
/ops:comms — send/read any channel |
/ops:merge — autonomous PR pipeline |
| 🛠️ Project & Eng | 💰 Business |
|---|---|
/ops:projects — portfolio dashboard |
/ops:revenue — Stripe + RevenueCat + AWS |
/ops:linear — sprint board |
/ops:ecom — Shopify operations |
/ops:triage — cross-platform issues |
/ops:marketing — Klaviyo/Meta/GA4/GSC |
/ops:fires — incidents + all AWS |
/ops:gtm — cross-channel GTM planner |
/ops:deploy — ECS/Vercel/Actions |
/ops:voice — native + Twilio + Bland + Zoom + smart join |
/ops:monitor — Datadog/New Relic/OTEL |
/ops:package — carrier-agnostic shipping |
/ops:competitors — self-discovering competitor intel (v2.3) |
| 🤖 Automation | 🧰 Maintenance |
|---|---|
/ops:orchestrate — parallel engine |
/ops:speedup — GPU/ANE + power hogs + OS actions |
/ops:yolo — 4 parallel C-suite agents |
/ops:doctor — plugin auto-repair |
/ops:integrate — add external service |
/ops:daemon — launchd background brain |
/ops:whatsapp-biz — catalog/orders |
/ops:status — plugin + daemon health |
Voice / phone / video (v2.9)
/ops:voice is a full voice surface — not just AI calls.
| Subcommand | What it does |
|---|---|
phone <number> |
Native Phone.app dial via Continuity |
facetime <handle> [--audio] |
FaceTime video or audio |
zoom start|join|schedule |
Native Zoom + REST scheduling |
join [--at now|next] |
Auto-joins the current/next calendar meeting with smart AV defaults (cam/mic policy by attendee count, lid-state mic switching, Elgato auto-launch) |
twilio-call, twilio-sms |
Programmatic outbound voice + SMS |
bland-call |
AI agent phone call |
tts, transcribe |
ElevenLabs TTS + Groq Whisper |
All outbound 1:1 channels (twilio, bland) go through the per-message approval gate (Rule 6).
Skill routing
flowchart TD
U["User"] --> O["/ops"]
O --> D["Dashboard"]
D --> Daily["Daily Ops"]
D --> Eng["Project & Eng"]
D --> Biz["Business"]
D --> Auto["Automation"]
Daily --> go["/ops:go"]
Daily --> inbox["/ops:inbox"]
Daily --> merge["/ops:merge"]
Eng --> projects["/ops:projects"]
Eng --> linear["/ops:linear"]
Eng --> fires["/ops:fires"]
Biz --> revenue["/ops:revenue"]
Biz --> ecom["/ops:ecom"]
Biz --> marketing["/ops:marketing"]
Auto --> yolo["/ops:yolo"]
Auto --> orchestrate["/ops:orchestrate"]
Before / After
┌────────────────────────────────────────────┬──────────────────────────────────────────────┐
│ WITHOUT claude-ops │ WITH claude-ops │
├────────────────────────────────────────────┼──────────────────────────────────────────────┤
│ Open 6+ tabs every morning │ /ops:go —— one command, done │
│ Context-switch between Slack/Telegram/ │ /ops:inbox —— unified view, all channels │
│ email │ │
│ Manually review and merge PRs one by one │ /ops:merge —— autonomous pipeline │
│ SSH into servers to check health │ /ops:fires —— terminal dashboard │
│ Forget to track AWS spend │ /ops:revenue —— automatic cost snapshot │
│ Switch between Linear and GitHub │ /ops:linear + /ops:projects —— unified │
└────────────────────────────────────────────┴──────────────────────────────────────────────┘
Integrations (22 services)
Most integrations offer two paths — MCP (zero-config OAuth) or CLI (fuller feature set). The setup wizard lets you choose per-integration.
| SERVICE | MCP | CLI | WHAT YOU LOSE WITHOUT CLI |
|---|---|---|---|
| GitHub | — | gh (auto) |
EVERYTHING — CI logs, PR merge, triage all require gh |
| AWS | — | aws (auto) |
EVERYTHING — 17+ services probed by infra-monitor |
| Stripe | — | API key | Required for /ops:revenue MRR — web + desktop subs |
| RevenueCat | — | API key + project ID | Required for mobile-app subscription MRR |
| Linear | OAuth via Claude.ai (12 tools) | — | Nothing — fully covered |
| Vercel | OAuth via Claude.ai | — | Nothing — deploy status, build + runtime logs |
| Slack | OAuth via Claude.ai | local bot token | MCP covers most. Token adds: unlimited search, private ch |
| Gmail | OAuth (read) | gog (send+archive) |
MCP = read-only. CLI = full autonomous inbox |
| Calendar | OAuth via Claude.ai | gog (read-only) |
MCP has more features — either works |
| Sentry | OAuth via Claude.ai | sentry-cli |
MCP covers triage. CLI adds source maps + releases |
| — | wacli |
EVERYTHING — no MCP exists | |
| Telegram | — | bundled MCP server | EVERYTHING — plugin ships its own MTProto server |
| Shopify | — | Admin API + template | Store ops, order mgmt, inventory via /ops:ecom |
| Klaviyo | — | API key | Email/SMS campaigns via /ops:marketing |
| Meta Ads | — | API token | Paid-social reporting via /ops:marketing |
| GA4 | — | service account | Analytics via /ops:marketing |
| GSC | — | service account | Search Console via /ops:marketing |
| Bland AI | — | API key | Outbound voice via /ops:voice |
| ElevenLabs | — | API key | TTS + cloning via /ops:voice |
| Whisper | — | API key | Transcription via /ops:voice |
| Twilio | — | API (Account SID + Auth Token) | Outbound voice + SMS via /ops:voice twilio-* |
| Zoom | Server-to-Server OAuth | API token | Native start/join (no creds) + REST schedule via /ops:voice zoom * |
| macOS Phone / FaceTime | — | URL schemes (tel:, facetime://, facetime-audio://) |
Native via Continuity — no creds, no API |
| Elgato Camera Hub | — | auto-launched if installed | Virtual camera setup for meetings via /ops:voice join |
| GSD | — | auto-detected | Optional — roadmap state; degrades gracefully |
| Doppler | @dopplerhq/mcp-server (MCP) |
doppler CLI (fallback) |
Secrets manager; MCP server provides direct tool access |
[!NOTE]
infra-monitornow covers every AWS service you have IAM for — ECS, EC2, RDS, Lambda, S3, CloudFront, ALB/NLB, API Gateway, SQS, SNS, DynamoDB, ElastiCache, Route 53, ACM, CloudWatch, Budgets, IAM. Probes run in parallel; services you can't access are silently skipped.
Architecture
flowchart TB
CC[Claude Code] --> S[Skills · 22]
CC --> A[Agents · 12]
CC --> H[Hooks]
S & A & H --> RC[Runtime Context]
RC --> P[preferences.json]
RC --> M[memories/]
RC --> SEC[Doppler · PW Mgr · Keychain · env]
CC <--> D[ops-daemon<br/>launchd · 7 services]
All skills use pre-execution shell blocks (! fences) that gather data before model context loads — zero extra latency, minimal token overhead. The ops-daemon pre-warms briefing data so /ops:go hits warm cache.
Why the nested
claude-ops/claude-ops/directory? Claude Code's plugin marketplace system requires a two-level layout: the repo root acts as a marketplace container (with.claude-plugin/marketplace.jsonpointing"source": "./claude-ops"), while the inner directory is the actual plugin root (with.claude-plugin/plugin.json, skills, agents, etc.). This is how Claude Code resolves and caches plugins — it cannot be flattened.
claude-ops/ ← marketplace root (this repo, this README)
├── .claude-plugin/
│ └── marketplace.json # points to ./claude-ops as plugin source
├── README.md # ← you are here
│
└── claude-ops/ ← plugin root (Claude Code loads from here)
├── .claude-plugin/plugin.json
├── CLAUDE.md # 5 non-negotiable plugin rules
├── skills/ # 22 slash commands
├── agents/ # 12 autonomous agents (Opus/Sonnet/Haiku)
├── bin/ # ops-gather · ops-shopify-create · gog fallback
├── hooks/ # SessionStart health check
├── telegram-server/ # bundled MCP server (gram.js)
├── templates/ # Shopify Admin + app scaffolding
├── tests/ # bash validation · test-no-secrets.sh
└── .mcp.json # MCP server declarations
Agent Teams
Every ops skill that spawns agents supports Claude Code Agent Teams — a coordination layer where agents share context, report progress, and accept mid-flight steering.
Enable: Set CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 in your environment.
How it works: When the flag is set, skills create a named team and dispatch agents into it. Agents within a team can share findings (e.g., an inbox agent discovers a Slack message referencing an email thread, so the email agent prioritizes it) and you can steer priorities via SendMessage.
TeamCreate("fire-fixers")
Agent(team_name="fire-fixers", name="fix-ecs", ...)
Agent(team_name="fire-fixers", name="fix-ci", ...)
SendMessage(to="fix-ecs", content="This is P0, prioritize over CI")
Without the flag: Skills fall back to standard fire-and-forget subagents — still parallel, but no coordination or steering.
| Skill | Team name | Agents |
|---|---|---|
/ops:go |
go-team |
infra-scanner, inbox-scanner, pr-scanner, sprint-scanner |
/ops:inbox |
inbox-channels |
whatsapp-scanner, email-scanner, slack-scanner, telegram-scanner |
/ops:merge |
merge-fixers |
fixer-[repo] per failing PR |
/ops:fires |
fire-fixers |
fix-[service] per active incident |
/ops:triage |
triage-fixers |
fix-[issue-id] per active issue |
/ops:yolo |
yolo-csuite |
ceo, cto, cfo, coo |
/ops:orchestrate |
orchestrate-team |
per-project agents (hybrid auto-select) |
/ops:monitor |
monitor-probes |
datadog-probe, newrelic-probe, otel-probe |
/ops:doctor |
doctor-fixers |
fix-manifest, fix-permissions, fix-registry |
/ops:marketing |
marketing-team |
email-metrics, ads-metrics, analytics-metrics, seo-metrics |
/ops:ecom |
ecom-team |
orders-scanner, inventory-scanner, fulfillment-scanner |
/ops:deploy |
deploy-team |
ecs-checker, vercel-checker, ci-checker |
/ops:projects |
projects-team |
project-[alias] per registered project |
/ops:dash |
dash-team |
infra-loader, comms-loader, projects-loader, business-loader |
/ops:next |
next-team |
fires-checker, comms-checker, prs-checker, sprint-checker |
setup |
setup-hunters |
hunt-[service] per credential deep hunt |
Compliance enforced by CI: tests/test-agent-teams.sh audits every skill for Agent Teams support — any skill with Agent in its allowed-tools must have TeamCreate/SendMessage, a documentation section, the feature flag check, and a fallback path.
Competitor Intelligence (v2.3)
A self-discovering competitive-intelligence pipeline that goes well past "weekly Google Alert." Free signals + LLM curation, $0 incremental cost, configurable per brand.
Pipeline per configured brand:
- Discovery (Tavily, cached 30d) — surfaces the current competitor landscape for
{brand_name}in{category}. - Per-competitor signal collectors run in parallel (
scripts/lib/competitor/):reddit-search.sh— Reddit JSON APIhn-search.sh— HN Algolia APIappstore-lookup.sh— iTunes Lookup (opt-in for mobile brands)jobs-feed.sh— Greenhouse + Lever public APIs (senior-hire detection)page-diff.sh— HTML pricing/features/careers SHA snapshots with money-token detection
- Severity routing via
event-router.sh:high(price change on direct rival, funding, Show HN going viral) → immediate Telegram push every 10 min viacompetitor-alertcronmed→ daily 17:00 grouped roll-up viacompetitor-dailycronlow→ state-only, surfaces in weekly strategic synthesis
- Weekly synthesis (Mon 10:00) —
claude_invokeSonnet 4.6 against 7-day events.jsonl window. Output:NEW entrants / Competitor moves / Brand signal / Threats & opportunities.
Where it shows up:
| Surface | What you see |
|---|---|
/ops:go |
COMPETITOR row: alerts count, last_run, top-3 event snippets |
/ops:next |
Priority 2 (between fires + comms): REACT: <competitor> <source> changed |
/ops:marketing |
PRICING MOVES + FUNDING + SENTIMENT section |
/ops:ecom |
APP RELEASES + PRODUCT/PRICING CHANGES section |
/ops:yolo |
CEO/CTO/CFO/COO agents each load role-specific vertical slice |
/ops:competitors |
Dedicated dashboard + bin/ops-competitors CLI |
| Disk | $DATA_DIR/reports/competitor-intel/YYYY-MM-DD_<brand>.md |
Config (preferences.json .competitor_intel):
{
"brand_name": "My-Project",
"category": "AI health coaching apps",
"max_competitors": 5,
"report_timezone": "Europe/Amsterdam",
"app_store": true,
"urls": {
"Noom": { "pricing": "https://www.noom.com/plans/", "features": "..." }
}
}
Required env: TAVILY_API_KEY (free tier 1000 searches/mo — covers ~30 brands). Optional: TELEGRAM_BOT_TOKEN + TELEGRAM_CHAT_ID for push delivery (otherwise reports persist to disk only).
Cost at 10-brand scale: ~13 Tavily calls/wk + ~320k Sonnet tokens/mo on Max-OAuth = $0 incremental.
Privacy & Security
[!IMPORTANT] Transparency matters. claude-ops reads from your AWS, GitHub, Linear, Sentry, WhatsApp, Email, Slack, Telegram, Shopify, Stripe, RevenueCat, and more. You should know exactly what it touches.
Credential resolution chain (in order): Doppler MCP → Doppler CLI → 1Password/Dashlane/Bitwarden → macOS Keychain → env vars → Claude Code's encrypted userConfig (~/.claude.json).
Setup auto-scan sources (only during /ops:setup): env, shell profiles, Doppler, 1Password, Dashlane, Bitwarden, macOS Keychain, Claude Code's ~/.claude.json, Chrome history URL list (never page content), Slack Playwright profile (only if chosen).
The plugin does NOT:
- Phone home. No telemetry. No analytics. No crash reports.
- Upload data to any third party you haven't configured.
- Access clipboard, camera, microphone, or SSH keys.
- Perform disk-wide scans — every scan is a targeted path.
Background daemon services (only those you enable):
briefing-pre-warmevery 2 min — parallelops-gatherfor ECS/git/PRs/CI/unread. Local only.wacli-synccontinuous — WhatsApp Web protocol, same as standalonewacli.memory-extractorevery 30 min — Haiku summarizes local chats tomemories/.inbox-digestevery 4h — aggregates for your configured Telegram bot (if any).store-healthdaily 9am — Shopify Admin API, read-only.competitor-intelweekly Mon 10:00 — full strategic synthesis for each configured brand (see below).competitor-alertevery 10 min — drains high-severity competitor events to Telegram +alerts.log.competitor-dailydaily 17:00 — drains medium-severity events into a grouped roll-up digest.message-listenercontinuous — local polling, never sends outbound on its own.
Security measures: umask 077 on preferences.json · credentials in Claude Code's encrypted userConfig · registry/preferences gitignored · tests/test-no-secrets.sh pre-commit · Rule 5 blocks destructive actions without confirmation · append-only shell profile writes.
Your rights: /ops:uninstall removes everything · memory files are plain markdown · MIT licensed, source is public and auditable.
See the Privacy & Security wiki page for the full scan inventory and threat model.
Requirements
Just Claude Code 1.0+. Everything else is installed automatically by /ops:setup via Homebrew (macOS), apt (Linux), or winget (Windows). /ops:speedup auto-detects macOS / Linux / WSL / Windows and applies host-appropriate tuning (no manual flags needed).
What's New in v1.7.0
/gtm— cross-channel go-to-market planner (NEW skill). Strategy layer on top of/ops:marketingthat generates plans across paid, unpaid, sales, and AI-automation avenues and hands launchable items to/marketingvia theSkilltool./ops:projectsportfolio dashboard — every project in the GSD registry with active phase, task count, dirty-file count, and open-PR status. Backed by thegsd-registry-syncdaemon service.ops-speedupv2 parity —--gpu(Neural Engine + GPU util viapowermetrics),--power(energy hogs fromtop -o pmem),--os-actions(cross-platform kernel_task / WindowServer restarts + launchd/systemd masking behind an allowlist). Hardened against 9 review findings including a SEV-9evalshell-injection and a SEV-8 RETURN-trap race.ops-memory-extractorClaude Code OAuth support — prefers the OAuth token stored in the macOS Keychain (Claude Code-credentials) so memory extraction is billed against the Claude Max subscription instead of the API credit. Falls back toANTHROPIC_API_KEY. The OAuth token is never exported to the shell.- Persistent WhatsApp
--follow—wacli-keepalive.shno longer tears down the follower within 5-20 min of start.INITIAL_BACKFILL_DELAY=30lets the follower stabilize before the first--oncesweep, and a reentrant guard prevents overlapping sweeps. - MCP auto-reconnect —
PreToolUsehook kills and respawns any disconnected MCP server without user prompting. - 57 skills, 21 agents — up from 21/12 in v0.6.0. Full list in
claude-ops/README.md. - Models: C-suite on Opus 4.6, scanners/monitors/fix agents on Sonnet 4.6, memory extractor on Haiku 4.5.
Contributing
PRs welcome — see CONTRIBUTING.md for the full guide, branch rules, and PR workflow.
Branch strategy: main is the only long-lived branch. All work goes through feature branches → PR to main. Branch protection is enforced at repo and org level — no direct pushes, no force pushes, no branch deletion.
# Development mode — load plugin from local directory
claude --plugin-dir ./claude-ops/claude-ops
# Reload after changes
/reload-plugins
See claude-ops/README.md for detailed documentation on each skill, agent, and integration. Full guides, troubleshooting, and the threat model live on the wiki.
License
MIT — built by Lifecycle Innovations Limited.
v1.7.0 · MIT · github.com/Lifecycle-Innovations-Limited
Recommended MCP Servers
How it compares
MTProto personal-account MCP, not a Telegram Bot API skill pack or a hosted helpdesk product.
FAQ
Who is Claude Ops Telegram Server for?
Developers and operators who use a personal Telegram account for users or community and want their coding agent to read, search, and send messages via MCP.
When should I use Claude Ops Telegram Server?
Use it during grow and support when you triage DMs, draft replies, or search chat history from Claude Code or Cursor without leaving the repo.
How do I add Claude Ops Telegram Server to my agent?
Install the npm stdio server, set TELEGRAM_API_ID, TELEGRAM_API_HASH, TELEGRAM_PHONE, and TELEGRAM_SESSION, generate the session with node index.js --auth, then add the server block to your MCP config.