Skip to main content
Glama

Set channel post pin

telegram_set_post_pinned
Idempotent

Pin or unpin one specific channel post. Confirm the channel, post and desired pinned state first. Never unpins all posts. Requires current ownership and bot Edit messages permission.

Input Schema

NameRequiredDescriptionDefault
pinnedYes
confirmedYesTrue only after showing the channel, exact content/button destinations or target post/action and receiving explicit user confirmation.
channel_idYesChannel chat_id returned by telegram_list_chats or telegram_find_chat, connected through /channels.
message_idYesPost message_id from this channel, not an ID from its discussion group.
request_idYesUnique key for this user-approved action. Reuse the same key for retries; never generate a new one to retry uncertain delivery.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4/5.0
Behavior4/5

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

Annotations already cover safety (readOnly=false, idempotent=true, destructive=false), and the description adds real value beyond them: the ownership precondition, the bot 'Edit messages' permission requirement, and the guarantee that other posts' pin state is untouched. It doesn't say what the response looks like or what happens if the post is already in the requested state, keeping it below a 5.

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 short sentences, front-loaded with the action and immediately followed by the safety confirmation, scope limit, and permission requirement. No filler and nothing redundant.

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?

With five required params, high schema coverage, and no output schema, the description covers preconditions and scope adequately. Minor gap: it doesn't clarify whether the confirmation requirement is enforced by the server or is a caller discipline, or what failure modes (no permission, message not found) look like.

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 coverage is 80%, so channel_id, message_id, request_id, and confirmed are already well documented in the schema. The description's 'channel, post and desired pinned state' maps loosely onto channel_id/message_id/pinned but adds no format or validation detail beyond what the schema states.

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?

Names a specific verb pair (pin/unpin), the exact resource (one specific channel post), and explicitly bounds scope with 'Never unpins all posts'. This clearly separates it from siblings such as telegram_delete_post, telegram_edit_post, and telegram_create_post.

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?

'Confirm the channel, post and desired pinned state first' gives a pre-call checklist, which implies the usage context but doesn't state when to choose this over an alternative or when not to call it. No sibling or alternative is named for routing.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources