/ 目录 / 演练场 / NotebookLM-py
● 社区 teng-lin ⚡ 即开即用

NotebookLM-py

作者 teng-lin · teng-lin/notebooklm-py

从 Claude 驱动 Google NotebookLM——创建笔记本、导入来源、生成音频概览,包含 Web 界面隐藏的功能。

notebooklm-py 是 NotebookLM 的非官方 Python API + Claude skill。它暴露了笔记本 CRUD、来源导入(PDF、URL、YouTube)以及音频概览 / 思维导图 / FAQ 生成功能。包含 CLI 和 agent skill,让你可以说「把这些 PDF 加载到笔记本并给我音频概览」,而无需打开 notebooklm.google.com。

为什么要用

核心特性

实时演示

实际使用效果

就绪

安装

选择你的客户端

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "notebooklm-py-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/teng-lin/notebooklm-py",
        "~/.claude/skills/notebooklm-py"
      ],
      "_inferred": true
    }
  }
}

打开 Claude Desktop → Settings → Developer → Edit Config。保存后重启应用。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "notebooklm-py-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/teng-lin/notebooklm-py",
        "~/.claude/skills/notebooklm-py"
      ],
      "_inferred": true
    }
  }
}

Cursor 使用与 Claude Desktop 相同的 mcpServers 格式。项目级配置优先于全局。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "notebooklm-py-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/teng-lin/notebooklm-py",
        "~/.claude/skills/notebooklm-py"
      ],
      "_inferred": true
    }
  }
}

点击 Cline 侧栏中的 MCP Servers 图标,然后选 "Edit Configuration"。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "notebooklm-py-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/teng-lin/notebooklm-py",
        "~/.claude/skills/notebooklm-py"
      ],
      "_inferred": true
    }
  }
}

格式与 Claude Desktop 相同。重启 Windsurf 生效。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "notebooklm-py-skill",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/teng-lin/notebooklm-py",
        "~/.claude/skills/notebooklm-py"
      ]
    }
  ]
}

Continue 使用服务器对象数组,而非映射。

~/.config/zed/settings.json
{
  "context_servers": {
    "notebooklm-py-skill": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/teng-lin/notebooklm-py",
          "~/.claude/skills/notebooklm-py"
        ]
      }
    }
  }
}

加入 context_servers。Zed 保存后热重载。

claude mcp add notebooklm-py-skill -- git clone https://github.com/teng-lin/notebooklm-py ~/.claude/skills/notebooklm-py

一行命令搞定。用 claude mcp list 验证,claude mcp remove 卸载。

使用场景

实战用法: NotebookLM-py

从一批论文快速构建研究摘要

👤 研究者 / 分析师 ⏱ ~20 min beginner

何时使用: 收件箱里来了 10 篇论文;你想快速得到一个综合摘要。

前置条件
  • 有 NotebookLM 访问权限的 Google 账号 — 通过 Python auth 流程登录一次即可
步骤
  1. 导入
    Use notebooklm-py. Create a notebook 'Q2 Reading'. Add the 10 PDFs in /papers/.✓ 已复制
    → 笔记本已创建;来源已加载
  2. 综合
    Generate a topic-clustered summary across all sources.✓ 已复制
    → 跨来源的综合摘要
  3. 生成音频
    Generate an audio overview. Save the MP3.✓ 已复制
    → MP3 文件

结果: 10 篇论文转化为 20 分钟可读的摘要,或一段散步时能听的音频。

注意事项
  • 来源质量参差不齐 — 要求综合时标注每条信息的来源归属
搭配使用: filesystem

从产品文档自动生成 FAQ

👤 产品 / DevRel ⏱ ~25 min beginner

何时使用: 你有文档,需要给用户一份 FAQ。

步骤
  1. 加载
    Create a notebook from /docs (recursive). Generate FAQ.✓ 已复制
    → FAQ 输出
  2. 精细化
    Drop FAQ items that aren't actually frequently asked. Add citations to source sections.✓ 已复制
    → 带来源引用、经相关性过滤的 FAQ

结果: 可以直接发布的 FAQ。

注意事项
  • 问题过于通用 — 如果有真实用户提问,提供示例

组合

与其他 MCP 搭配,撬动十倍杠杆

notebooklm-py-skill + filesystem

将音频概览和摘要保存到本地

Save MP3 to /research/audio/.✓ 已复制
notebooklm-py-skill + aris-research-skill

ARIS 负责自主研究发现,NotebookLM 负责综合消化

ARIS finds papers; NotebookLM digests them into an audio overview.✓ 已复制

工具

此 MCP 暴露的能力

工具输入参数何时调用成本
create_notebook title 新项目 1 NotebookLM op
add_source notebook_id, source: pdf|url|youtube 构建来源集 1 op + ingestion time
generate_audio notebook_id, style? 音频概览 1 op + render
generate_mind_map notebook_id 可视化来源结构 1 op
ask notebook_id, question 基于来源的问答 1 op

成本与限制

运行它的成本

API 配额
受 NotebookLM 套餐限制
每次调用 Token 数
token 消耗极少——主要成本是 NotebookLM API
费用
NotebookLM 免费套餐可用;更高限制需付费
提示
复用笔记本;不要频繁创建后丢弃

安全

权限、密钥、影响范围

最小权限: Google auth for NotebookLM
凭据存储: 本地 OAuth token 缓存
数据出站: Google NotebookLM
切勿授予: OAuth scopes you don't need

故障排查

常见错误与修复

Auth flow stuck

清除本地 token 缓存并重新认证

Source ingestion fails for big PDFs

拆分为更小的块;NotebookLM 对单个来源有大小限制

Audio generation queued forever

NotebookLM 的音频队列有时较慢;稍后重试

替代方案

NotebookLM-py 对比其他方案

替代方案何时用它替代权衡
NotebookLM web UI手动、一次性使用无自动化;缺少编程化功能
Custom RAG pipeline需要完全控制底层模型大量工程投入,而 NotebookLM 功能是免费的

更多

资源

📖 阅读 GitHub 上的官方 README

🐙 查看未解决的 issue

🔍 浏览全部 400+ MCP 服务器和 Skills