AgentStack
SKILL verified MIT Self-run

Zotero Notebooklm

skill-orhoncan-zotero-notebooklm-skill-zotero-notebooklm-skill · by orhoncan

Zotero koleksiyonları ile Google NotebookLM defterleri arasında iki yönlü senkronizasyon sağlar. Koleksiyondan defter oluşturur, makaleleri ve anotasyonları kaynak olarak yükler, podcast/slayt/video/infografik/literatür haritası üretir, deep research ile bulduğu yeni kaynakları Zotero'ya geri ekler. Kullanıcı bir Zotero koleksiyonundan NotebookLM defteri, podcast, sunum ya da literatür haritası ü…

No reviews yet
0 installs
9 views
0.0% view→install

Install

$ agentstack add skill-orhoncan-zotero-notebooklm-skill-zotero-notebooklm-skill

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Zotero Notebooklm? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Zotero koleksiyonlarını NotebookLM defterlerine senkronize ediyorsun. Kaynakları yükle, çıktılar üret, isteğe bağlı olarak deep research ile genişlet.

Setup

Bu adımları ilk mesajda paralel olarak yap:

  1. Zotero MCP kontrolü: ToolSearch ile "zotero add_by_doi" ara. mcp__zotero-mcp__zotero_add_by_doi bulunamazsa: "54yyyu/zotero-mcp (zotero-mcp-server) gerekli. Kurulum: uv tool install zotero-mcp-server" yaz ve dur.
  1. NotebookLM MCP kontrolü: ToolSearch ile "notebooklm notebook_create" ara. mcp__notebooklm-mcp__notebook_create bulunamazsa: "jacob-bd/notebooklm-mcp-cli gerekli. Kurulum: uv tool install notebooklm-mcp-cli" yaz ve dur.
  1. Auth kontrolü: mcp__notebooklm-mcp__server_info çağır. Auth hatası gelirse kullanıcıyı ! nlm login çalıştırmaya yönlendir.

Her iki MCP de hazırsa devam et.

Mod tespiti: Kullanıcı koleksiyon adı verdiyse hızlı mod, vermediyse interaktif mod.

Dil / Language: Kullanıcı hangi dilde yazıyorsa tüm yanıtları, ilerleme mesajlarını ve raporu o dilde ver. Komutlar hem Türkçe hem İngilizce biçimde kabul edilir (ör. genişlet = expand, seç = select, özet = summary); aşağıdaki tablolarda her komutun iki biçimi de listelidir. Whatever language the user writes in, respond, report, and accept commands in that same language.


Adım 1 - Koleksiyon Seçimi

Hızlı mod (koleksiyon adı verildi)

  • mcp__zotero-mcp__zotero_search_collections ile verilen adı ara.
  • Bulunamazsa mcp__zotero-mcp__zotero_get_collections ile tüm koleksiyonları listele, kullanıcıya göster.

İnteraktif mod (koleksiyon adı verilmedi)

  • mcp__zotero-mcp__zotero_get_collections ile koleksiyonları listele.
  • Kullanıcıdan numara veya isimle seçim iste.

Koleksiyon seçildikten sonra

  • mcp__zotero-mcp__zotero_get_collection_items ile makaleleri getir.
  • Eğer >15 makale varsa uyar: "Bu koleksiyonda {N} makale var. NotebookLM'de optimum 10-15 kaynak. Hepsini yükleyelim mi, yoksa alt seçim yapmak ister misin?"

Adım 2 - Defter Oluşturma

  • mcp__notebooklm-mcp__notebook_list ile mevcut defterleri kontrol et.
  • Aynı isimde defter varsa sor: "'{name}' adında bir defter zaten var. Mevcut deftere ekle mi, yenisini oluştur mu?"
  • Yeni defter: mcp__notebooklm-mcp__notebook_create(title="{koleksiyon_adı}")
  • Dönen notebook_id'yi kaydet - sonraki adımlarda kullanılacak.

Adım 3 - Kaynak Yükleme

Önce mevcut kaynakları kontrol et (tekrar-çalıştırma güvenliği): mcp__notebooklm-mcp__notebook_get(notebook_id="{nb_id}") ile defterdeki mevcut kaynakların başlıklarını al. Aynı koleksiyonu ikinci kez çalıştırmak duplicate kaynak yaratır; başlığı zaten defterde olan makaleleri atla ve raporda "zaten yüklü" diye not et. Anotasyon/Readwise kaynakları için de aynı başlık eşleştirmesini uygula.

Her (yüklenmemiş) makale için sırayla:

  1. PDF'i tercih et - tam metni context'ten geçirme.

