Skip to main content
Glama
TONresistor

Telegram MCP Server

by TONresistor

editUserStarSubscription

Cancel or re-enable extension of a user's subscription paid in Telegram Stars. Pass true to stop renewals, false to reactivate, using the payment charge ID.

Instructions

Allows the bot to cancel or re-enable extension of a subscription paid in Telegram Stars. Returns True on success.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
user_idYesIdentifier of the user whose subscription will be edited
is_canceledYesPass True to cancel extension of the user subscription; the subscription must be active up to the end of the current subscription period. Pass False to allow the user to re-enable it.
telegram_payment_charge_idYesTelegram payment identifier for the subscription

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observedv1.0.0

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations present, the description carries the full behavioral burden. It does disclose the mutating nature of the operation and its success return value ('Returns True on success'), which is useful since no output schema exists. But it does not mention prerequisites (an active subscription period), failure behavior, or side effects of canceling vs. re-enabling beyond what the schema's is_canceled text already states.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with no filler. The core action is front-loaded and the return-value note is the only additional sentence, and it earns its place because there is no output schema. Every word contributes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple 3-parameter mutation with no output schema, the description combined with the rich schema covers the core action and success return, making the tool callable. It is incomplete on usage context relative to payment-related siblings and on failure/prerequisite behavior, which matters for a state-changing operation with no annotations to back it up.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: each parameter (user_id, is_canceled, telegram_payment_charge_id) already has a meaningful schema description, including the subtle behavior constraint on is_canceled. The tool description adds useful domain context ('paid in Telegram Stars') that clarifies what telegram_payment_charge_id refers to, but adds no parameter-level detail, so the baseline 3 for high coverage is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific action pair ('cancel or re-enable extension') and a specific resource ('a subscription paid in Telegram Stars'), and scopes it to the bot. This clearly differentiates it from near-siblings like refundStarPayment (refunding a payment), getStarTransactions (read-only ledger), and sendInvoice/createInvoiceLink (creating new payment flows), so an agent can route correctly without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The purpose statement implies the usage context: use this when the bot needs to toggle the renewal state of an existing Star subscription. However, it names no alternatives and gives no when-not-to-use guidance, even though the sibling list contains closely related payment tools such as refundStarPayment and getStarTransactions where explicit exclusions would help disambiguate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/TONresistor/telegram-mcp'

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