Token导航 LogoToken导航TokenDH.com
Notebooklm Go logo
AI代理未说明官方级别未说明来源级核验

Notebooklm Go

MCP Server

一个Golang重写的MCP服务器,允许AI代理(如Claude Code、Cursor、Codex等)查询Google NotebookLM笔记本,以获取基于Gemini的源引用答案。

工具数

16

提示词数

0

GitHub Stars

1

资源数

0
AI代理浏览器自动化GoClaudeClaude DesktopClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

asccclass

提供方

asccclass

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

笔记本mcp go

英语 | 繁体中文

英语

A. Golang重写请促销/记事本mcp --MCP服务器,允许AI代理(Claude Code、Cursor、Codex……)查询Google NotebookLM笔记本电脑,以获取由Gemini支持的源代码、引用支持的答案。

与最初的TypeScript有什么不同?

特性TypeScript原创重写
运行时Node.js+npx单个静态二进制
浏览器自动化Patchright(Playwright fork)go rod(Chrome DevTools协议)
启动时间~3-5秒(节点引导)~100毫秒
内存~150 MB空闲~25 MB空闲
二进制大小~100 MB(节点模块)~14 MB
MCP传输@modelcontextprotocol/sdk基于stdio的手动JSON-RPC 2.0

全部 16工具 从最初的实施。

______________________________________________________________________

快速开始

# Build
go build -o notebooklm-mcp-go .

# Register as an MCP server (Claude Code)
claude mcp add notebooklm ./notebooklm-mcp-go

# Or add to your claude_desktop_config.json:
# {
#   "mcpServers": {
#     "notebooklm": {
#       "command": "/path/to/notebooklm-mcp-go"
#     }
#   }
# }

如何使用此MCP

此项目是一个MCP服务器。你通常会 手动调用其工具。 相反,你:

  1. 构建二进制文件
  2. 在您的MCP客户端中注册
  3. 让你的AI代理使用NotebookLM
  4. 客服通过MCP为您调用这些工具

典型用户流量

  1. 构建并注册服务器。
  2. 请您的代理人进行身份验证:

- Set up NotebookLM authentication - 这叫 setup_auth 并打开Chrome浏览器进行谷歌登录。

  1. 验证状态:

- Check NotebookLM health - 这叫 get_health.

  1. 将笔记本添加到本地库:

- Add my NotebookLM notebook - 代理应收集NotebookLM URL、描述、主题和用例,然后调用 add_notebook.

  1. 如果需要,请选择默认笔记本:

- Use as my default notebook - 这叫 select_notebook.

  1. 开始提问:

- Ask my notebook to summarize the API design - Ask the same session to compare v1 and v2 behaviour - 这叫 ask_question,可选择重复使用 session_id.

MCP客户端通常如何与其交互

  • 克劳德代码/克劳德桌面:

将二进制文件注册为MCP服务器,然后用自然语言请求操作。

  • Cursor/Copyro/其他MCP感知客户端:

在该客户端的MCP/server配置中添加server命令,然后正常指示代理。

  • 直接执行:

跑步 ./notebooklm-mcp-go 启动stdio JSON-RPC MCP服务器。这是针对MCP客户端的,不适用于交互式终端。

您可以给代理的示例提示

  • Set up NotebookLM authentication
  • Show NotebookLM server health
  • List my notebooks
  • Add this NotebookLM notebook to the library
  • Select the notebook named
  • Ask the active notebook: what are the main design tradeoffs?
  • Continue the previous NotebookLM session and ask for implementation steps
  • Reset the current NotebookLM session
  • Clean up NotebookLM data but keep my library

客户端特定的MCP配置示例

确切的MCP UI和文件格式可能会因客户端版本而异。以下示例与当前记录的模式相匹配 stdio-基于本地MCP服务器。

克劳德桌面/克劳德代码

Claude Code可以直接从CLI注册服务器:

claude mcp add notebooklm ./notebooklm-mcp-go

如果你想手动配置Claude Desktop,请在MCP配置JSON中添加这样的条目:

{
  "mcpServers": {
    "notebooklm": {
      "command": "C:\\Users\\andyl\\Myprogram\\notebooklm-go\\notebooklm-mcp-go.exe",
      "args": [],
      "env": {
        "DEBUG": "0"
      }
    }
  }
}

笔记:

  • 替换 command 路径与您实际构建的二进制位置。
  • 在macOS/Linux上,使用绝对二进制路径,例如 /Users/you/path/notebooklm-mcp-go.
  • 如果您经常构建,请保持二进制路径稳定,这样客户端配置就不需要更新。

光标

游标从项目级别读取MCP配置 .cursor/mcp.json 或全球 ~/.cursor/mcp.json.

项目本地示例:

{
  "mcpServers": {
    "notebooklm": {
      "command": "${workspaceFolder}/notebooklm-mcp-go",
      "args": [],
      "env": {
        "DEBUG": "0"
      }
    }
  }
}

使用绝对路径的Windows示例:

