Replace custom NotebookLM MCP with upstream notebooklm-mcp-cli

Decision

Replace custom NotebookLM MCP server (v1.0.0, 42 tools, notebooklm-py wrapper) with upstream notebooklm-mcp-cli v0.5.17 running natively via Docker HTTP transport. Zero custom code.

Rationale

Custom server was dead weight: every upstream feature required manual porting, notebooklm-py is less actively maintained. Upstream has 38 consolidated tools + 20 net-new capabilities (studio_revise, cross_notebook_query, batch, pipeline, tag, async_query), security hardening (CDP origin restriction, path traversal protection), 700+ tests, weekly releases.

Alternatives Rejected

Option B: Port missing features into custom server — high maintenance, 500+ lines new code, two codebases to track. Option C: Hybrid — use upstream as library import, keep custom MCP wrapper — coupling to internal API, medium-high effort.

Outcome

SUCCESS (verified 2026-04-16). Upstream notebooklm-mcp-cli v0.5.24 confirmed running in notebooklm-mcp container. Custom notebooklm-py wrapper no longer present. Container healthy (15h uptime at verification). Version exceeded target (v0.5.24 vs planned v0.5.17) — upstream releases tracked. All 38+ tools operational via notebooklm-mcp.arjtech.in/mcp.

  • notebooklm
  • notebooklm-mcp-cli-upstream-replaces-custom-wrapper
  • custom-notebooklm-wrapper-vs-upstream-tradeoff
  • docker
  • notebooklm-mcp-v2-upstream-gains-20-net-new-capabilities