Infranodus MCP Server… vs Notebooklm MCP Secure | AllMCPs
Side-by-Side Model Context Protocol Comparison
Infranodus MCP Server Infranodus vs Notebooklm MCP Secure
In-depth architectural comparison of the Infranodus MCP Server Infranodus and Notebooklm MCP Secure MCP servers. Compare execution transports, security boundaries, tool capabilities, quality scores, and ready-to-paste client installation snippets for Claude, Cursor, Windsurf, and VS Code.
At a Glance & Executive Verdict
Infranodus MCP Server Infranodus
Research · Local stdio
Quality: 68/100 (Great) | Auth: API Key required
Notebooklm MCP Secure
Research · Local stdio
Quality: 61/100 (Good) | Auth: other
Verdict Summary: Choose Infranodus MCP Server Infranodus if you need specialized Research tools running via a local process. Choose Notebooklm MCP Secure if your workspace requires Research integration with local subprocess execution. Both servers can be configured concurrently in your client's mcpServers manifest.
Which MCP Server Should You Choose?
Choose Infranodus MCP Server Infranodus when:
You need dedicated capabilities in the Research domain.
You prefer local stdio subprocess transport architecture.
Your security boundary fits: API Key required (Free / Open Source).
Map text into knowledge graphs to create a structured representation of conceptual relations and t…
Query Google NotebookLM from Claude/AI agents with 14 security hardening layers. Session-based conversations, notebook library management, and source-grounded research responses.
Generate a knowledge graph with main topics, topical clusters, concepts, concepts (nodes) relations (edges) and structural gaps. Only use when explicitly asked to analyze a text or generate a knowledge graph. Do not use for short clarifying questions that you already have an answer to from the context of the conversation.
create_knowledge_graph
Create a knowledge graph in InfraNodus from text or from a URL, save it, and provide its name and a link to it for future use.
generate_ontology_graph
Use AI to generate a reasoning ontology knowledge graph (entities and the relations between them) and optionally save it as a InfraNodus graph. Three sources, provide exactly one: prompt (a topic — one AI call), text (a long document or a structural digest of a project, chunked server-side), or sourceGraphName (an existing graph — e.g. a fully ingested repo, vault, or corpus — whose statements are read back, chunked, and condensed into an ontology). Set ontologyMode: 'codebase' for software projects, or 'procedural' to write a DIGEST of how the project works (prose statements with [[wikilinks]], not relation triples) from an already-uploaded graph — save it as <repo|vault>-<project>-digest for optimize_knowledge_base. Use to get a rich overview, a reasoning map of a topic, or a condensed 'how it fits together' graph of a large corpus.
memory_add_relations
Add relations to the InfraNodus memory from text, save it, and provide its name and a link to it for future use.
memory_get_relations
Provide a list of relations from the InfraNodus memory for a given concept or entity
analyze_existing_graph_by_name
Extract and analyze the content of an existing InfraNodus graph from your account.
analyze_text
Extract and analyze a graph from text, URL, YouTube video transcript, or an existing InfraNodus graph.
generate_content_gaps
Generate content gaps from text, URL, or an existing graph using knowledge graph analysis.
generate_topical_clusters
Generate topics and clusters of keywords from text, URL, or an existing graph using knowledge graph analysis.
generate_research_questions
Analyze text or an existing graph and generate innovative research questions based on the content gaps identified between the topical clusters. Provide either text, url, or graphName. Can be used to improve the text and the discourse it relates to
generate_research_ideas
Analyze text or an existing graph and generate innovative research ideas based on the content gaps identified between the topical clusters inside the text that can be used to improve the text and the discourse it relates to.
generate_responses_from_graph
Use text, URL, or an existing InfraNodus knowledge graph and generate responses and expert advice based on a prompt provided.
+28 more tools listed on main page
Notebooklm MCP Secure Tools (25)
ask_question
NotebookLM notebook Q&A via browser automation.
No active notebook is selected.
Use list_notebooks and select_notebook to choose one, or pass notebook_url.
No Gemini API key is required, but browser authentication must be valid.
If login is required, use the setup_auth tool and verify with get_health (or ask the user to run the notebooklm.auth-setup prompt for a guided walkthrough).
add_notebook
Add a NotebookLM notebook to the local library after explicit user confirmation. Provide the NotebookLM URL plus concise metadata: name, description, topics, and optional use cases/tags. Do not infer missing metadata; ask the user first.
list_notebooks
List all library notebooks with metadata (name, topics, use cases, URL). Use this to present options, then ask which notebook to use for the task.
get_notebook
Get detailed information about a specific notebook by ID
select_notebook
Set a notebook as the active default (used when ask_question has no notebook_id).
## When To Use
- User switches context: "Let's work on React now"
- User asks explicitly to activate a notebook
- Obvious task change requires another notebook
## Auto-Switching
- Safe to auto-switch if the context is clear and you announce it:
"Switching to React notebook for this task..."
- If ambiguous, ask: "Switch to [notebook] for this task?"
## Example
User: "Now let's build the React frontend"
You: "Switching to React notebook..." (call select_notebook)
Ready-to-Paste Client Configurations
Paste either (or both) of these JSON server blocks into your client config file (e.g. claude_desktop_config.json or ~/.cursor/mcp.json).
Infranodus MCP Server Infranodus is categorized under Research and uses a local stdio subprocess. In contrast, Notebooklm MCP Secure belongs to Research using local stdio subprocess. Select Infranodus MCP Server Infranodus when you need capabilities focused on research and Notebooklm MCP Secure when you require tools for research.
Update notebook metadata based on user intent.
## Pattern
1) Identify target notebook and fields (topics, description, use_cases, tags, url)
2) Propose the exact change back to the user
3) After explicit confirmation, call this tool
## Examples
- User: "React notebook also covers Next.js 14"
You: "Add 'Next.js 14' to topics for React?"
User: "Yes" → call update_notebook
- User: "Include error handling in n8n description"
You: "Update the n8n description to mention error handling?"
User: "Yes" → call update_notebook
Tip: You may update multiple fields at once if requested.
remove_notebook
Dangerous — requires explicit user confirmation.
## Confirmation Workflow
1) User requests removal ("Remove the React notebook")
2) Look up full name to confirm
3) Ask: "Remove '[notebook_name]' from your library? (Does not delete the actual NotebookLM notebook)"
4) Only on explicit "Yes" → call remove_notebook
Never remove without permission or based on assumptions.
Example:
User: "Delete the old React notebook"
You: "Remove 'React Best Practices' from your library?"
User: "Yes" → call remove_notebook
search_notebooks
Search library by query (name, description, topics, tags). Use to propose relevant notebooks for the task and then ask which to use.
create_notebook
Create a new NotebookLM notebook with sources programmatically.
## What This Tool Does
- Creates a NEW notebook in your NotebookLM account
- Uploads sources (URLs, text, files) to the notebook
- Returns the notebook URL for immediate use
- Optionally adds to your local library
## Supported Source Types
- **url**: Web page URL (documentation, articles, etc.)
- **text**: Raw text content (code, notes, etc.)
- **file**: Local file path (PDF, DOCX, TXT)
## Example Usage
Create a notebook from API documentation:
```json
{
"name": "React Docs",
"sources": [
{ "type": "url", "value": "https://react.dev/reference/react" }
]
}
```
Create a notebook with multiple sources:
```json
{
"name": "Security Research",
"sources": [
{ "type": "url", "value": "https://owasp.org/Top10" },
{ "type": "file", "value": "/path/to/security-report.pdf" },
{ "type": "text", "value": "Custom notes...", "title": "My Notes" }
],
"description": "Security best practices and research",
"topics": ["security", "owasp", "best-practices"]
}
```
## NotebookLM Limits (Free Tier)
- 100 notebooks maximum
- 50 sources per notebook
- 500k words per source
- 50 queries per day
## Notes
- Requires authentication (run setup_auth first)
- Creates notebook with sharing set to private by default
- Large files may take longer to process
sync_library
Sync your local library with actual NotebookLM notebooks.
## What This Tool Does
- Navigates to NotebookLM and extracts all your notebooks
- Compares with local library entries
- Detects stale entries (notebooks deleted or URLs changed)
- Identifies notebooks not in your library
- Optionally auto-removes stale entries
## When To Use
- Library seems out of sync with NotebookLM
- After deleting notebooks in NotebookLM
- To discover new notebooks to add
- Before setting up automation workflows
## Output
Returns a sync report with:
- **matched**: Library entries that match actual notebooks
- **staleEntries**: Library entries with no matching notebook (candidates for removal)
- **missingNotebooks**: NotebookLM notebooks not in library (candidates for adding)
- **suggestions**: Recommended actions
## Example Usage
```json
{ "auto_fix": false }
```
With auto-fix to remove stale entries:
```json
{ "auto_fix": true }
```
list_sources
List sources in a notebook. Provide notebook_id or notebook_url; if neither is provided, the active notebook from the local library is used. Returns source id, title, type, and status.
add_source
Add a source to an existing NotebookLM notebook.
If neither `notebook_id` nor `notebook_url` is provided, this tool uses the currently active notebook from the local library.
## Source Types
- **url**: Web page URL
- **text**: Text content (paste)
- **file**: Local file path (PDF, DOCX, TXT)
## Example
```json
{
"notebook_id": "my-notebook",
"source": {
"type": "url",
"value": "https://docs.example.com/api"
}
}
```