camoufox-mcp-server
Version:
MCP server for browser automation using Camoufox - a privacy-focused Firefox fork with advanced anti-detection features
36 lines (35 loc) • 1.27 kB
JavaScript
import chalk from "chalk";
import { describeError, getProxySecrets, getProxyServer, sanitizeErrorMessage } from "./utils.js";
export function buildSuccessContent(payload, screenshotResult) {
const content = [{
type: "text",
text: JSON.stringify(payload),
}];
if (screenshotResult?.base64) {
content.push({
type: "image",
data: screenshotResult.base64,
mimeType: screenshotResult.mimeType,
});
}
return {
content,
structuredContent: typeof payload === "object" && payload !== null
? payload
: { value: payload },
};
}
export function buildToolFailure(label, safeUrl, error, input) {
const errorMessage = sanitizeErrorMessage(describeError(error), [input.url, getProxyServer(input.proxy)].filter((rawUrl) => Boolean(rawUrl)), getProxySecrets(input.proxy));
console.error(chalk.red(`[Camoufox] Error during ${label} ${safeUrl}: ${errorMessage}`));
return buildToolError(`Failed to ${label} URL ${safeUrl}. Error: ${errorMessage}`);
}
export function buildToolError(message) {
return {
content: [{
type: "text",
text: message,
}],
isError: true,
};
}