Send Telegram messages from your CLI, AI assistants (MCP), or REST API.
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio counts 11 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
get_telegram_parameter_doc
-
list_aliases
-
list_bots
-
send_contact
-
send_interactive
-
send_invoice
-
send_location
-
send_media
-
send_media_group
-
send_rich_message
-
send_text
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 437caf6 · analyzer v33 · 4h ago
skills & prompt files 7
- skill dsnbyte-telesend-437caf6/.agents/skills/openspec-apply-change/SKILL.md
- skill dsnbyte-telesend-437caf6/.agents/skills/openspec-archive-change/SKILL.md
- skill dsnbyte-telesend-437caf6/.agents/skills/openspec-explore/SKILL.md
- skill dsnbyte-telesend-437caf6/.agents/skills/openspec-propose/SKILL.md
- skill dsnbyte-telesend-437caf6/.agents/skills/openspec-sync-specs/SKILL.md
- skill dsnbyte-telesend-437caf6/.agents/skills/openspec-update-change/SKILL.md
- agent-rules dsnbyte-telesend-437caf6/AGENTS.md
danger signals2
- suspicious endpoint api.telegram.org dsnbyte-telesend-437caf6/src/telegram/client.ts :25
private readonly baseUrl = "https://api.telegram.org", - suspicious endpoint api.telegram.org dsnbyte-telesend-437caf6/tests/errors.test.ts :10
const output = redactSecrets(`failed ${token} https://api.telegram.org/bot${token}/sendMessage`);
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 44
filesystem 12
- fs dsnbyte-telesend-437caf6/src/core/paths.ts :1
import { chmod, mkdir } from "node:fs/promises"; - fs dsnbyte-telesend-437caf6/src/db/database.ts :2
import { chmodSync, existsSync } from "node:fs"; - fs dsnbyte-telesend-437caf6/src/mcp/config.ts :1
import { existsSync } from "node:fs"; - fs dsnbyte-telesend-437caf6/src/mcp/file-policy.ts :1
import { constants } from "node:fs"; - fs (weak) dsnbyte-telesend-437caf6/tests/cli.test.ts :3
import { mkdtemp } from "node:fs/promises"; - fs (weak) dsnbyte-telesend-437caf6/tests/database.test.ts :3
import { chmod, mkdtemp, stat } from "node:fs/promises"; - fs (weak) dsnbyte-telesend-437caf6/tests/e2e.test.ts :2
import { mkdtemp } from "node:fs/promises"; - fs (weak) dsnbyte-telesend-437caf6/tests/mcp-policy.test.ts :2
import { mkdir, mkdtemp, symlink } from "node:fs/promises"; - fs (weak) dsnbyte-telesend-437caf6/tests/mcp.test.ts :2
import { mkdtemp } from "node:fs/promises"; - fs (weak) dsnbyte-telesend-437caf6/tests/paths.test.ts :2
import { mkdir, mkdtemp, stat } from "node:fs/promises"; - fs (weak) dsnbyte-telesend-437caf6/tests/remote-mcp.test.ts :4
import { mkdtemp } from "node:fs/promises"; - fs (weak) dsnbyte-telesend-437caf6/tests/telegram.test.ts :3
import { mkdtemp } from "node:fs/promises";
network 3
- net dsnbyte-telesend-437caf6/src/mcp/remote-server.ts :33
fetch(request: Request): Response | Promise<Response>; - net dsnbyte-telesend-437caf6/src/rest/server.ts :22
fetch(request: Request): Response | Promise<Response>; - net (weak) dsnbyte-telesend-437caf6/tests/remote-mcp.test.ts :81
const unauthorized = await handler.fetch(new Request("https://local/mcp", { method: "POST" }));
tool registrations 11
- list_aliases dsnbyte-telesend-437caf6/src/mcp/server.ts :150
- list_bots dsnbyte-telesend-437caf6/src/mcp/server.ts :164
- get_telegram_parameter_doc dsnbyte-telesend-437caf6/src/mcp/server.ts :180
- send_text dsnbyte-telesend-437caf6/src/mcp/server.ts :215
- send_rich_message dsnbyte-telesend-437caf6/src/mcp/server.ts :278
- send_media dsnbyte-telesend-437caf6/src/mcp/server.ts :332
- send_media_group dsnbyte-telesend-437caf6/src/mcp/server.ts :421
- send_location dsnbyte-telesend-437caf6/src/mcp/server.ts :482
- send_contact dsnbyte-telesend-437caf6/src/mcp/server.ts :535
- send_interactive dsnbyte-telesend-437caf6/src/mcp/server.ts :572
- send_invoice dsnbyte-telesend-437caf6/src/mcp/server.ts :659
declared dependencies 4
- @modelcontextprotocol/server@2.0.0
- @biomejs/biome@2.5.14
- @types/bun@1.4.2
- typescript@7.0.2