使用说明
notebooklm-mcp-cli远程API容器
notebooklm-mcp-cli 中描述的场景,使用以下步骤创建明细表,以便在概念设计中分析体量的体积。
n8n等工作流 nlm 中描述的场景,使用以下步骤创建明细表,以便在概念设计中分析体量的体积。
特徴
- 最小API构成(
/health,/exec,/artifacts/download) - 全部同步
nlm啊bash -lc通过执行- 支持通过noVNC手动登录操作
- 通过base映像分离可以缩短构建时间
仕様
- API仕様:
docs/spec_api.md - 容器规格:
docs/spec_container.md
安装,安装
- 准备环境变量
cp .env.example .env
- (仅在从属更新时)创建基础映像
docker build -f Dockerfile.base -t nlm-api-base:latest .
- 容器启动
docker compose up -d --build
首次登录
- 和 VNC :
http://<host>:6080/vnc.html - 在容器中
nlm login,认证状态为volume(/root/.notebooklm-mcp-cli),模板名称将采用不同的格式。
API的使用方法(示例)
健康检查
curl -sS http://127.0.0.1:8080/health
脚本执行
curl -sS -X POST http://127.0.0.1:8080/exec \
-H "Content-Type: application/json" \
-d '{
"script":"set -euo pipefail\nnlm login --check\nnlm notebook list --json",
"timeout_seconds": 600
}'
交付件下载
curl -L "http://127.0.0.1:8080/artifacts/download?notebook_id=<NOTEBOOK_ID>&artifact_id=<ARTIFACT_ID>&kind=audio" -o artifact.bin
来自n8n的执行例(/exec 交给script)
# 入力パラメータ
ARXIV_URL="{{ $json.url }}"
NOTEBOOK_TITLE="{{ $json.notebookTitle }}"
FOCUS=$(cat <<EOF
私の興味がある領域は以下である。
AI の「頭の中」に関することなら興味がある。
- AIの知識構造、認識、推論、相互作用に関するもの
- AI の思考過程を扱うもの
- データセットの構造・特性に関するもの
- ハルシネーションや推論精度を扱うもの
AI が「何を見せるか」や「社会問題」は興味がない。
- 表現系(画像・音声・UI・資料作成)
- 社会的問題(公平性・バイアス・個人情報・フェイクニュース)
- 生物学/物理学などAIの思考構造に無関係な領域
- 単純アルゴリズム(経路計算など)
EOF
)
# 0. 認証確認
set -euo pipefail
nlm login --check || nlm login
# 1. ノートブックを作成し、JSONからIDを取得
echo "=== Step 1: Creating Notebook ==="
nlm notebook create "$NOTEBOOK_TITLE"
NOTEBOOK_ID=$(nlm notebook list --json | jq -r --arg title "$NOTEBOOK_TITLE" '.[] | select(.title == $title) | .id' | head -n 1)
echo "Notebook ID: $NOTEBOOK_ID"
# 2. ソース(URL)を追加し、処理完了まで待機 (--wait)
echo "=== Step 2: Adding Source & Waiting ==="
nlm source add $NOTEBOOK_ID --url "$ARXIV_URL" --wait
# 3. 音声生成 (日本語、短く、Deep Dive)
# --language ja: 日本語
# --length short: 短く
# --format deep_dive: ディープダイブ
echo "=== Step 3: Requesting Audio Generation ==="
nlm audio create $NOTEBOOK_ID \
--format deep_dive \
--length short \
--language ja \
--focus """$FOCUS""" \
--confirm
nlm create slides $NOTEBOOK_ID --format detailed_deck --length default --language ja --focus """$FOCUS""" --confirm
nlm create infographic $NOTEBOOK_ID --orientation landscape --detail detailed --language ja --focus """$FOCUS""" --confirm
提供文件的情况如下。
cat <<EOF > tmp_google_alerts.txt
{{ $json.text }}
EOF
# 2. ソースを追加し、処理完了まで待機 (--wait)
echo "=== Step 2: Adding Source & Waiting ==="
nlm source add $NOTEBOOK_ID --file tmp_google_alerts.txt --wait
