v1.1.0 — Always Works: Auto-recover + GSC Top Queries
Three fixes that turn LibreCrawl MCP into an always works tool for people who run audits back-to-back across many sites.
🔧 Auto-recovery from stuck crawler state
New _ensure_crawler_ready() helper runs before every start_crawl / audit. Resets three stale states that were silently blocking fresh audits:
- Previous crawl still running —
"Crawl already in progress"409 errors - Previous crawl paused — resume button dead when launched from a new MCP session
- Zombie thread —
is_running=Truebut 0 progress for >60s
Audit tool also has a force-stop-and-retry fallback if it still hits a race. Net effect: run a new crawl anytime — it just works.
🔍 GSC section: top queries + quick wins
librecrawl_append_gsc_section() now renders, in addition to indexing errors:
- Top 25 search queries table — clicks, impressions, CTR, position
- 🎯 Quick wins — page-2 keywords (positions 6-20) with >50 impressions, auto-surfaced as page-1 optimisation opportunities
Input is also more forgiving: pass performance metrics either nested under performance: {...} or flat at the top level. Whichever shape your GSC MCP returns, it just works.
📚 README / installer
- GSC property-type warning (
sc-domain:vs URL-prefix) — the #1 reason "User does not have sufficient permission" errors happen on first GSC use. Now called out in both README and installer. - What's new in v1.1.0 callout at the top of README.
Upgrade
If you already installed via install.sh, just pull and restart:
```bash
cd ~/librecrawl-mcp && git pull && pm2 restart librecrawl-mcp
```
Or rerun the one-line installer — it'll update in place.
Compatibility: all 19 MCP tools unchanged at the signature level. Pure additive release.