File size: 937 Bytes
064bfd6 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | type BrowserTool = { name: string }
type ClaudeForChromePackage = {
BROWSER_TOOLS?: BrowserTool[]
createClaudeForChromeMcpServer?: (...args: any[]) => any
}
let cachedPackage: ClaudeForChromePackage | null | undefined
function loadClaudeForChromePackage(): ClaudeForChromePackage | null {
if (cachedPackage !== undefined) {
return cachedPackage
}
try {
/* eslint-disable @typescript-eslint/no-require-imports */
cachedPackage = require('@ant/claude-for-chrome-mcp') as ClaudeForChromePackage
/* eslint-enable @typescript-eslint/no-require-imports */
} catch {
cachedPackage = null
}
return cachedPackage
}
export function getChromeBrowserTools(): BrowserTool[] {
return loadClaudeForChromePackage()?.BROWSER_TOOLS ?? []
}
export async function importClaudeForChromePackage(): Promise<ClaudeForChromePackage> {
return (await import('@ant/claude-for-chrome-mcp')) as ClaudeForChromePackage
}
|