mcp__zotero-mcp__zotero_get_item_children(item_key="{makale_key}") ile ekleri al. Yerel yolu olan bir PDF eki varsa, dosyayı doğrudan yükle: mcp__notebooklm-mcp__source_add(notebook_id="{nb_id}", source_type="file", file_path="{pdf_yolu}", title="{makale_başlığı}") Neden: PDF'i dosya olarak yüklemek tam metni Claude'un context'ine çekmediği için çok daha az token harcar ve makalenin yapısını (şekiller, atıflar, başlıklar) korur; NotebookLM PDF'i native işler.

  1. Yalnızca PDF eki yoksa fallback olarak tam metni kullan:

mcp__zotero-mcp__zotero_get_item_fulltext ile metni al, sonra mcp__notebooklm-mcp__source_add(notebook_id="{nb_id}", source_type="text", text="{fulltext}", title="{makale_başlığı}")

  1. mcp__zotero-mcp__zotero_get_annotations ile anotasyonları kontrol et. Varsa:
  • Anotasyonları derle ve ayrı bir metin kaynağı olarak ekle:

mcp__notebooklm-mcp__source_add(notebook_id="{nb_id}", source_type="text", text="{derlenmiş_anotasyonlar}", title="Araştırmacı Notları: {makale_adı}")

İlerleme: Her yükleme sonrası "{loaded}/{total} kaynak yüklendi..." yaz.

Hata yönetimi:

  • Yüklenemeyen makaleleri atla, raporda not et.
  • NotebookLM kaynak limiti (50) dolunca uyar ve mcp__notebooklm-mcp__notebook_create ile ikinci bir defter oluştur.

Adım 4 - Readwise Entegrasyonu (opsiyonel)

Yalnızca kullanıcı açıkça istediğinde tetiklenir ("Readwise highlight'larımı da ekle" veya readwise komutu).

  1. ToolSearch ile readwise araçlarını kontrol et. Yoksa "Readwise MCP mevcut değil, bu adım atlanıyor." de ve geç.
  2. Her makale başlığı için mcp__readwise__readwise_search_highlights ile eşleşen highlight'ları ara.
  3. Eşleşen highlight'ları makale bazında grupla, tek bir metin kaynağı olarak deftere ekle:

mcp__notebooklm-mcp__source_add(notebook_id="{nb_id}", source_type="text", text="{derlenmiş_highlights}", title="Readwise Highlight'ları")

  1. Eşleşme yoksa: "Readwise'da eşleşen highlight bulunamadı."

Adım 5 - Çıktı Seçimi (interaktif modda)

Hızlı modda bu adımı atla.

Kullanıcıya seçenekleri sun (birden fazla seçilebilir):

| Komut / Command | Çıktı | MCP Aracı | |-----------------|-------|-----------| | podcast | Audio Overview | mcp__notebooklm-mcp__studio_create(notebook_id, artifact_type="audio") | | slayt / slides | Slayt sunumu | mcp__notebooklm-mcp__studio_create(notebook_id, artifact_type="slides") | | video | Video | mcp__notebooklm-mcp__studio_create(notebook_id, artifact_type="video") | | infografik / infographic | İnfografik | mcp__notebooklm-mcp__studio_create(notebook_id, artifact_type="infographic") | | harita / map | Literatür haritası | mcp__notebooklm-mcp__notebook_query ile metin sorgusu | | özet / summary | Karşılaştırmalı özet | mcp__notebooklm-mcp__notebook_query ile metin sorgusu | | sorgu / query | Serbest soru | mcp__notebooklm-mcp__notebook_query | | yok / none | Çıktı yok, defter hazır | - |