{
  "mcpServers": {
    "notebooklm": {
      "command": "C:\\Users\\andyl\\Myprogram\\notebooklm-go\\notebooklm-mcp-go.exe",
      "args": [],
      "env": {
        "DEBUG": "0"
      }
    }
  }
}

笔记:

  • 如果将二进制文件保存在repo根目录中, ${workspaceFolder}/notebooklm-mcp-go 在macOS/Linux上很方便。
  • 在Windows上,更喜欢 .exe 路径。
  • 编辑后 mcp.json,重新启动Cursor或重新加载MCP服务器。

法典

Codex通过CLI和共享配置支持MCP。

CLI注册示例:

codex mcp add notebooklm -- C:\Users\andyl\Myprogram\notebooklm-go\notebooklm-mcp-go.exe

如果您更喜欢配置文件设置,请将其添加到 ~/.codex/config.toml:

[mcp_servers.notebooklm]
command = "C:\\Users\\andyl\\Myprogram\\notebooklm-go\\notebooklm-mcp-go.exe"
args = []

[mcp_servers.notebooklm.env]
DEBUG = "0"

macOS/Linux示例:

[mcp_servers.notebooklm]
command = "/absolute/path/to/notebooklm-mcp-go"
args = []

[mcp_servers.notebooklm.env]
DEBUG = "0"

笔记:

  • codex mcp list 可用于验证服务器是否已注册。
  • Codex在CLI和IDE扩展之间共享MCP配置。
  • 保持服务器名称简短且具有描述性,例如 notebooklm.

______________________________________________________________________

工具

核心

工具说明
ask_question向NotebookLM笔记本提问。支持会话连续性、笔记本选择和浏览器选项。

会话管理

工具说明
list_sessions列出所有活动浏览器会话,包括年龄、消息计数、上次活动
close_session按ID关闭特定会话
reset_session重置会话的聊天记录(重新加载笔记本页面)

系统

工具说明
get_health身份验证状态、活动会话、配置摘要
setup_auth打开一个可见的浏览器进行手动谷歌登录
re_auth切换帐户/新身份验证(清除所有数据)
cleanup_data通过预览+确认对所有MCP数据文件进行深度清理

图书馆管理

工具说明
add_notebook将NotebookLM笔记本添加到持久库中
list_notebooks列出所有带有元数据的笔记本
get_notebook按ID获取特定笔记本
select_notebook设置活动笔记本
update_notebook更新笔记本元数据
remove_notebook从库中删除笔记本
search_notebooks按名称、描述、主题或标签搜索笔记本
get_library_stats笔记本库的使用统计数据

每个工具的用途是什么

工具何时使用注意事项
ask_question向NotebookLM提出一个基于笔记本来源的问题支持 session_id, notebook_id, notebook_url,以及浏览器覆盖
list_sessions检查活动的浏览器支持的聊天会话可用于调试或重用会话上下文
close_session结束一个会话并获得免费浏览器资源需要 session_id
reset_session保持相同的会话ID,但清除聊天历史记录重新加载笔记本页面
get_health检查身份验证状态、配置和当前会话统计信息良好的第一个诊断命令
setup_authNotebookLM首次登录谷歌打开可见浏览器
re_auth使用相同或不同的Google帐户重新登录清除旧身份验证并关闭会话
cleanup_data预览或删除本地NotebookLM MCP数据支持 confirmpreserve_library
add_notebook将NotebookLM笔记本保存到本地库需要笔记本元数据
list_notebooks显示本地库中的所有笔记本包括元数据和URL
get_notebook显示一个笔记本的详细信息需要笔记本 id
select_notebook设置使用的默认笔记本 ask_question需要笔记本电脑 id
update_notebook编辑已保存的笔记本元数据需要笔记本 id
remove_notebook从本地库中删除笔记本不删除真实的NotebookLM笔记本
search_notebooks按主题/名称/标签/描述查找笔记本库增长后有用
get_library_stats显示使用次数和活动笔记本状态有利于操作可见性

推荐操作顺序

如果您是第一次使用此MCP,请按照以下顺序操作:

  1. setup_auth
  2. get_health
  3. add_notebook
  4. list_notebooks
  5. select_notebook
  6. ask_question

持续使用:

  1. get_health
  2. list_notebookssearch_notebooks
  3. ask_question
  4. list_sessions / reset_session / close_session 如果您需要会话管理

______________________________________________________________________

配置

环境变量

# NotebookLM
NOTEBOOK_URL=https://notebooklm.google.com/notebook/...

# Browser
HEADLESS=true                    # Run headless (default: true)
BROWSER_TIMEOUT=30000            # Timeout in ms

# Sessions
MAX_SESSIONS=10                  # Max concurrent sessions
SESSION_TIMEOUT=900              # Session idle timeout in seconds

# Auto-login (optional)
AUTO_LOGIN_ENABLED=false
LOGIN_EMAIL=you@gmail.com
LOGIN_PASSWORD=yourpassword

# Stealth (human-like behavior)
STEALTH_ENABLED=true
STEALTH_HUMAN_TYPING=true
TYPING_WPM_MIN=160
TYPING_WPM_MAX=240
MIN_DELAY_MS=100
MAX_DELAY_MS=400

