Files
MCP-Browser/tools/openUrl.js
T

57 lines
1.1 KiB
JavaScript

const browser = require('../browser');
module.exports = async ({ url }) => {
if (!url) {
throw new Error('URL é obrigatória');
}
await browser.start();
const p = await browser.ensurePage();
const currentUrl = p.url();
if (currentUrl && currentUrl !== 'about:blank') {
if (currentUrl.includes(new URL(url).hostname)) {
await p.goto(url, {
waitUntil: 'domcontentloaded',
timeout: 30000
});
await p.waitForTimeout(1500);
return {
success: true,
url,
title: await p.title(),
tab: 'reused'
};
}
const newPage = await browser.newTab();
await newPage.goto(url, {
waitUntil: 'domcontentloaded',
timeout: 30000
});
await newPage.waitForTimeout(1500);
return {
success: true,
url,
title: await newPage.title(),
tab: 'new'
};
}
await p.goto(url, {
waitUntil: 'domcontentloaded',
timeout: 30000
});
await p.waitForTimeout(1500);
return {
success: true,
url,
title: await p.title(),
tab: 'existing'
};
};