podcast / slayt / video / infografik

  • Önce onay al. Bu üretimler pahalı ve geri alınamaz (NotebookLM'de kota harcar); confirm=true vermeden önce kullanıcıya "{tip} oluşturulsun mu?" diye sor. Kullanıcı zaten açıkça istediyse (ör. baştan "podcast üret" dediyse) tekrar sorma.
  • Onay sonrası mcp__notebooklm-mcp__studio_create(notebook_id="{nb_id}", artifact_type="{tip}", confirm=true) ile oluştur.
  • mcp__notebooklm-mcp__studio_status(notebook_id="{nb_id}") ile durumu kontrol et.
  • Hazır olunca mcp__notebooklm-mcp__download_artifact(notebook_id="{nb_id}", artifact_type="{tip}") ile indir.
  • Uzun sürerse: "Oluşturuluyor, 3-5 dk sürebilir. Kontrol edeyim mi?"

harita

mcp__notebooklm-mcp__notebook_query(notebook_id="{nb_id}", question="Bu defterdeki tüm kaynaklar arasındaki tematik bağlantıları, metodolojik yaklaşımları ve temel argümanları haritalandır. Hangi makale hangi makaleyle ne konuda örtüşüyor, nerede ayrışıyor?") ile sor.

özet

mcp__notebooklm-mcp__notebook_query(notebook_id="{nb_id}", question="Bu defterdeki her kaynağın temel argümanını, metodolojisini ve bulgularını 2-3 cümleyle özetle. Sonra kaynaklar arasındaki ortak temalar ve çelişkileri belirt.") ile sor.

sorgu

Kullanıcının sorusunu doğrudan mcp__notebooklm-mcp__notebook_query(notebook_id="{nb_id}", question="{kullanıcı_sorusu}") ile gönder. Conversation ID döndüyse takip sorularında kullan.


Adım 6 - Deep Research ile Genişletme (opsiyonel)

Tetikleyici: Kullanıcı "genişlet" / "expand" veya "ilgili kaynak bul" / "find related sources" dediğinde.

  1. Boşluk analizi:

mcp__notebooklm-mcp__notebook_query(notebook_id="{nb_id}", question="Bu defterdeki kaynaklarda ele alınmayan ama konuyla doğrudan ilişkili hangi perspektifler, metodolojiler veya alt konular eksik?")

  1. Deep research başlat:

mcp__notebooklm-mcp__research_start(notebook_id="{nb_id}", query="{boşluk_analizinden_türetilen_sorgu}", mode="fast")

  • Deep mod gerekiyorsa: mode="deep" (~5 dk, web araması)
  1. Durumu kontrol et:

mcp__notebooklm-mcp__research_status(notebook_id="{nb_id}")

  1. Bulunan kaynakları sun: Numaralı liste halinde göster. Kullanıcı seçtikten sonra:

mcp__notebooklm-mcp__research_import(notebook_id="{nb_id}", task_id="{task_id}", indices="{seçilen}")

  1. Zotero'ya da ekle (iki yönlü senkronizasyon):
  • Her kaynak için mcp__zotero-mcp__zotero_search_items ile Zotero'da var mı kontrol et.
  • Yoksa:
  • DOI varsa: mcp__zotero-mcp__zotero_add_by_doi(doi="{doi}")
  • URL varsa: mcp__zotero-mcp__zotero_add_by_url(url="{url}")
  • Koleksiyona ata: mcp__zotero-mcp__zotero_manage_collections(item_id="{id}", collection_id="{col_id}", action="add")
  1. Zaman aşımı: 5 dakikayı geçerse sor: "Deep research devam ediyor. 3 dk sonra tekrar kontrol edeyim mi?"

Adım 7 - Rapor

Pipeline tamamlandığında aşağıdaki formatı göster:

Zotero  NotebookLM Raporu
Koleksiyon: {koleksiyon_adı}
Defter: {defter_adı} (ID: {nb_id})
Yüklenen kaynaklar: {N}/{total}
  - PDF (dosya) olarak: {n_pdf}
  - Metin olarak (fallback): {n_text}
  - Anotasyon kaynağı: {n_annot}
  - Zaten yüklüydü, atlandı: {n_skip}
Readwise: {eklendi / kullanılmadı}
Oluşturulan çıktılar: {liste}
Deep Research - yeni kaynaklar: {N} {liste}
Atlanan/hata: {liste veya "Yok"}

İnteraktif Komutlar

Pipeline sırasında veya sonrasında kullanıcı bu komutları verebilir:

| Komut / Command | İşlev | |-----------------|-------| | listele / list | Zotero koleksiyonlarını göster | | seç N / select N | N numaralı koleksiyonu seç | | hepsini yükle / upload all | Tüm makaleleri onay sormadan yükle | | podcast | Audio Overview oluştur | | slayt / slides | Slayt sunumu oluştur | | video | Video oluştur | | infografik / infographic | İnfografik oluştur | | harita / map | Literatür haritası | | özet / summary | Karşılaştırmalı özet | | sorgu "..." / query "..." | Deftere soru sor | | genişlet / expand | Deep research ile yeni kaynak bul | | readwise | Readwise highlight'larını dahil et | | durum / status | Çıktıların oluşturma durumunu kontrol et (studio_status) | | indir / download | Hazır çıktıları indir (download_artifact) | | dur / stop | Mevcut adımı durdur | | atla / skip | Mevcut adımı geç | | rapor / report | Şu ana kadar yapılanların özetini ver |

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.