Skip to main content
Glama
Harmantaj

AppLock

by Harmantaj

Lock a ChatGPT / Claude / Gemini web chat

hide_browser_chat

Locks a ChatGPT, Claude.ai or Gemini web chat in AppLock so it leaves the sidebar and shows a lock screen until unlocked with Touch ID or password.

Instructions

Tells the AppLock browser extension to lock a web chat: it disappears from the sidebar and shows a lock screen if opened, until unlocked with Touch ID or the password. Use chat_id "current" for the chat open in the browser.

Input Schema

NameRequiredDescriptionDefault
siteNoNeeded only when chat_id isn't "current" and is ambiguous
chat_idYesChat id from list_browser_chats, or "current"
everywhereNoChatGPT only: also archive it in the user's ChatGPT account so it leaves the chat list in the ChatGPT phone and desktop apps

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.6.3
    • addedInput schema / properties / everywhere
      Added value: +{
      +  "default": false,
      +  "description": "ChatGPT only: also archive it in the user's ChatGPT account so it leaves the chat list in the ChatGPT phone and desktop apps",
      +  "type": "boolean"
      +}
  2. First observedv0.2.0

TDQS

A3.9/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the visible effect (removed from sidebar, lock screen on open), the unlock path (Touch ID or password), and the reversibility implied by 'until unlocked'. It omits any statement about required permissions, failure modes, or what happens if the chat_id is stale.

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?

Two sentences, front-loaded with the effect and followed by the one usage hint. No filler, no restating of the title.

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?

For a mutation tool with no annotations and no output schema, the description covers the effect, the unlock mechanism, and the special chat_id value, which is most of what an agent needs. Missing only permission/auth requirements and error behavior if the extension is absent or the chat is unknown.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds genuine meaning by explaining that "current" refers to the chat open in the browser, which the schema only mentions as a literal value. It still leaves the `everywhere` ChatGPT archival flag entirely to the schema.

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?

The description gives a concrete verb-plus-resource ('lock a web chat' via the AppLock browser extension) and names the target surfaces (ChatGPT/Claude/Gemini web chats), which separates it from sibling tools like hide_on_phone or hide_session. It stops short of explicitly naming the sibling it is not, so an agent must infer the browser-vs-other-platform boundary.

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?

It gives one piece of usage guidance — use chat_id "current" for the chat open in the browser — but never states when to pick this tool over hide_session, hide_on_phone, or list_hidden, nor any exclusion or prerequisite. Usage is implied rather than declared.

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