Skip to main content
Glama

group_promote_admin

Promote a member to admin in an existing group on Telegram or WhatsApp.

What this does:

  • Gives the specified member admin status in the group

  • On Telegram, this grants visibility of all group messages (even if not a bot)

  • Defaults to minimal/empty rights; specify custom rights if needed

Returns: success, chat_id, member.

Input Schema

NameRequiredDescriptionDefault
memberYesThe member to promote (format depends on channel: @username on Telegram, phone on WhatsApp)
rightsNoOptional admin rights dict (Telegram-specific). If not provided, defaults to minimal/admin status only. Example: {"post_messages": true, "edit_messages": true}
channelYesChannel where the group exists (e.g., 'telegram', 'whatsapp')
chat_idYesID of the group/channel where the member will be promoted. Group id exactly as `group.list` reports it: a signed numeric id on Telegram, or a JID ending in @g.us on WhatsApp. A WhatsApp group has no numeric id, so this is a string either way. Read it from `group.list`; never compose one.
account_idNoWhich of the workspace's accounts on this channel acts (from channels.list). OMIT to use the account the group's conversation is filed on.
in_workspaceNoRun this one call in this workspace id instead of the session's. Nothing is stored; other sessions are not affected.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / account_id
      Added value: +{
      +  "description": "Which of the workspace's accounts on this channel acts (from channels.list). OMIT to use the account the group's conversation is filed on.",
      +  "type": "integer"
      +}
  2. Changed1 schema field changed
    • addedInput schema / properties / in_workspace
      Added value: +{
      +  "description": "Run this one call in this workspace id instead of the session's. Nothing is stored; other sessions are not affected.",
      +  "type": "integer"
      +}
  3. Added
  4. Removed
  5. Added

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnly=false, destructive=false, idempotent=false, so the safety bar is lower, and the description still adds real behavioral context: on Telegram the promotion grants visibility of all group messages even for non-bots, and rights default to empty unless specified. It stops short of disclosure around permission requirements or failure behavior.

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

Conciseness4/5

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

Front-loaded one-line purpose followed by a short scannable bullet block and a returns line; nothing is padded. The bullet list is slightly redundant with the opening sentence but stays efficient.

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

Completeness5/5

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

For a mutation tool with no output schema and full parameter documentation, the description covers purpose, key side effect, default behavior, and return shape (success, chat_id, member). Missing only prerequisites, which is minor given how well the schema is documented.

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%, so the schema already documents every parameter, including the member format per channel and the rights example. The description only reinforces the rights default, adding marginal meaning beyond the schema, so the baseline 3 applies.

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

Purpose4/5

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

States a specific verb and resource (promote a member to admin in an existing group) plus the supported channels, so the action is unambiguous. It does not differentiate itself from nearby siblings such as group_admins, group_moderate, or group_add_member, which an agent must distinguish on its own.

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?

Implies context through 'existing group' and explains the rights default ('defaults to minimal/empty rights; specify custom rights if needed'), which helps an agent decide how to call it. However, there is no explicit when-to-use vs alternatives (group_moderate, group_admins) and no stated prerequisite that the acting account must itself be an admin.

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