Skip to main content
Glama

Navigate

navigate

Open a URL in the active browser tab, launching a browser when necessary and blocking private-network URLs unless explicitly allowed.

Instructions

Navigate the active tab to a URL. Opens the browser automatically if needed. Private-network URLs are blocked unless allow_private is enabled.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "url": "<url>"
    },
    "name": "navigate"
  }
}

Input Schema

NameRequiredDescriptionDefault
urlYesAbsolute http(s) URL.
engineNoEngine to use when launching a new browser.
profileNoProfile to use when launching a new browser.
wait_untilNoNavigation wait condition (default load).
allow_privateNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.9/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=false, so the description carries most of the burden and does add real context: it discloses that the browser may be launched as a side effect and that private-network destinations are refused by policy with an opt-in flag. It does not describe failure behavior or what happens to the existing page state on navigation, but the disclosed constraints are the ones that most affect correct invocation.

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?

Three short sentences, front-loaded with the core action, then the side effect, then the constraint. No redundant restatement of the name or title and nothing that could be trimmed without losing information.

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 5-parameter navigation tool with no output schema and only a single annotation, the definition covers the action, the auto-launch side effect, and the security restriction. Missing is any mention of return/failure signaling (e.g. what happens on a bad URL or timeout), which would round it out, but nothing required for a correct call is absent.

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 high (80%), so the baseline is 3, and the description exceeds it by explaining the one undocumented parameter, allow_private, in terms of a concrete blocking policy rather than restating its name. The launch-time framing also clarifies that engine and profile only matter when a new browser is started, which the schema does not convey.

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 states a specific verb and resource ('Navigate the active tab to a URL'), which clearly separates it from siblings like reload or forward that act on an already-loaded page. It also notes the browser is opened automatically if needed, implicitly contrasting with the separate open tool, but never names that sibling explicitly.

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?

Usage context is implied by 'active tab' and the auto-open note, and a hard constraint is given (private-network URLs blocked unless allow_private is enabled). However, it never says when to prefer this over 'open' for a new browser, or when a plain reload/forward is the better call, so the agent must infer the boundary.

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