NotebookLM MCP CLI 与服务器端实现

  • 项目简介
    • 该仓库旨在把 NotebookLM 的 CLI 与 MCP 服务器整合为一个统一包,提供用于 NotebookLM 的 MCP 服务端能力,包括资源/工具/提示的托管、工具注册与执行、以及可定制的 Prompt 模板渲染等。核心目标是通过 MCP 协议以标准化的 JSON-RPC 形式向 LLM 客户端暴露后端能力,并支持多种传输方式与会话管理,帮助 AI 代理在不直接访问 NotebookLM UI 的情况下进行智能工作流。文档中还包含 MCP 指南和工具集成示例,便于开发者拓展新的资源/工具或 prompts。
  • 主要功能点
    • MCP 核心能力暴露:按 MCP 规范接收和处理 JSON-RPC 请求,返回结构化的 JSON-RPC 响应,支持会话与上下文管理。
    • 资源与数据访问:提供资源(Resources)的托管、检索、更新等能力,便于 LLM 客户端访问、查询和下载数据。
    • 工具注册与执行:注册可调用的工具(Tools),并通过 MCP 接口执行,允许 LLM 客户端发起对外部功能的调用。
    • Prompts 与模板:定义并渲染 Prompt 模板,支持定制化的 LLM 交互模式,以及根据需要渲染不同格式的提示内容。
    • 会话管理与能力声明:维护多用户会话上下文、能力声明、以及对客户端能力的自描述。
    • 多传输协议支持与安全性:设计上考虑了 Stdio、SSE、WebSocket 等传输形式,提供安全、可扩展的上下文服务框架。
    • 集成与扩展性:CLI 与 MCP 服务端打包在同一包中,提供扩展点以便将来添加新的工具、资源类型或自定义扩展。
  • 安装与运行步骤
    • 通过 PyPI 安装或从源码运行,包同时提供 CLI 与 MCP 服务器的可执行入口,便于在不同环境中快速集成与部署。
    • 运行时可以使用 uv/uvx 等工具进行快速、本地化部署,CLI 为脚本化与自动化工作流提供支持,MCP 服务器负责对外暴露上下文与功能能力。
  • 服务器配置(供 MCP 客户端使用的配置示例说明)
    • server name: notebooklm-mcp
    • command: notebooklm-mcp
    • args: ["--from","notebooklm-mcp-cli","notebooklm-mcp"]
    • 说明:以上配置用于 MCP 客户端在启动时将服务器进程与 MCP 服务器对接,具体参数可按环境和工具链调整。请将该配置信息放入你的 MCP 客户端配置.json 中,作为需要连接的 MCP 服务器条目之一,以便客户端能够从统一入口调用 MCP 服务器暴露的资源、工具与 prompts。
  • 基本使用方法
    • 启动与连接:安装并启动 NotebookLM MCP CLI 与服务器端,确保 MCP 客户端能够通过配置找到并连接到 notebooklm-mcp 服务。
    • 访问与交互:通过 MCP 客户端发送标准的 JSON-RPC 请求,服务器将返回相应的 JSON-RPC 响应或事件通知,用于资源访问、工具调用和提示渲染。
    • 扩展性与定制:可以在现有 MCP 框架下扩展资源类型、工具与模板,满足特定场景下的上下文服务和交互模式需求。

服务器信息