session_click
Click an interactive element by its index (from session_state output).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| index | Yes | Element index (from /state output) | |
| session_id | Yes | Session ID |
Click an interactive element by its index (from session_state output).
| Name | Required | Description | Default |
|---|---|---|---|
| index | Yes | Element index (from /state output) | |
| session_id | Yes | Session ID |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide only a title, so no read-only/destructive hints exist and the description must carry that burden. The description discloses that a click occurs, but not side effects such as navigation, JavaScript execution, or page changes, nor error behavior for invalid or non-interactive indices, nor return value. This is minimal beyond stating the intended action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single eleven-word sentence with no filler, front-loading the verb and object. It is appropriately sized for a simple 2-parameter tool and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter click tool with no output schema, the core invocation information is present: what to click and where the index comes from. However, the absence of behavioral notes such as side effects, error behavior, or return value, plus the lack of usage boundaries, makes it only minimally complete. The schema covers inputs well, but context around expected behavior remains thin.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are already described in the schema (100% coverage), so the baseline is 3. The description only adds a contextual link to session_state output for index, which the schema already expresses as '/state output', and gives no additional meaning for session_id. No parameter semantics beyond the schema are provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Click') and resource ('interactive element') and adds the index-based selection mechanism sourced from session_state output. This distinguishes it from the generic sibling 'click' by tying the action to a session-state index. Minor inconsistency: schema says '/state output' while description says 'session_state output,' but the intent is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'from session_state output' implies the prerequisite workflow of retrieving the state to obtain an index. However, there is no explicit guidance on when to choose this over alternatives like generic click, session_input, or session_eval, and no exclusion criteria. This is implied usage rather than explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Most tools have distinct purposes, but there's overlap between session_click/click and session_eval/eval. Descriptions clarify that session_* tools operate on persistent sessions while the others are one-off, so ambiguity is low.
The session_* prefix is consistently used for session-related tools (17 of 23), while the remaining tools (cache, click, download, eval, fetch, search) are single-word lowercase verbs. This is a clear pattern, though not strictly verb_noun.
23 tools is above the typical 3-15 range but reasonable for a browser automation server that needs both one-off and session-based operations. The count is justified by the breadth of features, though it's slightly heavy.
The surface covers all major browser automation needs: navigation, clicking, typing, scrolling, screenshot, state inspection, console/network logs, cookies/storage management, JavaScript eval, waiting, and even session export. No obvious gaps for the stated purpose.