A lightweight MCP server exposing Google NotebookLM capabilities as workflow-oriented tools for AI agents in Cursor, Claude Code, and other MCP-compatible clients.
Server has 10 tools with basic schemas and descriptions, but significant gaps limit production readiness. All tools have descriptions (10-50 chars, below the 50-200 char baseline for LLM optimization) and input schemas with type definitions. However, descriptions lack actionable context (WHEN to use, prerequisites, return value details). Parameter descriptions are minimal or absent. No output schemas documented. Error handling is absent, no recovery guidance, no categorization of retryable vs fatal errors. Tool naming follows verb_noun convention (list_, create_, delete_, generate_, upload_, switch_) but lacks clarity on mutual exclusivity and dependencies (e.g., upload_source accepts both 'file' and 'url' but doesn't explain when to use each). No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels. Composition is reasonable, tools are single-purpose, but responses lack chaining IDs and pagination support for list operations.
Create a new NotebookLM notebook.
Delete a NotebookLM notebook by ID.
Delete a source from a NotebookLM notebook.
Generate a podcast from a NotebookLM notebook.
Generate a quiz from a NotebookLM notebook.
Generate a study guide from a NotebookLM notebook.
List all NotebookLM notebooks. Returns a dictionary with notebook titles and IDs.
Descriptions are too short (10-50 chars vs 50-200 char baseline). Lack WHAT/WHEN/WHY context. E.g., 'Create a new NotebookLM notebook' doesn't explain when to use it vs switching accounts, or what happens on success.
No output schemas documented. LLMs cannot plan downstream calls or extract required fields. E.g., list_notebooks_tool returns 'dictionary with notebook titles and IDs' but structure is undefined.
No error handling guidance. Destructive tools (delete_notebook, delete_source) lack confirmation/dry-run patterns. No recovery hints for auth failures, rate limits, or invalid inputs.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | <=2025-11-25 | v2 |
List all sources in a NotebookLM notebook.
Switch to a different NotebookLM account profile.
Upload a source file (PDF, TXT, or URL) to a NotebookLM notebook.
upload_source parameter 'source_type' enum lacks description of when to use 'file' vs 'url'. No guidance on supported file formats (PDF, TXT mentioned in tool description but not in schema).
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels. LLMs cannot distinguish safe reads from destructive writes without explicit hints.