mcp-research-pipeline
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TRANSCRIPT_API_KEY | No | TranscriptAPI.com API key (enables YouTube search tools) | |
| NOTEBOOKLM_STORAGE_PATH | No | Custom path to NotebookLM auth (default: ~/.notebooklm/storage_state.json) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_transcriptB | Fetch the transcript of a YouTube video. |
| search_youtubeA | Search YouTube for videos or channels. Costs 1 TranscriptAPI credit. |
| get_channel_latestB | Get the 15 most recent videos from a YouTube channel. FREE — no credits. |
| get_channel_videosA | Paginated list of all videos from a YouTube channel. Costs 1 credit/page. |
| get_playlist_videosB | Paginated list of videos in a YouTube playlist. Costs 1 credit/page. |
| create_notebookB | Create a new NotebookLM notebook. |
| list_notebooksA | List all NotebookLM notebooks. Returns: JSON array of notebooks with notebook_id, name, created_at, source_count. |
| add_sourceB | Add a source to a NotebookLM notebook. |
| list_sourcesA | List all sources in a NotebookLM notebook. |
| ask_notebookA | Ask a question against the sources in a NotebookLM notebook. NotebookLM uses your sources as context (RAG) and provides referenced answers. This is powered by Google's infrastructure. |
| generate_artifactA | Generate a NotebookLM artifact from notebook sources. Supported artifact types: audio, video, quiz, flashcards, report, mind_map, infographic, slide_deck, data_table. |
| list_artifactsA | List all artifacts in a NotebookLM notebook. |
| check_artifact_statusB | Check the generation status of a NotebookLM artifact. |
| download_artifactA | Download a completed NotebookLM artifact to a local file. |
| research_topicA | End-to-end research pipeline: search YouTube, create a NotebookLM notebook, add video sources, and optionally ask a question. This tool orchestrates the full workflow:
Requires both TRANSCRIPT_API_KEY (for search) and NotebookLM login. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Tools are mostly distinct by resource and action, with clear separation between YouTube retrieval and NotebookLM management. The main ambiguity is between get_channel_latest and get_channel_videos, though descriptions clarify the convenience vs. paginated distinction. research_topic overlaps with the individual steps but is clearly positioned as an orchestrator.
All tool names use snake_case and generally follow a verb_noun pattern, which keeps the set predictable. Minor inconsistencies like get_channel_latest omitting a noun and mixing list_/get_ for similar operations prevent a perfect score.
At 15 tools, the server sits at the upper bound of a well-scoped set, but the count is justified by covering two integrated domains: YouTube retrieval and NotebookLM management. research_topic and get_channel_latest add some redundancy but still serve useful convenience purposes.
The core research workflow is covered end-to-end: search YouTube, create a notebook, add sources, ask questions, and generate/download artifacts. Missing delete/update operations for notebooks, sources, and artifacts are notable gaps but not critical for the stated pipeline purpose.