Skip to main content
Glama

独行录 / opcmenu

报名线上参会

join_activity_online
DestructiveIdempotent

【需登录】收费场须本场次票或覆盖本场的组织年票。get_activity核对onlineEnabled/票务,已结束场也可加入。先确认会入活动群,退出参会仍留群;静音set_conversation_muted,退群leave_conversation。报名不等于门票;409按exits处理,不绕过App激活/受众。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
activityRefYes活动 slug 或 id(get_activity / get_signup_activity 两者都给)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

B3.1/5.0
Behavior3/5

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

The description discloses key side effects: joining enters the activity group, leaving attendance does not remove the user from the group, joining is not equivalent to holding a ticket, and 409 should be treated as 'exits' without bypassing app activation/audience checks. That is meaningful context beyond the annotations. However, it does not explain what gets destroyed despite destructiveHint=true, nor does it mention idempotency despite idempotentHint=true. With annotations covering most behavioral signals, a 3 is appropriate.

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

Conciseness2/5

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

The description is a run-on list of conditions, side effects, and cross-tool references (set_conversation_muted, leave_conversation) that are tangential to joining. It is compact but not front-loaded: the core purpose is not the first sentence, and the ticketing rule precedes the verb. Sentences do not clearly earn their place in this order.

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 1-parameter mutation with an output schema absent, the description covers prerequisites, group side effects, muted/leave follow-ups, and error handling for 409. It is reasonably complete but lacks clarity on what destructiveHint means for this operation and does not state whether retrying is safe (idempotent). Adequate but with clear gaps.

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 100% and the parameter description already explains that activityRef is a slug or id available from get_activity/get_signup_activity. The tool description adds no further parameter meaning. Baseline 3 applies when the schema does the heavy lifting.

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

Purpose3/5

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

The description identifies the action (join the online meeting attendance) and its prerequisites (must be logged in; paid events need a ticket or org annual pass covering the event). However, it never states in a clean single clause what the tool does – it's buried in a dense sequence of conditions and side effects. It is distinguishable from sibling leave_activity_online, but the core purpose requires parsing.

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

Usage Guidelines4/5

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

It explicitly says to first check onlineEnabled/ticketing via get_activity and that ended events can also be joined. It does not explicitly name leave_activity_online as the alternative (though it references leave_conversation and set_conversation_muted for follow-up actions). The when-to-use context is clear; the when-not-to-use is only implicit via the ticketing note.

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