Claude Code + NotebookLM + Obsidian Research Workflow
Claude Code + NotebookLM + Obsidian: How to Build a Self-Improving Research Workflow
Combining Claude Code with NotebookLM and Obsidian creates a research workflow that actually gets smarter the more you use it. I've been running this setup for my own content research, and the compounding effect is real — after a few weeks of use, Claude Code starts anticipating how I want my analysis structured, what deliverables I need, and how I think about data. Here's exactly how to set it up in under 30 minutes.
Before I walk through the setup, here's what matters: my specific use case (YouTube research for content creation) is irrelevant to you. What you should be paying attention to is the template — the pattern of combining data sources, analysis tools, and a persistent knowledge base that improves over time. Swap YouTube for PDFs, academic papers, market research, client reports, whatever. The architecture stays the same.
What Does This Workflow Actually Do?
This workflow turns Claude Code into a research machine that searches for information, sends it to NotebookLM for analysis, generates deliverables, and stores everything in an Obsidian vault that makes Claude Code smarter over time.
Here's the flow in plain terms:
- Claude Code searches for data — in my case, YouTube videos via a custom skill using yt-dlp (an open-source command-line tool for searching and downloading video data)
- That data gets sent to NotebookLM — Google's AI notebook tool handles the heavy analysis, and here's the kicker: those are tokens you're not paying for. All that processing is offloaded to Google.
- NotebookLM generates deliverables — podcasts, infographics, slide decks, mind maps, flashcards, whatever you need
- Everything comes back to Claude Code — which stores results as markdown files in your Obsidian vault
- Obsidian becomes Claude Code's long-term memory — the more you run the workflow, the more Claude Code learns about how you like your analysis done
The whole thing executes through Claude Code skills — reusable instruction sets saved as SKILL.md files that you invoke with slash commands. And you can stack multiple skills into one "super skill" so the entire pipeline runs with a single command.
How Do You Set Up the YouTube Search Skill?
First things first: you need to be working inside your Obsidian vault folder. This is critical because Obsidian needs to see the files Claude Code creates, and Claude Code needs access to the markdown files Obsidian manages.
To create the YouTube search skill, you'll use the Skill Creator — a plugin for Claude Code that generates skills from natural language descriptions. Install it by running /plugin inside Claude Code, searching for "skill creator," and installing it. Exit Claude Code, spin it back up, and you're ready.
Then it's as simple as:
/skill-creator Create a skill that searches YouTube and returns structured video results. It should use yt-dlp to search for videos by query and return structured results.
The Skill Creator builds the SKILL.md file automatically and drops it in your .claude/skills/ folder. Each skill gets its own slash command — so the name field in the skill's YAML frontmatter becomes the command you type to invoke it.
Adjust this for your own data source. If you're working with PDFs, describe a skill that ingests PDF files. If it's web articles, describe a scraping skill. The Skill Creator handles the implementation details.
How Do You Connect Claude Code to NotebookLM?
Here's the thing — NotebookLM doesn't have a public API. So we use an unofficial Python library called notebooklm-py that reverse-engineers NotebookLM's internal RPC protocol.
Installation takes about 60 seconds:
- Open a regular terminal (not inside Claude Code)
- Run the install commands from the GitHub repo
- Run
notebooklm loginto authenticate — a browser window pops up, you log into your Google account, and you're done
Now you need to teach Claude Code how to use it. You have two options:
- Run the built-in
notebooklm skill installcommand that comes with the repo - Better option: Feed the repo documentation to Claude Code via the Skill Creator and let it build a more comprehensive skill
The prompt looks something like:
/skill-creator Create a skill so we can best use the notebooklm-py CLI tool. Reference the documentation at [repo link].
One of the best things about Claude Code is that it can modify its own operational capabilities. It understands how skills work within its own ecosystem, so when you ask it to create a skill for a tool, it's essentially self-improving.
Once the NotebookLM skill is set up, you can do everything from the Claude Code terminal that you'd normally do in the NotebookLM web interface: create notebooks, add up to 50 sources (from Google Drive, YouTube, files, copy-pasted text), and generate any deliverable — audio overviews, mind maps, flashcards, infographics, slide decks, and more.
How Do You Combine Multiple Skills Into One Pipeline?
This is where it gets interesting. Running skills one by one — "do the YouTube search, okay thumbs up, now do the NotebookLM analysis, okay thumbs up" — is tedious. You want one command that runs the entire workflow.
The Skill Creator handles this too. You describe the full pipeline in natural language:
/skill-creator Create a YouTube pipeline skill. It should use the YouTube search skill to find videos, send results to NotebookLM for analysis, and if I request a deliverable (infographic, podcast, slide deck, etc.), generate that and bring everything back.
The Skill Creator builds a super skill that orchestrates your sub-skills. One slash command now triggers your entire research pipeline — search, analyze, generate deliverables, save results.
In my case, I tested this by asking Claude Code to search for videos about Claude Code and MCP servers, find the top five, analyze what's driving views, identify content gaps, and create an infographic. The whole pipeline completed in about 6 minutes. Text analysis comes back fast. Deliverables like infographics take a few minutes. Full slide decks can take up to 15 minutes since they involve multiple image generations.
Why Does Obsidian Make This Workflow So Much Better?
The workflow above is solid on its own. But without Obsidian, it's a one-shot deal — you run the research, get results, and that's it. Obsidian is what turns this from a tool into a system that compounds.
Here's why:
For you as the human, Obsidian gives you visual insight into your research. You can click through markdown files, see how documents link together via backlinks, and get those graph views that show relationships between ideas. When Claude Code creates a research document with [[double bracket]] references, Obsidian turns those into navigable links.
For Claude Code, all those markdown files are transparent and searchable. The Obsidian vault structure — with its flat files and clear naming conventions — makes it easier for Claude Code to find relevant context from previous research runs.
But the real power is the CLAUDE.md file.
What Is the CLAUDE.md File and Why Does It Matter?
The CLAUDE.md file is a persistent configuration file that Claude Code reads at the start of every session. It's where you (and Claude Code itself) document conventions, preferences, work style, and instructions that should carry across conversations.
Think of it this way: if your Obsidian vault is your second brain, the CLAUDE.md file is the brain within the brain. It tells Claude Code what all those files mean and how to use them — your conventions for deliverables, how you want analysis structured, how you like to be communicated with.
The CLAUDE.md file lives in your project root and gets loaded into Claude's context automatically. You can also organize instructions across multiple files in a .claude/rules/ directory for larger projects.
Here's where the self-improving loop kicks in. After running your research workflow a few times, you tell Claude Code:
Can we update CLAUDE.md so it better reflects my work style, analysis preferences, and output conventions based on our latest conversations?
That's it. Claude Code reviews your recent interactions, identifies patterns in how you work, and updates its own instruction file. The more you use the workflow, the better Claude Code gets at executing it the way you want.
Doing this over a week? Marginal improvement. Over a month? Noticeable. Over a year with hundreds of documents and conversations? That's when you have something genuinely powerful — a research assistant that knows your thinking style cold.
What Does the Output Actually Look Like?
When I ran the MCP servers analysis, Claude Code produced a full markdown research document inside my Obsidian vault. It included:
- Key takeaways from the top-performing videos
- Analysis of what's driving views — content patterns, title structures, outlier videos
- Content gap identification — topics the existing videos weren't covering
- Backlinks to related documents in the vault using Obsidian's
[[wiki-link]]syntax - An infographic breaking down the top MCP servers (Supabase, Figma, Sentry, PostHog, Context7, Playwright) with a framework for categorizing them
All of this is visible in Obsidian's graph view, linked to previous research, and available to Claude Code for future sessions. It's not just output — it's accumulated context.
Can You Customize This for Non-YouTube Use Cases?
Absolutely. That's the whole point. The template is:
- Data source skill → whatever you need (PDFs, web scraping, database queries, API calls)
- Analysis tool → NotebookLM, or you could skip it entirely and have Claude Code do the analysis directly
- Deliverable generation → whatever format you need
- Persistent storage → Obsidian vault with CLAUDE.md for long-term memory
- Skill improvement → Skill Creator to refine and combine skills over time
You could build a competitive intelligence pipeline that scrapes competitor websites. A legal research workflow that ingests case PDFs. A market analysis system that pulls financial data. Keep the template of workflow + Obsidian + skill improvement via the Skill Creator, and you have something most people aren't building yet.
Frequently Asked Questions
Do I need coding experience to set this up?
No. The Skill Creator generates skills from plain English descriptions, and the notebooklm-py installation is just copying and pasting terminal commands. If you can follow step-by-step instructions, you can do this. I cover the full technical setup in the Claude Code master class inside Chase AI Plus.
How much does this cost to run?
Claude Code requires a Claude API subscription. The NotebookLM processing is free — Google handles those tokens. Obsidian is free for personal use. So your main cost is your Claude API usage, and since heavy analysis is offloaded to NotebookLM, you're saving significant tokens compared to doing everything inside Claude Code.
Can I use a different note-taking app instead of Obsidian?
Technically yes — any folder of markdown files will work with Claude Code. But Obsidian adds the visual layer (graphs, backlinks, search) that makes the vault useful for you as a human, not just for Claude Code. It's free and takes 2 minutes to set up, so there's no real reason to skip it.
How long before the CLAUDE.md improvements become noticeable?
I've found that after about 3-4 weeks of consistent use and periodic CLAUDE.md updates, the difference is clear. Claude Code starts structuring analysis the way you prefer without being told, uses your terminology, and anticipates the deliverables you typically want. It's not magic — it's just good configuration accumulating over time.
What if NotebookLM changes its internal API and breaks notebooklm-py?
This is a real risk since notebooklm-py is an unofficial library that reverse-engineers NotebookLM's RPC protocol. The maintainers have built a test suite that catches breakage early, but if Google makes major changes, there could be downtime. The workflow still works without NotebookLM — you'd just have Claude Code handle the analysis directly, which uses more of your API tokens.
If you want to go deeper into Claude Code workflows and AI automation, join the free Chase AI community for templates, prompts, and live breakdowns. And if you're serious about building with AI, check out the paid community, Chase AI+, for hands-on guidance on how to make money with AI.


