Enhanced MCP server for NotebookLM with client-side prompt structuring
NotebookLM MCP Structured
Enhanced MCP server for NotebookLM with client-side prompt structuring for source fidelity.
Requirements: This MCP server is designed to work with Claude Desktop. It requires Claude Desktop to be installed and configured to use MCP servers.
This is a modified version of notebooklm-mcp that adds comprehensive structuring instructions to guide Claude in crafting prompts that enforce document fidelity for professional use cases (legal analysis, research, fact-checking).
Key Features
Client-Side Prompt Structuring
The MCP tool description includes comprehensive guidelines that instruct Claude on how to structure questions before sending them to NotebookLM. This ensures:
- Source fidelity: Responses come ONLY from uploaded documents
- Citation requirements: Every claim includes source attribution
- Missing information handling: Explicit declaration when data is unavailable
- Multi-language support: Works naturally with any language Claude supports
- Question type adaptation: Different structures for comparisons, lists, analyses, explanations, and extractions
How It Works:
- User asks a simple question in any language
- Claude reads the structuring guidelines from the tool description
- Claude transforms the question into a well-structured prompt
- NotebookLM receives the structured prompt and responds accordingly
- Claude is instructed to present the response faithfully without adding external knowledge
Why This Matters:
NotebookLM already provides source fidelity by design (Gemini grounded on documents). The real problem this fork solves is different: preventing Claude from "improving" NotebookLM's responses with external knowledge when presenting them to the user.
Design Intent (what the fork aims to achieve):
┌─────────────────────────────────────────────────────┐
│ Without structuring (original MCP): │
│ • NotebookLM: "Document states X [Source: doc.pdf]"│
│ • Risk: Claude may add external knowledge │
│ "Document states X. Also, based on my knowledge, │
│ Y is important to consider..." │
│ └─ External knowledge added! ─┘ │
│ │
│ With structuring (this fork): │
│ • NotebookLM: "Document states X [Source: doc.pdf]"│
│ • Claude reads Response Handling instruction │
│ • Goal: Claude presents faithfully │
│ "Document states X [Source]" │
│ └─ Faithful presentation, no additions ─┘ │
└─────────────────────────────────────────────────────┘
The structuring guidelines include two critical instruction phases:
- Pre-send: Transform questions with explicit constraints (but preserve original wording)
- Post-receive: Instruct Claude to present responses faithfully WITHOUT external knowledge
This dual-phase approach is designed to maintain document fidelity throughout the workflow.
Verification & Transparency
How to verify the workflow:
Since NotebookLM saves chat history in your notebooks, you can verify the entire process:
- Ask a question through Claude using this MCP
- Open your notebook on the NotebookLM web interface (https://notebooklm.google.com)
- View the saved chat to see:
- The structured prompt that Claude sent (via the MCP)
- The original NotebookLM response with all internal reference links
What you can verify:
- That structuring was applied correctly to your question
- The raw NotebookLM response before Claude presents it
- How Claude interpreted the Response Handling instructions
- Which language was used for structured prompts (useful for multilingual testing)
This transparency mechanism lets you empirically verify the client-side structuring approach and understand each phase of the workflow.
Example Transformation:
Simple question:
What are the main findings in the research papers?
Claude structures it as:
RESPONSE INSTRUCTIONS
TASK: What are the main findings in the research papers?
OPERATIONAL CONSTRAINTS
- Use ONLY information explicitly present in uploaded documents
- DO NOT add external knowledge or interpretations
- If information is not present, state: "[NOT FOUND IN DOCUMENTS]"
REQUIRED OUTPUT FORMAT
For each finding:
- FINDING: [description]
- SOURCE: [document name/section]
- QUOTE: "direct quote supporting the finding"
CITATIONS
- Every claim MUST include source
- Use direct quotes where possible
HANDLING MISSING INFORMATION
- If information is missing, declare it explicitly
BEGIN STRUCTURED RESPONSE
Critical Formatting Rule:
- NO decorative lines (no
===or---) as they cause NotebookLM timeouts
Language Support
Multilingual by design - The fork works with multiple languages without requiring server-side configuration.
**Ho
Tools (1)
ask_notebookSends a structured query to NotebookLM to extract information with high source fidelity and citations.Environment Variables
NOTEBOOK_IDrequiredThe unique identifier for your Google NotebookLM notebookConfiguration
{"mcpServers":{"notebooklm-mcp-structured":{"command":"npx","args":["-y","@paolodalprato/notebooklm-mcp-structured"],"env":{"NOTEBOOK_ID":"your_notebook_id_here"}}}}