AI agents use join_chat_by_link to create or update resources in Tgmcp — usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Tgmcp environment.
Joining a chat is a reversible write action — it modifies the account's chat membership state by adding it to a new group/channel. It does not delete data, execute code, or move money. It can be misused to silently join the agent's account to arbitrary chats, hence medium severity.
From the tool's definition Join a chat by invite link
Attacks that exploit this kind of access
Join a chat by invite link. It is categorised as a Write tool in the Tgmcp MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.
Register the Tg MCP server in PolicyLayer and add a rule for join_chat_by_link: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Tgmcp. Nothing to install.
join_chat_by_link is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.
Yes. Add a rate_limit block to the join_chat_by_link rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for join_chat_by_link. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
join_chat_by_link is provided by the Tg MCP server (oevortex/tgmcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Every MCP server has a record like this.
Type a name, get the same breakdown: verified identity, auth posture, risk grade, capabilities, recommended policy.
Teams ship this data inside their own products. See what a licence covers →