🚀 InfraNodus MCP Server
InfraNodus MCP Server integrates the knowledge graph and text network analysis capabilities of InfraNodus into LLM workflows and AI assistants such as Claude Desktop. It enables these systems to analyze text, generate knowledge graphs, detect content gaps, and identify key topics and concepts using advanced network science algorithms.
🚀 Quick Start
InfraNodus MCP Server allows LLM workflows and AI assistants to leverage advanced network science algorithms for text analysis. It transforms unstructured text into structured insights, offering features like knowledge graph generation, content gap detection, and topic identification.

✨ Features
You Can Use It To
- Connect existing InfraNodus knowledge graphs to LLM workflows and AI chats.
- Identify main topical clusters in discourse with better nuance detection than standard LLM workflows.
- Detect content gaps in any discourse, useful for content creation and research.
- Generate new knowledge graphs from text to augment LLM responses.
- Save and retrieve entities and relations from memory using knowledge graphs.
Available Tools
- generate_knowledge_graph
- Convert 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.
- 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.
- Detect smaller topics beyond general insights.
- Use topical clusters to establish topical authority for SEO.
- generate_contextual_hint
- Generate a topical overview of a text for better LLM responses.
- Gain a high - level understanding of a text.
- Augment prompts in LLM workflows and AI assistants.
- generate_research_questions
- Generate research questions to bridge content gaps.
- Use them as prompts in LLM models and AI workflows.
- Utilize 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 in the text.
- Get actionable ideas for text improvement and discourse development.
- Use any AI model (included in InfraNodus API).
- Ideas are generated from gaps between topical clusters.
- research_questions_from_graph
- Generate research questions based on an existing InfraNodus graph.
- Use them as prompts in LLM models.
- Use any AI model (included in InfraNodus API).
- Content gaps are identified based on topical clustering.
- generate_responses_from_graph
- Generate responses based on an existing InfraNodus graph.
- Integrate them into 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 connecting concepts.
- Discover hidden themes and patterns linking text to wider contexts.
- Use any AI model (included in InfraNodus API).
- Generate insights for discourse development.
- develop_latent_topics
- Analyze text and extract underdeveloped topics with development ideas.
- Identify topics needing more attention.
- Use any AI model (included in InfraNodus API).
- Get actionable suggestions for content expansion.
- develop_text_tool
- Conduct comprehensive text analysis combining content gap ideas, latent topics, and conceptual bridges.
- Execute multiple analyses in sequence with progress tracking.
- Generate research ideas based on content gaps.
- Identify latent topics and conceptual bridges for development.
- Find content gaps for deeper exploration.
- create_knowledge_graph
- Create a knowledge graph in InfraNodus from text and get a link to it.
- overlap_between_texts
- Create knowledge graphs from multiple texts and find their overlap.
- Find similar topics and keywords across texts.
- difference_between_texts
- Compare knowledge graphs from multiple texts and find unique elements.
- Discover how one text can be enriched with others.
- analyze_google_search_results
- Generate a graph with keywords and topics for Google search results.
- Understand the current informational supply.
- analyze_related_search_queries
- Generate a graph from Google - suggested search queries.
- Understand the current informational demand.
- search_queries_vs_search_results
- Generate a graph of keyword combinations not readily found in search results.
- Understand what people search for but don't find.
- generate_seo_report
- Analyze content for SEO optimization by comparing with search results and queries.
- Identify content gaps and search visibility opportunities.
- Get a comprehensive analysis of search results vs. text.
- Discover what people search for but don't find.
- memory_add_relations
- Add relations to the InfraNodus memory from text.
- Automatically detect entities or use [[wikilinks]] syntax.
- Save memory to a specified graph name.
- Support automatic entity extraction or manual marking.
- Provide links to created memory graphs.
- memory_get_relations
- Retrieve relations from InfraNodus memory for specific entities.
- Search for entity relations using [[wikilinks]] syntax.
- Query specific memory contexts or search all graphs.
- Extract statements and relationships from stored graphs.
- Support both entity - specific and full - context searches.
- search
- Search through existing InfraNodus graphs.
- 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.
More capabilites coming soon!
Key Capabilities
- Topic Modeling: Automatic clustering and categorization of concepts.
- Content Gap Detection: Find missing links between concept clusters.
- Entity Recognition: Clean extraction of names, places, and organizations.
- AI Enhancement: Optional AI - powered topic naming and analysis.
- Structural Analysis: Identify influential nodes and community structures.
- Network Structure Statistics: Modularity, centrality, betweenness, and other graph metrics.
- Knowledge Graph Memory: Save and retrieve knowledge graph memories and analyze them to retrieve key nodes, clusters, and connectors.
Knowledge Graph Memory Use Advice
InfraNodus represents text as a network graph to identify idea clusters and gaps, enabling advanced insights based on text structure. The network, a knowledge graph, can retrieve complex ontological relations. This process is automated using search and fetch tools and others that analyze the underlying network.
You can also use InfraNodus as a traditional memory server. Use [[wikilinks]] to highlight entities, making content and graphs compatible with markup syntax and PKM tools like Obsidian. By default, InfraNodus generates a memory graph name based on the conversation context, but you can modify this with a system prompt or project instruction in your LLM client.
For example, you can specify to always use a specific knowledge graph for memories:
Save all memories in the `my-memories` graph in InfraNodus.
Or ask InfraNodus to extract only certain entities:
When generating entities, only extract people, companies, and organizations. Ignore everything else.
📦 Installation
1. Easiest Setup: Smithery InfraNodus MCP Server (via HTTP/SSE)
- Prerequisites
- Get the URL of the InfraNodus Server from Smithery
- Add to the Client Tool Where You Want to Use InfraNodus
- Add the URL to your tool. It will prompt you to authenticate via Smithery (Oauth) to access the InfraNodus MCP server.
- If your client doesn't support Oauth, click "Get the URL with keys instead" for non - Oauth authentication.
- For MCP configuration, something like this will be added:
For Cursor:
"mcpServers": {
"mcp-server-infranodus": {
"type": "http",
"url": "https://server.smithery.ai/@infranodus/mcp-server-infranodus/mcp?api_key=YOUR_SMITHERY_KEY&profile=YOUR_SMITHERY_PROFILE",
"headers": {}
}
}
For Claude:
"mcpServers": {
"mcp-server-infranodus": {
"command": "npx",
"args": [
"-y",
"@smithery/cli@latest",
"run",
"@infranodus/mcp-server-infranodus",
"--key",
"YOUR_SMITHERY_KEY",
"--profile",
"YOUR_SMITHERY_PROFILE"
]
}
}
Note: You'll get YOUR_SMITHERY_KEY and YOUR_SMITHERY_PROFILE from Smithery when copying the URL with credentials. These are not your InfraNodus API keys. You can make 70 free calls without the InfraNodus API. Then add it to your Smithery profile for automatic connection.
4. Using InfraNodus Tools in Your Calls
- Use InfraNodus tools through the chat interface, e.g., "show me the graphs where I talk about this topic" or "get the content gaps from the document I uploaded".
- If your client doesn't use InfraNodus for some actions, explicitly add the instruction to use it.
2. Manual Setup: via NPX
You can deploy the InfraNodus server manually via npx. The server is available as an npm package at https://www.npmjs.com/package/infranodus-mcp-server.
For Claude Desktop:
Add this to your Claude's configuration file (Settings > Developer > Edit Config) in the "mcpServers" object:
"infranodus": {
"command": "npx",
"args": ["-y", "infranodus-mcp-server"],
"env": {
"INFRANODUS_API_KEY": "YOUR_INFRANODUS_API_KEY"
}
},
3. Manual Setup: Launching MCP as a Local Server (for inspection & development)
- Prerequisites
- Clone and build the server:
git clone https://github.com/yourusername/mcp-server-infranodus.git
cd mcp-server-infranodus
npm install
npm run build:inspect
Note that build:inspect generates the dist/index.js file for server setup. npm run build builds a Smithery file.
2. Set up your API key:
Create a .env file in the project root:
INFRANODUS_API_KEY=your-api-key-here
- Inspect the MCP:
npm run inspect
Claude Desktop Configuration (macOS)
- Open your Claude Desktop configuration file:
open ~/Library/Application\ Support/Claude/claude_desktop_config.json
- Add the InfraNodus server configuration:
a. remote launch via
npx:
"infranodus": {
"command": "npx",
"args": ["-y", "infranodus-mcp-server"],
"env": {
"INFRANODUS_API_KEY": "YOUR_INFRANODUS_API_KEY"
}
},
b. launch this repo with node:
{
"mcpServers": {
"infranodus": {
"command": "node",
"args": ["/absolute/path/to/mcp-server-infranodus/dist/index.js"],
"env": {
"INFRANODUS_API_KEY": "your-api-key-here"
}
}
}
}
Note: You can leave INFRANODUS_API_KEY empty for 70 free requests, after which you need to add the key.
3. Restart Claude Desktop to load the new server.
Claude Desktop Configuration (Windows)
- Open your Claude Desktop configuration file:
%APPDATA%\Claude\claude_desktop_config.json
- Add the InfraNodus server configuration:
a. remote launch via
npx:
"infranodus": {
"command": "npx",
"args": ["-y", "infranodus-mcp-server"],
"env": {
"INFRANODUS_API_KEY": "YOUR_INFRANODUS_API_KEY"
}
},
b. launch this repo with node:
{
"mcpServers": {
"infranodus": {
"command": "node",
"args": ["C:\\path\\to\\mcp-server-infranodus\\dist\\index.js"],
"env": {
"INFRANODUS_API_KEY": "your-api-key-here"
}
}
}
}
- Restart Claude Desktop.
Cursor Configuration
Other MCP - Compatible Applications
For other MCP - compatible applications, start the server via npx:
INFRANODUS_API_KEY=your-api-key npx -y infranodus-mcp-server
or locally:
INFRANODUS_API_KEY=your-api-key node /path/to/mcp-server-infranodus/dist/index.js
Configure your application to run this command and communicate through standard input/output.
💻 Usage Examples
Once installed, you can ask Claude to:
- "Use InfraNodus to analyze this text and show me the main topics"
- "Generate a knowledge graph from this document"
- "Find content gaps in this article"
- "Retrieve my existing graph called 'Research Notes' from InfraNodus"
- "What are the structural gaps in this text?"
- "Identify the most influential concepts in this content"
🔧 Technical Details
Running in Development Mode
npm run dev
Using the MCP Inspector
Test the server with the MCP Inspector:
npm run build:inspect
npm run inspect
Building from Source
npm run build
Watching for Changes
npm run watch
📚 Documentation
generate_knowledge_graph
Analyzes text and generates a knowledge graph.
Parameters:
text (string, required): The text to analyze
includeStatements (boolean): Include original statements in response
modifyAnalyzedText (string): Text modification options ("none", "entities", "lemmatize")
analyze_existing_graph_by_name
Retrieves and analyzes an existing graph from your InfraNodus account.
Parameters:
graphName (string, required): Name of the existing graph
includeStatements (boolean): Include statements in response
includeGraphSummary (boolean): Include graph summary
generate_content_gaps
Identifies content gaps and missing connections in text.
Parameters:
text (string, required): The text to analyze for gaps
Progress Notifications
For long - running operations like SEO analysis, the MCP server supports real - time progress notifications, enabling AI agents to:
- Track the progress of multi - step operations
- Display status messages to users
- Understand what's happening during lengthy analyses
Implementation
The server implements MCP progress notifications using:
- ToolHandlerContext: All tool handlers can receive an optional context parameter containing the server instance and progress token
- ProgressReporter: A utility class that simplifies sending progress updates with percentages and messages
- Wrapped Handlers: Tool registration automatically injects the server context into handlers
Example Usage in Tools
import { ProgressReporter } from "../utils/progress.js";
import { ToolHandlerContext } from "../types/index.js";
handler: async (params: ParamType, context: ToolHandlerContext = {}) => {
const progress = new ProgressReporter(context);
await progress.report(25, "Fetching data from API...");
await progress.report(75, "Analyzing results...");
await progress.report(100, "Complete!");
return results;
};
The generate_seo_report tool demonstrates this pattern with 6 major progress checkpoints for detailed status updates.
Troubleshooting
Server doesn't appear in Claude
- Verify the configuration file path is correct
- Check that the API key is valid
- Ensure Node.js is in your system PATH
- Restart Claude Desktop completely
API Key Issues
Build Errors
rm -rf node_modules package-lock.json
npm install
npm run build
Resources
📄 License
MIT
Support
For issues related to:
- This MCP server: Open an issue in this repository
- InfraNodus API: Contact support@infranodus.com
- MCP Protocol: Visit the MCP community