Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| ai:mcp:servery:chrome-devtools-mcp [05.05.2026 19:56] – Nový článek: Chrome DevTools MCP – vztah k Playwright, přehled nástrojů, Alpine Linux Petr Nosek | ai:mcp:servery:chrome-devtools-mcp [10.05.2026 17:18] (aktuální) – Doplnění mcpc wrapperu pro Chrome DevTools MCP na Alpine/ARM64 Petr Nosek | ||
|---|---|---|---|
| Řádek 21: | Řádek 21: | ||
| ===== Co Chrome DevTools MCP přidává ===== | ===== Co Chrome DevTools MCP přidává ===== | ||
| - | Chrome DevTools MCP má přes 40 nástrojů rozdělených do kategorií. | + | Chrome DevTools MCP má desítky |
| ==== Performance tracing ==== | ==== Performance tracing ==== | ||
| Řádek 115: | Řádek 115: | ||
| V tomto módu se Puppeteer nepokusí spustit vlastní browser — jen se připojí přes CDP na port, kde Chromium už běží. Systémový Chromium z Alpine apk je kompilovaný pro musl a ARM64, takže žádné glibc problémy. | V tomto módu se Puppeteer nepokusí spustit vlastní browser — jen se připojí přes CDP na port, kde Chromium už běží. Systémový Chromium z Alpine apk je kompilovaný pro musl a ARM64, takže žádné glibc problémy. | ||
| - | Oproti Playwright wrapperu (který používá '' | + | ==== Wrapper pro mcpc s čištěním profilu ==== |
| - | > **Poznámka:** Jestli | + | Při praktickém použití přes '' |
| + | |||
| + | Proto je vhodnější použít wrapper, který: | ||
| + | |||
| + | | ||
| + | | ||
| + | * při čerstvém startu smaže uživatelská data z '' | ||
| + | * uklidí staré orphan adresáře ''/ | ||
| + | * nakonec spustí '' | ||
| + | |||
| + | Soubor například ''/ | ||
| + | |||
| + | <code bash> | ||
| + | #!/bin/sh | ||
| + | # Zajistí běžící Chromium s CDP portem 9222 a spustí chrome-devtools-mcp. | ||
| + | # Použije fixní user-data-dir; | ||
| + | # (Cache, Cookies, History, Sessions atp.) ale zachová component updates. | ||
| + | |||
| + | CDP_PORT=9222 | ||
| + | CDP_URL=" | ||
| + | USER_DATA_DIR="/ | ||
| + | |||
| + | # Zkontroluj, zda Chromium na CDP portu již naslouchá | ||
| + | if ! wget -q --spider " | ||
| + | # Čerstvý start — vyčisti user-specific data z profilu Default/, | ||
| + | # aby se mezi restarty Chromia nehromadily cookies, cache, history atp. | ||
| + | # Component data (CertificateRevocation, | ||
| + | for subdir in Cache Code\ Cache Cookies Cookies-journal History History-journal \ | ||
| + | "Login Data" "Login Data-journal" | ||
| + | "Local Storage" | ||
| + | " | ||
| + | BrowsingTopicsSiteData; | ||
| + | rm -rf " | ||
| + | done | ||
| + | |||
| + | # Ukliď staré orphan scoped_dir adresáře z předchozích spuštění | ||
| + | find /tmp -maxdepth 1 -name ' | ||
| + | -not -name ' | ||
| + | |||
| + | mkdir -p " | ||
| + | |||
| + | chromium \ | ||
| + | --headless \ | ||
| + | --no-sandbox \ | ||
| + | --disable-setuid-sandbox \ | ||
| + | --disable-dev-shm-usage \ | ||
| + | --remote-debugging-port=${CDP_PORT} \ | ||
| + | --remote-debugging-address=127.0.0.1 \ | ||
| + | --user-data-dir=" | ||
| + | --disable-extensions \ | ||
| + | --no-first-run \ | ||
| + | --no-default-browser-check \ | ||
| + | >/ | ||
| + | |||
| + | # Čekej max 15 s na start | ||
| + | i=0 | ||
| + | while [ $i -lt 30 ]; do | ||
| + | if wget -q --spider " | ||
| + | break | ||
| + | fi | ||
| + | sleep 0.5 | ||
| + | i=$((i + 1)) | ||
| + | done | ||
| + | |||
| + | if ! wget -q --spider " | ||
| + | echo " | ||
| + | exit 1 | ||
| + | fi | ||
| + | fi | ||
| + | |||
| + | exec npx -y chrome-devtools-mcp@latest --browser-url " | ||
| + | </code> | ||
| + | |||
| + | Nastavení spustitelnosti: | ||
| + | |||
| + | <code bash> | ||
| + | chmod +x / | ||
| + | </ | ||
| + | |||
| + | Příklad entry v '' | ||
| + | |||
| + | <code json> | ||
| + | { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Použití přes '' | ||
| + | |||
| + | <code bash> | ||
| + | HUB=/ | ||
| + | mcpc connect $HUB: | ||
| + | mcpc @cdp tools-list | ||
| + | </ | ||
| + | |||
| + | ==== Ověření funkčnosti a profilu ==== | ||
| + | |||
| + | V testovaném prostředí server přes '' | ||
| + | |||
| + | Základní | ||
| + | |||
| + | <code bash> | ||
| + | mcpc @cdp tools-call new_page url: | ||
| + | mcpc @cdp tools-call take_snapshot | ||
| + | </ | ||
| + | |||
| + | Ověření, že Chromium běží s fixním profilem: | ||
| + | |||
| + | <code bash> | ||
| + | ps aux | grep chromium | grep " | ||
| + | </ | ||
| + | |||
| + | Očekávaný výsledek: | ||
| + | |||
| + | < | ||
| + | user-data-dir=/ | ||
| + | </ | ||
| + | |||
| + | Po opravě wrapperem se stránky načítaly správně, screenshot a DOM snapshot fungovaly. Profil byl fixní v ''/ | ||
| ===== Kdy použít co ===== | ===== Kdy použít co ===== | ||
| - | * **Playwright MCP** → navigace, klikání, vyplňování formulářů, | + | * **Playwright MCP** → navigace, klikání, vyplňování formulářů, |
| - | * **Chrome DevTools MCP** → debugging výkonu, Lighthouse audity, analýza paměti a sítě, source-mapped chyby. | + | * **Chrome DevTools MCP** → debugging výkonu, Lighthouse audity, analýza paměti a sítě, source-mapped chyby. |
| Nástroje se překrývají jen v základní automatizaci. Ve zbytku jsou komplementární — dává smysl mít oba nastavené současně. | Nástroje se překrývají jen v základní automatizaci. Ve zbytku jsou komplementární — dává smysl mít oba nastavené současně. | ||