Skip to main content
Glama

navigate

Loads a webpage completely by navigating to a specified URL, waiting for the page to fully render before proceeding with debugging tasks.

Instructions

Navega para uma URL específica e carrega a página completamente

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
timeoutNoTimeout em milissegundos (padrão: 30000)
urlYesURL completa para navegar (deve incluir http:// ou https://)
waitUntilNoCondição de espera (padrão: networkidle2)networkidle2

Implementation Reference

  • The handleNavigate function that executes the 'navigate' tool: validates args, clears logs/network, navigates to URL with options, gets title and final URL, returns success response.
    export async function handleNavigate(args: unknown, currentPage: Page): Promise<ToolResponse> { const typedArgs = args as unknown as NavigateArgs; const { url, waitUntil = 'networkidle2', timeout = 30000 } = typedArgs; // Limpar logs e requisições clearConsoleLogs(); clearNetworkRequests(); await currentPage.goto(url, { waitUntil: waitUntil, timeout: timeout, }); const title = await currentPage.title(); const finalUrl = currentPage.url(); return { content: [ { type: 'text', text: JSON.stringify( { success: true, title: title, url: finalUrl, message: `Navegado para ${finalUrl}`, }, null, 2 ), }, ], }; }
  • TypeScript interface defining the input arguments for the navigate tool.
    export interface NavigateArgs { url: string; waitUntil?: 'load' | 'domcontentloaded' | 'networkidle0' | 'networkidle2'; timeout?: number; }
  • src/tools.ts:2-26 (registration)
    Tool registration object in the tools array, including name 'navigate', description, and JSON inputSchema for MCP listing.
    { name: 'navigate', description: 'Navega para uma URL específica e carrega a página completamente', inputSchema: { type: 'object', properties: { url: { type: 'string', description: 'URL completa para navegar (deve incluir http:// ou https://)', }, waitUntil: { type: 'string', enum: ['load', 'domcontentloaded', 'networkidle0', 'networkidle2'], description: 'Condição de espera (padrão: networkidle2)', default: 'networkidle2', }, timeout: { type: 'number', description: 'Timeout em milissegundos (padrão: 30000)', default: 30000, }, }, required: ['url'], }, },
  • src/index.ts:67-70 (registration)
    Dispatch case in the MCP CallToolRequestSchema handler that initializes browser page and calls handleNavigate for 'navigate' tool.
    case 'navigate': { const currentPage = await initBrowser(); return await handleNavigate(args, currentPage); }
  • src/index.ts:44-46 (registration)
    MCP server registration for ListToolsRequestSchema, returning the tools array that includes 'navigate'.
    server.setRequestHandler(ListToolsRequestSchema, async () => { return { tools }; });

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/EmmanuelBarbosaMonteiro/mcp-server-browser'

If you have feedback or need assistance with the MCP directory API, please join our Discord server