# Tool profile
NOTEBOOKLM_PROFILE=full          # minimal | standard | full
NOTEBOOKLM_DISABLED_TOOLS=cleanup_data,re_auth

CLI配置命令

# Show current settings
./notebooklm-mcp-go config get

# Set tool profile
./notebooklm-mcp-go config set profile minimal
./notebooklm-mcp-go config set profile standard
./notebooklm-mcp-go config set profile full

# Disable specific tools
./notebooklm-mcp-go config set disabled-tools "cleanup_data,re_auth"

# Reset to defaults
./notebooklm-mcp-go config reset

设置已保存到 ~/.config/notebooklm-mcp/settings.json.

CLI配置会影响什么

  • profile:限制哪些工具暴露给MCP客户端。
  • disabled-tools:隐藏选定的工具,即使当前配置文件通常允许它们。
  • 这些设置会影响服务器在启动时返回的工具列表。

档案

简介包括的工具
minimalask_question、get_health、setup_auth
standard+re_auth、list_sessions、close_session、list_notebook、select_notebook和add_notebook
full全部16个工具(默认)

______________________________________________________________________

数据路径

平台数据目录
Linux~/.local/share/notebooklm-mcp/
macOS~/Library/Application Support/notebooklm-mcp/
窗户%APPDATA%\notebooklm-mcp\

图书馆: /library.json\ 身份验证状态: /browser_state/state.json\ Chrome配置文件: /chrome_profile/

______________________________________________________________________

建筑

Your Task
  └─► Claude / Codex / Cursor
        └─► MCP Server (JSON-RPC over stdio)
              └─► go-rod (Chrome DevTools Protocol)
                    └─► Chrome / Chromium
                          └─► NotebookLM (Gemini 2.5)
                                └─► Your Docs

封装结构

.
├── main.go                          # Entry point + CLI config
├── internal/
│   ├── config/config.go             # Configuration (env vars + defaults)
│   ├── auth/auth_manager.go         # Browser state / cookie persistence
│   ├── library/
│   │   ├── types.go                 # Library data types
│   │   └── library.go               # Persistent notebook library (library.json)
│   ├── session/session.go           # Browser sessions + session manager
│   ├── tools/
│   │   ├── definitions.go           # MCP tool definitions (schemas + descriptions)
│   │   └── handlers.go              # Tool implementation logic
│   ├── mcp/server.go                # JSON-RPC 2.0 MCP server (stdio transport)
│   └── utils/
│       ├── logger.go                # Structured logging to stderr
│       └── settings.go              # Profile/tool filtering settings
└── go.mod

______________________________________________________________________

首次设置

  1. 构建二进制文件: go build -o notebooklm-mcp-go .
  2. 向您的MCP客户端注册
  3. 问克劳德: “设置NotebookLM身份验证” → calls setup_auth
  4. Chrome窗口打开——登录您的谷歌帐户
  5. 登录后,身份验证状态会自动保存到磁盘
  6. 验证: “检查NotebookLM运行状况” → calls get_health
  7. 添加笔记本: “添加我的NotebookLM笔记本” → 克劳德引导你 add_notebook
  8. 开始查询: “向我的笔记本询问X” → calls ask_question

常见工作流

1.首次认证

  1. 通过客户端启动MCP服务器。
  2. 让代理人跑 setup_auth.
  3. 在浏览器窗口中登录谷歌。
  4. 让代理人跑 get_health.
  5. 确认 authenticated=true.

2.添加笔记本并查询

  1. 在NotebookLM中创建或打开笔记本。
  2. 复制其可共享的URL。
  3. 请代理通过添加 add_notebook.
  4. 可选呼叫 select_notebook.
  5. 通过以下方式提问 ask_question.

3.继续对话

  1. 问第一个问题 ask_question.
  2. 保留退回的 session_id.
  3. 用同样的方法问后续问题 session_id.
  4. 使用 reset_session 如果你想在不删除会话记录的情况下进行干净的对话。

4.故障排除

  • 如果NotebookLM停止按预期应答,请运行 get_health.
  • 如果Google帐户已更改或登录已过期,请运行 re_auth.
  • 如果浏览器/会话状态已损坏,请运行 cleanup_data 先预览,然后确认删除。
  • 如果要在清理过程中保留已保存的笔记本,请设置 preserve_library=true.

______________________________________________________________________

速率限制

免费谷歌账户: 50次查询/天.当达到限制时:

  • ask_question 返回a RateLimitError
  • 使用 re_auth 切换到其他Google帐户
  • 或者等到第二天

升级到 谷歌AI Pro/Ultra 上限为5倍。

______________________________________________________________________

许可证

MIT——与最初的TypeScript项目相同。

繁体中文

中文版请参考 README.zh-TW.md

目录标签

目录标签

AI代理浏览器自动化GoClaude本地部署GoogleNotebookLMMCP服务器Golang

支持客户端

Claude DesktopClaudeCursor

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

session

工具数量(toolCount,工具数)

16

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明session部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP