Skip to main content
Glama

tabs_close

Close a specific Firefox browser tab by ID within a given profile, removing its live page and any unsaved state. Identify the tab with tabs_list first; closed tabs cannot be restored.

Instructions

Close one browser tab, removing its live page and possibly unsaved state.

Use tabs_list to identify the tab first. Use tabs_switch to select a tab without closing it, or close_window to close an entire window. Closing the last tab may close its window. There is no FoxMCP tool to restore a closed tab; an invalid or already closed tab ID fails.

profile_id is required: obtain it from profiles_list. All object IDs are local to that profile; never reuse them in another profile.

Input Schema

NameRequiredDescriptionDefault
tab_idYesID of the tab to close
profile_idYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.6.0

TDQS

A4.8/5.0
Behavior5/5

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

Since no annotations exist, the description must carry the burden. It discloses critical operational behaviors like what happens when the last tab is closed, the non-existence of a 'restore' feature, and the failure mode for invalid IDs.

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?

The description is information-dense but follows a logical flow: function -> usage instructions/alternatives -> constraints/warning. The critical warnings about ID scope are placed effectively at the end.

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?

Given that this is a destructive tool with no annotations, the description is comprehensive, covering prerequisites, alternatives, potential edge cases (last tab), and failure conditions. Nothing vital appears to be missing.

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?

Although schema coverage is only 50%, the description provides critical semantic context by requiring profile_id to come from profiles_list and adding the vital constraint that IDs are local to a specific profile, preventing cross-profile misuse.

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

Purpose5/5

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

The description clearly states the action (close), the resource (one browser tab), and the immediate consequences (removal of live page/unsaved state). It clearly defines the boundary of its functionality.

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

Usage Guidelines5/5

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

It provides explicit instructions for prerequisite steps (use tabs_list first) and lists three distinct alternatives (tabs_switch, close_window), making the correct choice obvious to the agent.

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