WeChat article to NotebookLM sync tool. Use when user provides a WeChat Official Account article URL (mp.weixin.qq.com) and wants to add it to their NotebookLM. Automatically fetches article content, converts to Markdown, creates notebook, and uploads to NotebookLM.
Resources
3Install
npx skillscat add singajogijaswanth/wechat-to-notebooklm Install via the SkillsCat registry.
WeChat to NotebookLM
Automatically sync WeChat Official Account articles to Google NotebookLM for AI-powered analysis, summarization, and content generation.
What This Does
This skill automates the entire workflow of getting a WeChat article into NotebookLM:
- Fetches the article content from the URL
- Converts to clean Markdown format
- Creates a NotebookLM notebook (optionally with custom title)
- Uploads the article as a source
- Returns the notebook ID for further interaction
When to Use
Use this skill when you:
- Have a WeChat Official Account article URL (mp.weixin.qq.com)
- Want to save the article to NotebookLM for analysis
- Want to create a podcast/video from the article
- Want to chat with the article content using AI
- Want to summarize or extract insights from the article
Example triggers:
- "Sync this WeChat article to NotebookLM"
- "Add this mp.weixin.qq.com link to my notebook"
- "Create a notebook from this WeChat article"
- "Save this article to NotebookLM"
Prerequisites
Before using this skill, ensure NotebookLM CLI is authenticated:
notebooklm login # Opens browser for Google OAuth
notebooklm status # Verify authenticationWorkflow
Complete Sync Process
Step 1: Fetch Article Content
Use the web reader MCP tool to fetch the WeChat article:
mcp__web_reader__webReader
URL: <WeChat article URL>
return_format: markdown
retain_images: false (optional, saves bandwidth)This returns the article content in Markdown format.
Step 2: Save Content to File
Save the fetched content to a temporary Markdown file:
# Extract title from content or use default
# Save to /tmp/<sanitized_title>.mdThe file should be saved with a descriptive name based on the article title.
Step 3: Create NotebookLM Notebook
Create a new notebook with the article title:
notebooklm create "<article_title>" --jsonParse the JSON response to get the notebook ID:
{"notebook": {"id": "abc-123-def", "title": "..."}}Step 4: Upload Article to Notebook
Add the Markdown file as a source to the notebook:
notebooklm source add /tmp/<article_title>.md --notebook <notebook_id> --jsonParse the response to get the source ID:
{"source": {"id": "source-xyz-789", "title": "...", "type": "text"}}Step 5: Confirm Success
Report to the user:
- Notebook title and ID
- Source file name
- Notebook ID for further use
- Suggested next steps (ask questions, generate podcast, etc.)
Progress Updates
Provide brief, clear status updates:
✅ Fetching article from WeChat...
✅ Converting to Markdown...
✅ Creating notebook "Article Title"...
✅ Uploading to NotebookLM...
✅ Done! Notebook ID: abc-123-defOutput Summary
When complete, provide:
Successfully synced WeChat article to NotebookLM!
📓 Notebook: [Article Title]
ID: abc-123-def
📄 Source: article_title.md
ID: source-xyz-789
💡 Next steps:
- Use: notebooklm use abc-123-def
- Ask: notebooklm ask "Summarize this article"
- Generate: notebooklm generate audio "Create a podcast"Error Handling
Common Issues
1. Article URL is invalid or inaccessible
- Error: Failed to fetch content
- Solution: Verify the URL is correct and accessible
- Alternative: Try copying the article content manually
2. NotebookLM authentication failed
- Error: Auth/cookie error
- Solution: Run
notebooklm loginagain - Check:
notebooklm statusto verify
3. File upload failed
- Error: Invalid file or upload error
- Solution: Check if Markdown file was created correctly
- Verify: File path and permissions
4. Notebook creation failed
- Error: Rate limiting or API error
- Solution: Wait a few minutes and retry
- Alternative: Add to existing notebook with
--notebookflag
Advanced Features
Add to Existing Notebook
If user wants to add to an existing notebook:
# Get list of notebooks
notebooklm list --json
# Use existing notebook ID
notebooklm source add /tmp/article.md --notebook <existing_notebook_id> --jsonBatch Processing
For multiple WeChat articles:
# Create notebook once
notebooklm create "WeChat Articles Collection" --json
# Add multiple articles
for url in "${urls[@]}"; do
# Fetch, save, upload to same notebook
doneFollow-up Actions
After successful upload, suggest:
For analysis:
notebooklm use <notebook_id>
notebooklm ask "What are the key insights?"
notebooklm ask "Summarize in 3 bullet points"For content generation:
notebooklm generate audio "Create an engaging podcast"
notebooklm generate video "Make an explanatory video"
notebooklm generate quiz "Test understanding"For research:
notebooklm source add-research "related topics" --mode deep
notebooklm ask "Compare with other sources"Limitations
- WeChat articles only: Optimized for mp.weixin.qq.com URLs
- Text content: Focuses on text, images are preserved as links
- Public articles: Requires publicly accessible articles
- Rate limits: NotebookLM has rate limits on uploads
Troubleshooting
Problem: Article content is incomplete
- Cause: WeChat page uses JavaScript rendering
- Solution: web reader tool handles most cases, but some dynamic content may be missed
Problem: Chinese characters display incorrectly
- Cause: File encoding issues
- Solution: Ensure UTF-8 encoding when saving files
Problem: NotebookLM says "Processing" for too long
- Cause: Large articles take time to index
- Solution: Wait 1-2 minutes, then check status with
notebooklm source list
Best Practices
- Use descriptive notebook titles: Extract from article title or topic
- Keep articles organized: Use separate notebooks for different topics
- Verify uploads: Check
notebooklm source listafter upload - Clean up temp files: Remove /tmp files after successful upload
- Handle rate limits: If uploads fail, wait 5-10 minutes before retry
Quick Reference
| Task | Command/Tool |
|---|---|
| Fetch article | mcp__web_reader__webReader |
| Create notebook | notebooklm create "Title" --json |
| Upload file | notebooklm source add file.md --notebook <id> --json |
| Check sources | notebooklm source list --notebook <id> --json |
| Chat with article | notebooklm use <id>; notebooklm ask "question" |
| Generate podcast | notebooklm generate audio "instructions" --notebook <id> |
Example Usage
User: "Sync this WeChat article to NotebookLM: https://mp.weixin.qq.com/s/xxxxx"
Agent workflow:
- Fetch article using web reader
- Save to
/tmp/article_title.md - Create notebook "Article Title"
- Upload markdown file
- Report success with IDs and next steps
Time estimate: 30-60 seconds total