MCP server for Google NotebookLM - Create notebooks, add sources, and query AI with citations
Project description
kof-notebooklm-mcp
MCP Server for Google NotebookLM — Create notebooks, add sources, and query AI with citations directly from your IDE.
🧠 Part of the KOF-LocalBrain ecosystem
Features
- 🆕 Create Notebooks — Programmatically create and name NotebookLM notebooks
- 📄 Add Sources — Upload URLs or paste text directly into notebooks
- 💬 Ask Questions — Query the AI and get answers with source citations
- 📋 List & Inspect — Browse notebooks and their sources
- 🔐 Persistent Auth — Login once, reuse session across runs
Installation
pip install kof-notebooklm-mcp
Post-install Setup
# Install Playwright browsers
playwright install chromium
# Initialize authentication (opens browser for Google login)
kof-notebooklm-init
Quick Start
As MCP Server
Add to your MCP configuration (mcp_config.json):
{
"mcpServers": {
"notebooklm": {
"command": "kof-notebooklm-mcp",
"args": []
}
}
}
Available Tools
| Tool | Description |
|---|---|
health_check |
Verify connection and auth status |
list_notebooks |
List all notebooks |
create_notebook |
Create a new notebook (with optional title) |
get_notebook |
Get notebook details |
list_sources |
List sources in a notebook |
add_source |
Add URL or text source |
ask |
Query notebook AI with citations |
Example Usage (via MCP client)
# Create a research notebook
result = await mcp.call_tool("create_notebook", {"title": "Market Research 2026"})
notebook_id = result["notebook_id"]
# Add a source
await mcp.call_tool("add_source", {
"notebook_id": notebook_id,
"source_type": "url",
"url": "https://example.com/report.pdf"
})
# Ask a question
answer = await mcp.call_tool("ask", {
"notebook_id": notebook_id,
"question": "What are the key market trends?"
})
print(answer["answer"])
print(answer["citations"])
Configuration
Environment variables (optional):
| Variable | Description | Default |
|---|---|---|
KOF_NOTEBOOKLM_HEADLESS |
Run browser in headless mode | true |
KOF_NOTEBOOKLM_PROFILE_DIR |
Browser profile directory | ~/.kof-notebooklm/profile |
Development
git clone https://github.com/keeponfirst/kof-notebooklm-mcp.git
cd kof-notebooklm-mcp
pip install -e ".[dev]"
pytest
License
MIT License - see LICENSE for details.
Related Projects
- KOF-LocalBrain — Local-first brain capture system
- Model Context Protocol — The standard for AI tool integration
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kof_notebooklm_mcp-0.1.1.tar.gz.
File metadata
- Download URL: kof_notebooklm_mcp-0.1.1.tar.gz
- Upload date:
- Size: 64.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
05f2114eb9e2f51f5a5ec55e5f139939b4db3aacfb3269167414db671b6cf99b
|
|
| MD5 |
f563887862951c9193ddd9dad92ca0c9
|
|
| BLAKE2b-256 |
459c6c5131a5b917c78662774c9e28d953a1f0e57f2bc4a22bc6f9a0bbac07bc
|
Provenance
The following attestation bundles were made for kof_notebooklm_mcp-0.1.1.tar.gz:
Publisher:
publish.yml on keeponfirst/kof-notebooklm-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
kof_notebooklm_mcp-0.1.1.tar.gz -
Subject digest:
05f2114eb9e2f51f5a5ec55e5f139939b4db3aacfb3269167414db671b6cf99b - Sigstore transparency entry: 893787474
- Sigstore integration time:
-
Permalink:
keeponfirst/kof-notebooklm-mcp@4fd4814d5e512df4e335fdad86accc802ec08e80 -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/keeponfirst
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@4fd4814d5e512df4e335fdad86accc802ec08e80 -
Trigger Event:
release
-
Statement type:
File details
Details for the file kof_notebooklm_mcp-0.1.1-py3-none-any.whl.
File metadata
- Download URL: kof_notebooklm_mcp-0.1.1-py3-none-any.whl
- Upload date:
- Size: 51.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6218b7ffd749733605e1a0a8944c28d7c2636f335b3a047093fe40701aa04394
|
|
| MD5 |
3ec69bc6daf6d58f5e2ad273b696e7a8
|
|
| BLAKE2b-256 |
c3f557423636dde223892f2527203edf961c9136fdb3e8207ff1cad5189a04f6
|
Provenance
The following attestation bundles were made for kof_notebooklm_mcp-0.1.1-py3-none-any.whl:
Publisher:
publish.yml on keeponfirst/kof-notebooklm-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
kof_notebooklm_mcp-0.1.1-py3-none-any.whl -
Subject digest:
6218b7ffd749733605e1a0a8944c28d7c2636f335b3a047093fe40701aa04394 - Sigstore transparency entry: 893787547
- Sigstore integration time:
-
Permalink:
keeponfirst/kof-notebooklm-mcp@4fd4814d5e512df4e335fdad86accc802ec08e80 -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/keeponfirst
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@4fd4814d5e512df4e335fdad86accc802ec08e80 -
Trigger Event:
release
-
Statement type: