Skip to main content
Glama
TONresistor

Telegram MCP Server

by TONresistor

setGameScore

Update a user's score in a Telegram game message. Use force to allow decreasing a high score when fixing mistakes or banning cheaters.

Instructions

Set the score of the specified user in a game message. On success, if the message is not an inline message, the Message is returned, otherwise True is returned. Returns an error, if the new score is not greater than the user's current score in the chat and force is False.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
forceNoPass True if the high score is allowed to decrease. This can be useful when fixing mistakes or banning cheaters.
scoreYesNew score, must be non-negative
chat_idNoRequired if inline_message_id is not specified. Unique identifier for the target chat.
user_idYesUser identifier
message_idNoRequired if inline_message_id is not specified. Identifier of the sent message.
inline_message_idNoRequired if chat_id and message_id are not specified. Identifier of the inline message.
disable_edit_messageNoPass True if the game message should not be automatically edited to include the current scoreboard.

Schema Changelog

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

  1. First observedv1.0.0

TDQS

A4/5.0
Behavior4/5

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

With no annotations provided, the description carries the full behavioral burden. It discloses conditional return types (Message vs True depending on inline/non-inline message) and the specific error condition tied to force. This is genuinely useful operational detail beyond a bare 'set score' statement, though it omits prerequisites like bot ownership of the game.

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?

Three sentences, zero filler. The core purpose is front-loaded in the first sentence, followed by return behavior and error condition. Every sentence earns its place and no information is repeated from the schema.

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

Completeness4/5

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

For a 7-parameter tool with no output schema and no annotations, the description is nearly complete: it explains what the return value will be (covering the missing output schema gap), when an error occurs, and the schema covers all parameter semantics including the conditional chat_id/message_id vs inline_message_id requirement. Minor gap: no mention of prerequisites (bot must be the game creator) or that this mutates persistent score state.

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% — every parameter (force, score, chat_id, user_id, message_id, inline_message_id, disable_edit_message) has a meaningful description. Per the baseline rule, the description need not repeat parameter info. The description's mention of the force/error interplay modestly complements the schema but doesn't add new parameter semantics.

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 first sentence states a specific verb and resource: 'Set the score of the specified user in a game message.' This clearly distinguishes it from siblings like getGameHighScores (which retrieves scores) and sendGame (which creates a game message). No ambiguity about the tool's function.

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 description implies usage context — this operates on an existing game message and explains when force matters (error if score is not greater unless force=True). However, it never explicitly names alternatives or states when-not-to-use, such as pointing to getGameHighScores for reading scores. Usage guidance is adequate but left to inference.

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