infranodus-mcp-server-infranodus
UnexploredMap text into knowledge graphs to create a structured representation of conceptual relations and t…
Install
mcp_config.json
{
"mcpServers": {
"ai-smithery-infranodus-mcp-server-infranodus": {
"url": "https://server.smithery.ai/@infranodus/mcp-server-infranodus/mcp",
"type": "streamable-http"
}
}
}Documentation
InfraNodus MCP Server
A Model Context Protocol (MCP) server that integrates InfraNodus knowledge graph and text network analysis capabilities into LLM workflows and AI assistants like Claude Desktop.
Available on npm: https://www.npmjs.com/package/infranodus-mcp-server
Overview
InfraNodus MCP Server enables LLM workflows and AI assistants to analyze text using advanced network science algorithms, generate knowledge graphs, detect content gaps, and identify key topics and concepts. It transforms unstructured text into structured insights using graph theory and network analysis.
Features
You Can Use It To
- Connect your existing InfraNodus knowledge graphs to your LLM workflows and AI chats
- Identify the main topical clusters in discourse without missing the important nuances (works better than standard LLM workflows)
- Identify the content gaps in any discourse (helpful for content creation and research)
- Generate new knowledge graphs from any text and use them to augment your LLM responses
- Save and retrieve entities and relations from memory using the knowledge graphs
Available Tools
-
generate_knowledge_graph
- Convert any text into a visual knowledge graph
- Extract topics, concepts, and their relationships
- Identify structural patterns and clusters
- Apply AI-powered topic naming
- Perform entity detection for cleaner graphs
-
analyze_existing_graph_by_name
- Retrieve and analyze existing graphs from your InfraNodus account
- Access previously saved analyses
- Export graph data with full statistics
-
analyze_text
- Analyze a text, URL, or YouTube transcript
- Extract and analyze a graph from text or URL; provide either text or url
- Get topics, clusters, statements, graph structure, and AI summary as requested
-
generate_content_gaps
- Detect missing connections in discourse
- Identify underexplored topics
- Generate research questions
- Suggest content development opportunities
-
generate_topical_clusters
- Generate topics and clusters of keywords from text using knowledge graph analysis
- Make sure to beyond genetic insights and detect smaller topics
- Use the topical clusters to establish topical authority for SEO
- Returns AI-generated overviews of the topical clusters (
topicalClusterSummaries), summarizing the discourse each cluster represents — useful for SEO-optimized content creation. Enabled by default; setgenerateTopicalSummaries: falseto increase processing speed or if the summary request fails
-
generate_contextual_hint
- Generate a topical overview of a text and provide insights for LLMs to generate better responses
- Use it to get a high-level understanding of a text
- Use it to augment prompts in your LLM workflows and AI assistants
-
generate_research_questions
- Generate research questions that bridge content gaps from text, URL, or an existing InfraNodus graph
- Use them as prompts in your LLM models and AI workflows
- Use any AI model (included in InfraNodus API)
- Content gaps are identified based on topical clustering
-
generate_research_ideas
- Generate innovative research ideas based on content gaps identified in the text
- Get actionable ideas to improve the text and develop the discourse
- Use any AI model (included in InfraNodus API)
- Ideas are generated from gaps between topical clusters
-
optimize_text_structure
- Analyze the level of bias and coherence in text using knowledge graph analysis
- If the text is too biased, develop the represented topics to balance the discourse
- If the text is focused or diversified, develop the content gaps to deepen the analysis
- If the text is dispersed, focus the most common gap topics to improve coherence
- Choose response type: response, idea, question, or transcend
-
optimize_reasoning
- Applies the same bias/coherence analysis to the model's own reasoning trace or chat with the user (pass it as
text) - Detects whether the reasoning is biased, focused, diversified, or dispersed
- Steers the reasoning toward optimal diversity and coherence at the same time
- If too biased, develop the under-represented topics; if focused or diversified, bridge the content gaps; if dispersed, focus the most common gap topics
- Returns a structural diagnosis (diversity stats, topical clusters, gaps) plus suggestions for how to continue thinking
- Applies the same bias/coherence analysis to the model's own reasoning trace or chat with the user (pass it as
-
generate_responses_from_graph
- Generate responses based on an existing InfraNodus graph
- Integrate them into your LLM workflows and AI assistants
- Use any AI model (included in InfraNodus API)
- Use any prompt
-
develop_conceptual_bridges
- Analyze text and develop latent ideas based on concepts that connect this text to a broader discourse
- Discover hidden themes and patterns that link your text to wider contexts
- Use any AI model (included in InfraNodus API)
- Generate insights that help develop the discourse
-
develop_latent_topics
- Analyze text and extract underdeveloped topics with ideas on how to develop them
- Identify topics that need more attention and elaboration
- Use any AI model (included in InfraNodus API)
- Get actionable suggestions for content expansion
-
develop_text_tool
- Comprehensive text analysis combining content gap ideas, latent topics, and conceptual bridges
- Executes multiple analyses in sequence with progress tracking
- Generates research ideas based on content gaps
- Identifies latent topics and conceptual bridges to develop
- Finds content gaps for deeper exploration
-
create_knowledge_graph
- Create a knowledge graph in InfraNodus from text and provide a link to it
- Use it to create a knowledge graph in InfraNodus from text
-
generate_ontology_graph
- Use AI to generate a reasoning ontology graph (entities and the relations between them) from one of three sources: a
prompt(a topic — e.g. "build an ontology on AI attention mechanisms"), atext(a long document or a structural digest of a project, chunked server-side), or asourceGraphName(an existing graph — e.g. a fully ingested repo or corpus — whose statements are read back, chunked, and condensed into an ontology) ontologyMode: 'codebase'frames the extraction around modules, functions, data stores, services, and the concepts they implement;ontologyMode: 'procedural'writes a digest instead — prose statements on how the project works with[[wikilinks]], each typed as[principles],[rules],[procedures],[handoffs],[main_ideas]or[gaps](saved as the statement's category), from an already-uploaded docs/structure graph; save it asrepo-<project>-digestforoptimize_knowledge_base;chunkSize(default 12000 chars) controls granularity; every chunk appends to the same graph and the response reportschunksProcessed/chunksTotal- Saved as a persistent InfraNodus graph by default and a link is returned; set
saveGraph: falseif the user asks not to save, or when you only need a one-off AI ontology overview of a topic for the current context that won't be reused later (the generated statements are returned directly without persisting) modelToUsedefaults toclaude-opus-5for richer ontologies (alsoclaude-fable-5,gpt-5.6-terra); pick-mini/-litevariants (orgpt-4o-mini) for faster, cheaper generation- Returns the compact graph structure (
knowledgeGraph) and analytics (main topical clusters, content gaps, top influential nodes, top relations, statistics) by default. SetincludeGraph: falseto save context space when only the ontology statements or insights are needed. SetincludeAnalytics: falseif you just need the raw ontology without graph-derived insights — keep it on whenever you want to understand the structure, gaps, or key concepts
- Use AI to generate a reasoning ontology graph (entities and the relations between them) from one of three sources: a
-
analyze_llm_results
- Ask an LLM to describe a topic and turn its response into a knowledge graph that reveals how the model frames it — main concepts, clusters, content gaps, and the relations between them
- Use it to probe model bias, surface the implicit structure of an LLM's view on a subject, or compare how different models describe the same topic
modelToUsedefaults toclaude-opus-5; pick the model you actually want to studymodifyAnalyzedTextcontrols how the LLM output is parsed:'detectEntities'(default — mixed entities + words),'extractEntitiesOnly'(entity-only graph), or'none'(plain co-occurrence)- Saves the graph by default; set
saveGraph: falsefor a one-off probe. Returns analytics by default and omits the raw graph (includeGraph: false) to keep responses compact — enableincludeGraphwhen you also need nodes/edges
-
overlap_between_texts
- Create knowledge graphs from two or more texts and find the overlap (similarities) between them
- Use it to find similar topics and keywords across different texts
-
merged_graph_from_texts
- Build a graph of all the texts and URLs provided, providing topical clusters and gaps present in the merged graph generated from all the texts
- Use it to combine multiple sources into one graph and see clusters and content gaps across the merged content
-
difference_between_texts
- Compare knowledge graphs from two or more texts and find what's not present in the first graph that's present in the others
- Use it to find how one text can be enriched with the others
-
analyze_google_search_results
- Generate a graph with keywords and topics for Google search results for a certain query
- Use it to understand the current informational supply (what people find)
-
analyze_youtube_results
- Generate a graph with keywords and topics from YouTube results for a query, channel, or playlist
- Choose what to pull via
searchMode:search(video metadata for a search term),comments(comments on a video),channel(a channel's videos — pass a username, URL, or @handle),playlist(a playlist's videos — pass a playlist ID or a URL withlist=),subtitles/subtitlesChannel/subtitlesPlaylist(transcribed subtitles of a video / channel / playlist), orsearchVideos(analyzes the content of the videos found — limit hard-capped to 20) - Control results with
limit(default 100, max 2000),sortBy(Popular/Oldest/Latest),excludeDescriptions,importLanguage, andimportRegion - Use it to understand the topics, clusters, and content gaps in the discourse around a video, channel, playlist, or search term on YouTube
-
analyze_related_search_queries
- Generate a graph from the search queries suggested by Google for a certain query
- Use it to understand the current informational demand (what people are looking for)
-
search_queries_vs_search_results
- Generate a graph of keyword combinations and topics people tend to search for that do not readily appear in the search results for the same queries
- Use it to understand what people search for but don't yet find
-
generate_seo_report
- Analyze content for SEO optimization by comparing it with Google search results and search queries
- Identify content gaps and opportunities for better search visibility
- Get comprehensive analysis of what's in search results but not in your text
- Discover what people search for but don't find in current results
-
memory_add_relations
- Add relations to the InfraNodus memory from text
- Automatically detect entities or use [[wikilinks]] syntax to mark them
- Save memory to a specified graph name for future retrieval
- Support automatic entity extraction or manual entity marking
- Provide links to created memory graphs for easy access
-
memory_get_relations
- Retrieve relations from InfraNodus memory for specific entities
- Search for entity relations using [[wikilinks]] syntax
- Query specific memory contexts or search across all memory graphs
- Extract statements and relationships from stored knowledge graphs
- Support both entity-specific searches and full context retrieval
-
retrieve_from_knowledge_base
- Retrieve context from an existing InfraNodus knowledge graph using GraphRAG
- Query your knowledge base with a natural language prompt to get relevant statements
- Include graph summaries for quick overviews of the knowledge structure
- Optionally retrieve the full graph, statements, or extended analysis
- Ideal for augmenting LLM responses with domain-specific knowledge
-
search
- Search through existing InfraNodus graphs
- Also use it to search through the public graphs of a specific user
- Compatible with ChatGPT Deep Research mode via Developer Mode > Connectors
-
fetch
- Fetch a specific search result for a graph
- Can be used in ChatGPT Deep Research mode via Developer Mode > Connectors
-
enable_project_learnings
- Create the opt-in, per-project, append-only learnings graph (
learn-<project>) in your account — the place where the assistant saves what it learned about operating in a project - Called only when you explicitly ask to start saving learnings for a project; idempotent, so calling it again just returns the existing graph
- The assistant tells you first what will be stored (project knowledge only, never anything about you), where (a private graph you can delete at any time), and that batches are shown before saving
- Create the opt-in, per-project, append-only learnings graph (
-
add_project_learnings
- Save learnings about a project — where things live, traps, conventions, decisions, workflows, and a self-assessment of what worked well and what should be done differently next time — as statements with a
typecategory each, for later sessions on any client - Refuses (without error) when the project has not been enabled and never creates the graph itself
- Dry run by default: returns what would be written, marking near-duplicates as
reinforced; writes only withconfirm: true— or in the same call when your client supports MCP elicitation and you approve the form - Rejects statements with secret-like content server-side (indices only, never the content)
- Save learnings about a project — where things live, traps, conventions, decisions, workflows, and a self-assessment of what worked well and what should be done differently next time — as statements with a
-
get_project_learnings
- Retrieve learnings for a project: by
prompt(GraphRAG — most relevant statements plus an overview of what is known), byentity(a file path, module, or concept), or a structural overview with neither - Call with no
projectto list the projects that have learnings in your account - Returns
enabled: falsewith an empty list when a project has no learnings graph — not an error
Also available as the
save-learningsprompt in clients that expose MCP prompts. SetINFRANODUS_LEARNINGS=0to remove these three tools from the server entirely (see Project learnings). - Retrieve learnings for a project: by
-
optimize_knowledge_base
- Structural feedback on a whole code base, document vault, or body of procedural knowledge (rules, frameworks, principles) from its digest graph (
repo-<project>-digest/vault-<project>-digest) — or from a digest you write and pass as text, saved withsaveAs - Diagnoses the structure (biased / focused / diversified / dispersed) and reads it for the chosen
focus(codebase,vault,procedural,general): what dominates, which areas are under-developed (with latent-topic ideas), which clusters never connect — missing integrations, missing bridge notes, missing hand-offs between frameworks — plus AI suggestions for what to develop next compareWithup to two other layers of the same project (e.g. digest vs structure map, docs vs code) and get what each has that the other lacks: rules without code, code without documentation, features described but not built- Two ways to get the digest: the assistant reads the project and writes it (the infranodus skill's digest build mode, or
text+saveAshere), orgenerate_ontology_graphwithontologyMode: 'procedural'writes it server-side from an uploaded docs/structure graph - Pairs with the infranodus skill's build modes: full ingestion, digest, structure map, ontology
- Structural feedback on a whole code base, document vault, or body of procedural knowledge (rules, frameworks, principles) from its digest graph (
-
submit_workflow_feedback
- Internal telemetry: after a workflow of InfraNodus calls, the assistant reports what it actually did with the output — how much it used, whether it contained anything new, whether it was the right tool, how many calls it took, concrete defects — as observations rather than a score; a rating is derived from them server-side
- Autonomous: it never asks you anything and never surfaces in the conversation
- The report contains short paraphrases of what you were working on (capped at 200 characters), the same policy as the prompts InfraNodus already logs;
MCPCAT_ANONYMOUS=1skips the per-user log entirely - Set
INFRANODUS_FEEDBACK=0to remove the tool (and the one-line nudge appended to workflow-ending results) from the server
-
delete_statements
- Delete statements from a graph in your own account by a filter the server resolves — exactly one of
categories(everything uploaded under a source label: a file path, a page name, a[[label]]parent),statements(exact text),query(substring or/regex/),before/after(ISO 8601 window),deleteAll(empties the graph but keeps its name, URL, and settings), orstatementIds - Dry run by default: returns the matched count, a sample of the statements, and a per-category breakdown; nothing is removed until the same filter is sent again with
confirm: true— or, on clients with MCP elicitation, until you accept the form in the same call. A filter that matches nothing returnsdeleted: 0without asking - The per-source replace path:
delete_statementswith the source's category, thencreate_knowledge_graphto the same graph name.deleteAllthencreate_knowledge_graphrebuilds a graph in place - Irreversible, own-account only (no
userName), never creates a graph, and the assistant is instructed never to call it on its own initiative. SetINFRANODUS_DELETE=0to remove the tool from the server
- Delete statements from a graph in your own account by a filter the server resolves — exactly one of
-
update_statements
- Edit statements of a graph in your own account in place — content, categories, or timestamp — keeping each statement's id, date, and position (unlike deleting and re-creating it)
- Two modes:
editsrewrites specific statements, each named by its exact current text (match, e.g. fromanalyze_existing_graph_by_namewithincludeStatements) orstatementId; or one selector (the same asdelete_statements, withallinstead ofdeleteAll) plusset(addCategories,removeCategories,categories,timestamp) and/orreplace({ pattern, with }, substring or/regex/flags) for bulk relabelling or a find-and-replace across the graph — renaming a[[concept]]or a source path everywhere - Dry run by default: returns the matched count and the before → after of every change; nothing is written until the same arguments are sent again with
confirm: true— or, on clients with MCP elicitation, until you accept the form in the same call. A request that matches nothing returnsupdated: 0without asking - New content is capped at 1000 characters; for longer text use
delete_statementsthencreate_knowledge_graph. Irreversible (the old text survives only in the dry-run output), own-account only, never creates a graph, and the assistant is instructed never to call it on its own initiative.INFRANODUS_DELETE=0removes it together w
Sourced from the repository README.
More in Developer Tools
- N8nFair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.202,280
- Gemini CliAn open-source AI agent that brings the power of Gemini directly into your terminal.106,664
- World MonitorLive global intelligence: real-time markets, conflicts, country risk, chokepoints, energy. 39 tools.84,026
- WorldmonitorReal-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface84,024
- Scrapling🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!76,275
- Ruflo🌊 The original agent meta-harness. Deploy intelligent multi-player swarms, coordinate autonomous workflows, and build conversational AI systems. Features adaptive memory, self-learning intelligence, RAG integration, and native Claude Code / Codex / Hermes and many more Integrated69,270