Skip to main content
Glama

browser_navigate

Navigates a specified Chrome tab to an http, https, data:, or about:blank URL, or moves it back/forward in history; protected Chrome Web Store pages are reported as protected.

Instructions

Navigates tab tab_id to the URL (http, https, data: or about:blank; never file:// or chrome://). url="back" or "forward": previous or next page of this tab's history (the browser's back and forward buttons). Chrome Web Store pages are protected by Chrome (no extension may read them): protected_page=true at once.

Input Schema

NameRequiredDescriptionDefault
urlYes
tab_idYesYour tab's id (from browser_new_tab, or a tab adopted with browser_adopt_tab).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv2.31.6
    • changedOutput schema / (root)
      Previous value: -{
      -  "properties": {
      -    "result": {
      -      "title": "Result",
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "result"
      -  ],
      -  "title": "browser_navigateOutput",
      -  "type": "object"
      -}New value: +null
  2. First observedv0.1.0

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare openWorldHint=true, idempotentHint=false and destructiveHint=false, so the safety profile is covered. The description adds genuinely new behavior: protected Chrome Web Store pages short-circuit with protected_page=true, and certain schemes are rejected outright. It doesn't say whether navigation returns before the page finishes loading, which is the one behavior an agent most needs.

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?

Three short lines, front-loaded with the primary action, then the special url values, then the edge case. Slightly telegraphic phrasing ('Navigates tab tab_id to the URL') but no wasted sentences.

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 two-parameter navigation tool with no output schema, the definition covers schemes and the protected-page return signal. However, given that browser_wait_load is a sibling, the absence of any statement about whether navigate blocks until load completes leaves a meaningful ambiguity for correct invocation.

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 50% — tab_id is documented in the schema, but url has no schema description at all. The description compensates well for that gap by enumerating accepted schemes and defining the two magic string values 'back' and 'forward', which are non-obvious and not derivable from a plain string type.

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 opens with a specific verb and resource: it moves the tab identified by tab_id to a given URL. The allowed-scheme list and the 'back'/'forward' semantics make the scope concrete, so an agent can distinguish this from browser_reload or browser_new_tab. It stops short of naming a sibling it is not, which keeps it at 4 rather than 5.

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?

The scheme restrictions ('never file:// or chrome://') and the 'back'/'forward' values imply when this tool is the right call, but the description never states when to prefer a sibling such as browser_reload or browser_new_tab, or whether the caller must follow with browser_wait_load. Usage is inferable rather than explicit.

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