infranodus-mcp-server 1.6.2 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +82 -82
- package/dist/http-server.js +1 -1
- package/dist/resources/about.js +1 -1
- package/dist/tools/generateYoutubeSearchResultsGraph.d.ts.map +1 -1
- package/dist/tools/generateYoutubeSearchResultsGraph.js +2 -2
- package/dist/tools/generateYoutubeSearchResultsGraph.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
#
|
|
1
|
+
# InfraNodus MCP Server
|
|
2
2
|
|
|
3
|
-
A Model Context Protocol (MCP) server that integrates
|
|
3
|
+
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.
|
|
4
4
|
|
|
5
5
|
## Overview
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
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.
|
|
8
8
|
|
|
9
|
-

|
|
10
10
|
|
|
11
11
|
## Features
|
|
12
12
|
|
|
13
13
|
### You Can Use It To
|
|
14
14
|
|
|
15
|
-
- Connect your existing
|
|
15
|
+
- Connect your existing InfraNodus knowledge graphs to your LLM workflows and AI chats
|
|
16
16
|
- Identify the main topical clusters in discourse without missing the important nuances (works better than standard LLM workflows)
|
|
17
17
|
- Identify the content gaps in any discourse (helpful for content creation and research)
|
|
18
18
|
- Generate new knowledge graphs from any text and use them to augment your LLM responses
|
|
@@ -28,7 +28,7 @@ KeywordGraph MCP Server enables LLM workflows and AI assistants to analyze text
|
|
|
28
28
|
- Perform entity detection for cleaner graphs
|
|
29
29
|
|
|
30
30
|
2. **analyze_existing_graph_by_name**
|
|
31
|
-
- Retrieve and analyze existing graphs from your
|
|
31
|
+
- Retrieve and analyze existing graphs from your InfraNodus account
|
|
32
32
|
- Access previously saved analyses
|
|
33
33
|
- Export graph data with full statistics
|
|
34
34
|
|
|
@@ -55,15 +55,15 @@ KeywordGraph MCP Server enables LLM workflows and AI assistants to analyze text
|
|
|
55
55
|
- Use it to augment prompts in your LLM workflows and AI assistants
|
|
56
56
|
|
|
57
57
|
7. **generate_research_questions**
|
|
58
|
-
- Generate research questions that bridge content gaps from text, URL, or an existing
|
|
58
|
+
- Generate research questions that bridge content gaps from text, URL, or an existing InfraNodus graph
|
|
59
59
|
- Use them as prompts in your LLM models and AI workflows
|
|
60
|
-
- Use any AI model (included in
|
|
60
|
+
- Use any AI model (included in InfraNodus API)
|
|
61
61
|
- Content gaps are identified based on topical clustering
|
|
62
62
|
|
|
63
63
|
8. **generate_research_ideas**
|
|
64
64
|
- Generate innovative research ideas based on content gaps identified in the text
|
|
65
65
|
- Get actionable ideas to improve the text and develop the discourse
|
|
66
|
-
- Use any AI model (included in
|
|
66
|
+
- Use any AI model (included in InfraNodus API)
|
|
67
67
|
- Ideas are generated from gaps between topical clusters
|
|
68
68
|
|
|
69
69
|
9. **optimize_text_structure**
|
|
@@ -74,21 +74,21 @@ KeywordGraph MCP Server enables LLM workflows and AI assistants to analyze text
|
|
|
74
74
|
- Choose response type: response, idea, question, or transcend
|
|
75
75
|
|
|
76
76
|
10. **generate_responses_from_graph**
|
|
77
|
-
- Generate responses based on an existing
|
|
77
|
+
- Generate responses based on an existing InfraNodus graph
|
|
78
78
|
- Integrate them into your LLM workflows and AI assistants
|
|
79
|
-
- Use any AI model (included in
|
|
79
|
+
- Use any AI model (included in InfraNodus API)
|
|
80
80
|
- Use any prompt
|
|
81
81
|
|
|
82
82
|
11. **develop_conceptual_bridges**
|
|
83
83
|
- Analyze text and develop latent ideas based on concepts that connect this text to a broader discourse
|
|
84
84
|
- Discover hidden themes and patterns that link your text to wider contexts
|
|
85
|
-
- Use any AI model (included in
|
|
85
|
+
- Use any AI model (included in InfraNodus API)
|
|
86
86
|
- Generate insights that help develop the discourse
|
|
87
87
|
|
|
88
88
|
12. **develop_latent_topics**
|
|
89
89
|
- Analyze text and extract underdeveloped topics with ideas on how to develop them
|
|
90
90
|
- Identify topics that need more attention and elaboration
|
|
91
|
-
- Use any AI model (included in
|
|
91
|
+
- Use any AI model (included in InfraNodus API)
|
|
92
92
|
- Get actionable suggestions for content expansion
|
|
93
93
|
|
|
94
94
|
13. **develop_text_tool**
|
|
@@ -99,12 +99,12 @@ KeywordGraph MCP Server enables LLM workflows and AI assistants to analyze text
|
|
|
99
99
|
- Finds content gaps for deeper exploration
|
|
100
100
|
|
|
101
101
|
14. **create_knowledge_graph**
|
|
102
|
-
- Create a knowledge graph in
|
|
103
|
-
- Use it to create a knowledge graph in
|
|
102
|
+
- Create a knowledge graph in InfraNodus from text and provide a link to it
|
|
103
|
+
- Use it to create a knowledge graph in InfraNodus from text
|
|
104
104
|
|
|
105
105
|
15. **generate_ontology_graph**
|
|
106
106
|
- Use AI to generate a reasoning ontology graph (entities and the relations between them) from a topic, prompt, or text — e.g. "build an ontology on AI attention mechanisms"
|
|
107
|
-
- Saved as a persistent
|
|
107
|
+
- Saved as a persistent InfraNodus graph by default and a link is returned; set `saveGraph: false` if 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)
|
|
108
108
|
- `modelToUse` defaults to `claude-opus-4.6` for richer ontologies; pick `-mini`/`-lite` variants (or `gpt-4o-mini`) for faster, cheaper generation
|
|
109
109
|
- Returns the compact graph structure (`knowledgeGraph`) and analytics (main topical clusters, content gaps, top influential nodes, top relations, statistics) by default. Set `includeGraph: false` to save context space when only the ontology statements or insights are needed. Set `includeAnalytics: false` if you just need the raw ontology without graph-derived insights — keep it on whenever you want to understand the structure, gaps, or key concepts
|
|
110
110
|
|
|
@@ -131,7 +131,7 @@ KeywordGraph MCP Server enables LLM workflows and AI assistants to analyze text
|
|
|
131
131
|
- Generate a graph with keywords and topics for Google search results for a certain query
|
|
132
132
|
- Use it to understand the current informational supply (what people find)
|
|
133
133
|
|
|
134
|
-
21. **
|
|
134
|
+
21. **analyze_youtube_results**
|
|
135
135
|
- Generate a graph with keywords and topics from YouTube results for a query, channel, or playlist
|
|
136
136
|
- 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 with `list=`), `subtitles` / `subtitlesChannel` / `subtitlesPlaylist` (transcribed subtitles of a video / channel / playlist), or `searchVideos` (analyzes the content of the videos found — limit hard-capped to 20)
|
|
137
137
|
- Control results with `limit` (default 100, max 2000), `sortBy` (`Popular` / `Oldest` / `Latest`), `excludeDescriptions`, `importLanguage`, and `importRegion`
|
|
@@ -152,28 +152,28 @@ KeywordGraph MCP Server enables LLM workflows and AI assistants to analyze text
|
|
|
152
152
|
- Discover what people search for but don't find in current results
|
|
153
153
|
|
|
154
154
|
25. **memory_add_relations**
|
|
155
|
-
- Add relations to the
|
|
155
|
+
- Add relations to the InfraNodus memory from text
|
|
156
156
|
- Automatically detect entities or use [[wikilinks]] syntax to mark them
|
|
157
157
|
- Save memory to a specified graph name for future retrieval
|
|
158
158
|
- Support automatic entity extraction or manual entity marking
|
|
159
159
|
- Provide links to created memory graphs for easy access
|
|
160
160
|
|
|
161
161
|
26. **memory_get_relations**
|
|
162
|
-
- Retrieve relations from
|
|
162
|
+
- Retrieve relations from InfraNodus memory for specific entities
|
|
163
163
|
- Search for entity relations using [[wikilinks]] syntax
|
|
164
164
|
- Query specific memory contexts or search across all memory graphs
|
|
165
165
|
- Extract statements and relationships from stored knowledge graphs
|
|
166
166
|
- Support both entity-specific searches and full context retrieval
|
|
167
167
|
|
|
168
168
|
27. **retrieve_from_knowledge_base**
|
|
169
|
-
- Retrieve context from an existing
|
|
169
|
+
- Retrieve context from an existing InfraNodus knowledge graph using GraphRAG
|
|
170
170
|
- Query your knowledge base with a natural language prompt to get relevant statements
|
|
171
171
|
- Include graph summaries for quick overviews of the knowledge structure
|
|
172
172
|
- Optionally retrieve the full graph, statements, or extended analysis
|
|
173
173
|
- Ideal for augmenting LLM responses with domain-specific knowledge
|
|
174
174
|
|
|
175
175
|
28. **search**
|
|
176
|
-
- Search through existing
|
|
176
|
+
- Search through existing InfraNodus graphs
|
|
177
177
|
- Also use it to search through the public graphs of a specific user
|
|
178
178
|
- Compatible with ChatGPT Deep Research mode via Developer Mode > Connectors
|
|
179
179
|
|
|
@@ -195,17 +195,17 @@ _More capabilites coming soon!_
|
|
|
195
195
|
|
|
196
196
|
## Knowledge Graph Memory Use Advice
|
|
197
197
|
|
|
198
|
-
|
|
198
|
+
InfraNodus represents any text as a network graph in order to identify the main clusters of ideas and gaps between them. This helps generate advanced insights based on the text's structure. The network is effectively a knowledge graph that can also be used to retrieve complex ontological relations between different entities and concepts. This process is automated in InfraNodus using the `search` and `fetch` tools along with the other tools that analyze the underlying network.
|
|
199
199
|
|
|
200
|
-
However, you can also easily use
|
|
200
|
+
However, you can also easily use InfraNodus as a more traditional memory server to save and retrieve relations. We use [[wikilinks]] to highlight entities in your text to make your content and graphs compatible with markup syntax and PKM tools such as Obsidian. By default, InfraNodus will generate the name of the memory graph for you based on the context of the conversation. However, you can modify this default behavior by adding a **system prompt** or **project instruction** into your LLM client.
|
|
201
201
|
|
|
202
202
|
Specifically you can specify to always use a speciic knowlege graph for memories to store everything in one place:
|
|
203
203
|
|
|
204
204
|
```
|
|
205
|
-
Save all memories in the `my-memories` graph in
|
|
205
|
+
Save all memories in the `my-memories` graph in InfraNodus.
|
|
206
206
|
```
|
|
207
207
|
|
|
208
|
-
Or you can ask
|
|
208
|
+
Or you can ask InfraNodus to only save certain entities, e.g. for building social networks:
|
|
209
209
|
|
|
210
210
|
```
|
|
211
211
|
When generating entities, only extract people, companies, and organizations. Ignore everything else.
|
|
@@ -213,41 +213,41 @@ When generating entities, only extract people, companies, and organizations. Ign
|
|
|
213
213
|
|
|
214
214
|
## Installation
|
|
215
215
|
|
|
216
|
-
The easiest and the fastest way to launch the
|
|
216
|
+
The easiest and the fastest way to launch the InfraNodus MCP server is to either use our server URL `https://mcp.infranodus.com` for the remote / web applications or to add a manual configuration to your LLM apps if you're running them locally.
|
|
217
217
|
|
|
218
|
-
You can also install the server locally, so you have more control over it. In this case, you can also edit the source files and even create your tools based on the [
|
|
218
|
+
You can also install the server locally, so you have more control over it. In this case, you can also edit the source files and even create your tools based on the [InfraNodus API](https://infranodus.com/api).
|
|
219
219
|
|
|
220
|
-
Below we describe the two different ways to set up your
|
|
220
|
+
Below we describe the two different ways to set up your InfraNodus MCP server.
|
|
221
221
|
|
|
222
|
-
### 1. Easiest Setup:
|
|
222
|
+
### 1. Easiest Setup: InfraNodus MCP Server (via HTTP/SSE)
|
|
223
223
|
|
|
224
224
|
0. **Prerequisites**
|
|
225
225
|
|
|
226
|
-
- Create an account on [
|
|
226
|
+
- Create an account on [InfraNodus](https://infranodus.com) if you don't have it already and get your [InfraNodus API Key](https://infranodus.com/api-access). We offer 14-day free trials.
|
|
227
227
|
|
|
228
228
|
1. **Get the URL**
|
|
229
229
|
|
|
230
230
|
- We currently use the following URL for our MCP server deployed in our infrastructure:
|
|
231
231
|
|
|
232
232
|
```bash
|
|
233
|
-
https://mcp.
|
|
233
|
+
https://mcp.infranodus.com
|
|
234
234
|
```
|
|
235
235
|
|
|
236
|
-
2. **Add the MCP server URL to the Client Tool Where You Want to Use
|
|
236
|
+
2. **Add the MCP server URL to the Client Tool Where You Want to Use InfraNodus**
|
|
237
237
|
|
|
238
|
-
- Once you add the URL above to your tool, it will automatically prompt you to authenticate using OAuth in order to be able to access the
|
|
238
|
+
- Once you add the URL above to your tool, it will automatically prompt you to authenticate using OAuth in order to be able to access the InfraNodus MCP hosted on it.
|
|
239
239
|
|
|
240
|
-
4. **Using
|
|
240
|
+
4. **Using InfraNodus Tools in Your Calls**
|
|
241
241
|
|
|
242
|
-
- To use
|
|
242
|
+
- To use InfraNodus, see the tools available and simply call them 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")
|
|
243
243
|
|
|
244
|
-
- If your client is not using
|
|
244
|
+
- If your client is not using InfraNodus for some actions, add the instruction to use InfraNodus explicitly.
|
|
245
245
|
|
|
246
246
|
### 2. Manual Setup: via NPX
|
|
247
247
|
|
|
248
|
-
You can deploy the
|
|
248
|
+
You can deploy the InfraNodus server manually via `npx` — a package that allows to execute local and remote Node.Js packages on your computer.
|
|
249
249
|
|
|
250
|
-
The
|
|
250
|
+
The InfraNodus MCP server is available as an npm package at [https://www.npmjs.com/package/infranodus-mcp-server](https://www.npmjs.com/package/infranodus-mcp-server) from where you can launch it remotely on your local computer with npx. It will expose its tools to the MCP client that will be using this command to launch the server
|
|
251
251
|
|
|
252
252
|
#### For Claude Desktop / Cursor IDE:
|
|
253
253
|
|
|
@@ -256,11 +256,11 @@ Just add this in your Claude's configuration file (Settings > Developer > Edit C
|
|
|
256
256
|
```json
|
|
257
257
|
{
|
|
258
258
|
"mcpServers": {
|
|
259
|
-
"
|
|
259
|
+
"infranodus": {
|
|
260
260
|
"command": "npx",
|
|
261
|
-
"args": ["-y", "
|
|
261
|
+
"args": ["-y", "infranodus-mcp-server"],
|
|
262
262
|
"env": {
|
|
263
|
-
"
|
|
263
|
+
"INFRANODUS_API_KEY": "YOUR_INFRANODUS_API_KEY"
|
|
264
264
|
}
|
|
265
265
|
}
|
|
266
266
|
}
|
|
@@ -269,12 +269,12 @@ Just add this in your Claude's configuration file (Settings > Developer > Edit C
|
|
|
269
269
|
|
|
270
270
|
#### For Claude Code
|
|
271
271
|
|
|
272
|
-
To connect the
|
|
272
|
+
To connect the InfraNodus MCP server to your Claude code, you can use this command. Make sure to provide the correct InfraNodus API key for your account:
|
|
273
273
|
|
|
274
274
|
```bash
|
|
275
|
-
claude mcp add
|
|
276
|
-
-- env
|
|
277
|
-
npx -y
|
|
275
|
+
claude mcp add infranodus -s user \
|
|
276
|
+
-- env INFRANODUS_API_KEY=YOUR_INRANODUS_KEY \
|
|
277
|
+
npx -y infranodus-mcp-server
|
|
278
278
|
```
|
|
279
279
|
|
|
280
280
|
### 3. Manual Setup: Launching MCP as a Local Server (for inspection & development)
|
|
@@ -282,13 +282,13 @@ claude mcp add keywordgraph -s user \
|
|
|
282
282
|
0. **Prerequisites**
|
|
283
283
|
|
|
284
284
|
- Node.js 18+ installed
|
|
285
|
-
-
|
|
285
|
+
- InfraNodus API key (get yours at [https://infranodus.com/api-access](https://infranodus.com/api-access))
|
|
286
286
|
|
|
287
287
|
1. **Clone and build the server:**
|
|
288
288
|
|
|
289
289
|
```bash
|
|
290
|
-
git clone https://github.com/yourusername/mcp-server-
|
|
291
|
-
cd mcp-server-
|
|
290
|
+
git clone https://github.com/yourusername/mcp-server-infranodus.git
|
|
291
|
+
cd mcp-server-infranodus
|
|
292
292
|
npm install
|
|
293
293
|
npm run build:inspect
|
|
294
294
|
npm run inspect
|
|
@@ -301,7 +301,7 @@ Note that `build:inspect` will generate the `dist/index.js` file which you will
|
|
|
301
301
|
Create a `.env` file in the project root:
|
|
302
302
|
|
|
303
303
|
```
|
|
304
|
-
|
|
304
|
+
INFRANODUS_API_KEY=your-api-key-here
|
|
305
305
|
```
|
|
306
306
|
|
|
307
307
|
3. **Inspect the MCP:**
|
|
@@ -318,18 +318,18 @@ Note that `build:inspect` will generate the `dist/index.js` file which you will
|
|
|
318
318
|
open ~/Library/Application\ Support/Claude/claude_desktop_config.json
|
|
319
319
|
```
|
|
320
320
|
|
|
321
|
-
2. Add the
|
|
321
|
+
2. Add the InfraNodus server configuration:
|
|
322
322
|
|
|
323
323
|
a. remote launch via `npx`:
|
|
324
324
|
|
|
325
325
|
```json
|
|
326
326
|
{
|
|
327
327
|
"mcpServers": {
|
|
328
|
-
"
|
|
328
|
+
"infranodus": {
|
|
329
329
|
"command": "npx",
|
|
330
|
-
"args": ["-y", "
|
|
330
|
+
"args": ["-y", "infranodus-mcp-server"],
|
|
331
331
|
"env": {
|
|
332
|
-
"
|
|
332
|
+
"INFRANODUS_API_KEY": "YOUR_INFRANODUS_API_KEY"
|
|
333
333
|
}
|
|
334
334
|
}
|
|
335
335
|
}
|
|
@@ -341,18 +341,18 @@ b. launch this repo with `node`, specify the absolute path to the repo + `/dist/
|
|
|
341
341
|
```json
|
|
342
342
|
{
|
|
343
343
|
"mcpServers": {
|
|
344
|
-
"
|
|
344
|
+
"infranodus": {
|
|
345
345
|
"command": "node",
|
|
346
|
-
"args": ["/absolute/path/to/mcp-server-
|
|
346
|
+
"args": ["/absolute/path/to/mcp-server-infranodus/dist/index.js"],
|
|
347
347
|
"env": {
|
|
348
|
-
"
|
|
348
|
+
"INFRANODUS_API_KEY": "your-api-key-here"
|
|
349
349
|
}
|
|
350
350
|
}
|
|
351
351
|
}
|
|
352
352
|
}
|
|
353
353
|
```
|
|
354
354
|
|
|
355
|
-
**Note:** you can leave the `
|
|
355
|
+
**Note:** you can leave the `INFRANODUS_API_KEY` empty in which case you can make 70 free requests after which you will hit quota and will need to add your API key.
|
|
356
356
|
|
|
357
357
|
3. Restart Claude Desktop to load the new server.
|
|
358
358
|
|
|
@@ -364,18 +364,18 @@ b. launch this repo with `node`, specify the absolute path to the repo + `/dist/
|
|
|
364
364
|
%APPDATA%\Claude\claude_desktop_config.json
|
|
365
365
|
```
|
|
366
366
|
|
|
367
|
-
2. Add the
|
|
367
|
+
2. Add the InfraNodus server configuration:
|
|
368
368
|
|
|
369
369
|
a. remote launch via `npx`:
|
|
370
370
|
|
|
371
371
|
```json
|
|
372
372
|
{
|
|
373
373
|
"mcpServers": {
|
|
374
|
-
"
|
|
374
|
+
"infranodus": {
|
|
375
375
|
"command": "npx",
|
|
376
|
-
"args": ["-y", "
|
|
376
|
+
"args": ["-y", "infranodus-mcp-server"],
|
|
377
377
|
"env": {
|
|
378
|
-
"
|
|
378
|
+
"INFRANODUS_API_KEY": "YOUR_INFRANODUS_API_KEY"
|
|
379
379
|
}
|
|
380
380
|
}
|
|
381
381
|
}
|
|
@@ -387,11 +387,11 @@ b. launch this repo with `node`:
|
|
|
387
387
|
```json
|
|
388
388
|
{
|
|
389
389
|
"mcpServers": {
|
|
390
|
-
"
|
|
390
|
+
"infranodus": {
|
|
391
391
|
"command": "node",
|
|
392
|
-
"args": ["C:\\path\\to\\mcp-server-
|
|
392
|
+
"args": ["C:\\path\\to\\mcp-server-infranodus\\dist\\index.js"],
|
|
393
393
|
"env": {
|
|
394
|
-
"
|
|
394
|
+
"INFRANODUS_API_KEY": "your-api-key-here"
|
|
395
395
|
}
|
|
396
396
|
}
|
|
397
397
|
}
|
|
@@ -407,26 +407,26 @@ b. launch this repo with `node`:
|
|
|
407
407
|
For other applications supporting MCP, use the following command to start the server via npx:
|
|
408
408
|
|
|
409
409
|
```bash
|
|
410
|
-
|
|
410
|
+
INFRANODUS_API_KEY=your-api-key npx -y infranodus-mcp-server
|
|
411
411
|
```
|
|
412
412
|
|
|
413
413
|
or locally
|
|
414
414
|
|
|
415
415
|
```bash
|
|
416
|
-
|
|
416
|
+
INFRANODUS_API_KEY=your-api-key node /path/to/mcp-server-infranodus/dist/index.js
|
|
417
417
|
```
|
|
418
418
|
|
|
419
419
|
The server communicates via stdio, so configure your application to run this command and communicate through standard input/output.
|
|
420
420
|
|
|
421
421
|
### Legacy Setup via Smithery
|
|
422
422
|
|
|
423
|
-
|
|
423
|
+
InfraNodus server is also available through Smithery: a repository of MCP servers that has an easy-to-follow installation process for most LLM clients. You will need a separate accout at Smithery though.
|
|
424
424
|
|
|
425
425
|
- Create an account on [Smithery.Ai](https://smithery.ai/) (it's free and you can use your Google or GitHub login)
|
|
426
426
|
|
|
427
|
-
- Then go to the [Smithery
|
|
427
|
+
- Then go to the [Smithery InfraNodus Server](https://smithery.ai/server/@infranodus/mcp-server-infranodus), click "Configure" at the top right, and add your InfraNodus API key there.
|
|
428
428
|
|
|
429
|
-
- Go to [Smithery
|
|
429
|
+
- Go to [Smithery InfraNodus Server](https://smithery.ai/server/@infranodus/mcp-server-infranodus) and get the URL link from Smithery [https://server.smithery.ai/@infranodus/mcp-server-infranodus/mcp](https://server.smithery.ai/@infranodus/mcp-server-infranodus/mcp) for the server or use one of their automatic setup tools for Claude or Cursor.
|
|
430
430
|
|
|
431
431
|
- You may need to get your separate Smithery API key and Smithery proile link to make this work.
|
|
432
432
|
|
|
@@ -435,9 +435,9 @@ KeywordGraph server is also available through Smithery: a repository of MCP serv
|
|
|
435
435
|
```json
|
|
436
436
|
// e.g. Cursor will access directly the server via Smithery
|
|
437
437
|
"mcpServers": {
|
|
438
|
-
"mcp-server-
|
|
438
|
+
"mcp-server-infranodus": {
|
|
439
439
|
"type": "http",
|
|
440
|
-
"url": "https://server.smithery.ai/@
|
|
440
|
+
"url": "https://server.smithery.ai/@infranodus/mcp-server-infranodus/mcp?api_key=YOUR_SMITHERY_KEY&profile=YOUR_SMITHERY_PROFILE",
|
|
441
441
|
"headers": {}
|
|
442
442
|
}
|
|
443
443
|
}
|
|
@@ -449,13 +449,13 @@ KeywordGraph server is also available through Smithery: a repository of MCP serv
|
|
|
449
449
|
// Claude uses a slightly different implementation
|
|
450
450
|
// Fot this, it launches the MCP server on your local machine
|
|
451
451
|
"mcpServers": {
|
|
452
|
-
"mcp-server-
|
|
452
|
+
"mcp-server-infranodus": {
|
|
453
453
|
"command": "npx",
|
|
454
454
|
"args": [
|
|
455
455
|
"-y",
|
|
456
456
|
"@smithery/cli@latest",
|
|
457
457
|
"run",
|
|
458
|
-
"@
|
|
458
|
+
"@infranodus/mcp-server-infranodus",
|
|
459
459
|
"--key",
|
|
460
460
|
"YOUR_SMITHERY_KEY",
|
|
461
461
|
"--profile",
|
|
@@ -465,16 +465,16 @@ KeywordGraph server is also available through Smithery: a repository of MCP serv
|
|
|
465
465
|
}
|
|
466
466
|
```
|
|
467
467
|
|
|
468
|
-
**Note**, in both cases, you'll automatically get the `YOUR_SMITHERY_KEY` and `YOUR_SMITHERY_PROFILE` values from Smithery when you copy the URL with credentials. These are not your
|
|
468
|
+
**Note**, in both cases, you'll automatically get the `YOUR_SMITHERY_KEY` and `YOUR_SMITHERY_PROFILE` values from Smithery when you copy the URL with credentials. These are not your InfraNodus API keys. You can use the InfraNodus API server without the API for the first 70 calls. Then you can add it to your Smithery profile and it will automatically connect to your account using the link above.
|
|
469
469
|
|
|
470
470
|
## Usage Examples
|
|
471
471
|
|
|
472
472
|
Once installed, you can ask Claude to:
|
|
473
473
|
|
|
474
|
-
- "Use
|
|
474
|
+
- "Use InfraNodus to analyze this text and show me the main topics"
|
|
475
475
|
- "Generate a knowledge graph from this document"
|
|
476
476
|
- "Find content gaps in this article"
|
|
477
|
-
- "Retrieve my existing graph called 'Research Notes' from
|
|
477
|
+
- "Retrieve my existing graph called 'Research Notes' from InfraNodus"
|
|
478
478
|
- "What are the structural gaps in this text?"
|
|
479
479
|
- "Identify the most influential concepts in this content"
|
|
480
480
|
|
|
@@ -522,7 +522,7 @@ Analyzes text and generates a knowledge graph.
|
|
|
522
522
|
|
|
523
523
|
### analyze_existing_graph_by_name
|
|
524
524
|
|
|
525
|
-
Retrieves and analyzes an existing graph from your
|
|
525
|
+
Retrieves and analyzes an existing graph from your InfraNodus account.
|
|
526
526
|
|
|
527
527
|
**Parameters:**
|
|
528
528
|
|
|
@@ -601,7 +601,7 @@ The `generate_seo_report` tool demonstrates this pattern with 6 major progress c
|
|
|
601
601
|
|
|
602
602
|
### API Key Issues
|
|
603
603
|
|
|
604
|
-
- Get your API key at: [https://
|
|
604
|
+
- Get your API key at: [https://infranodus.com/api-access](https://infranodus.com/api-access)
|
|
605
605
|
- Ensure the key is correctly set in the configuration
|
|
606
606
|
- Check that the key has not expired
|
|
607
607
|
|
|
@@ -616,9 +616,9 @@ npm run build
|
|
|
616
616
|
|
|
617
617
|
## Resources
|
|
618
618
|
|
|
619
|
-
- [
|
|
620
|
-
- [
|
|
621
|
-
- [
|
|
619
|
+
- [InfraNodus Website](https://infranodus.com)
|
|
620
|
+
- [InfraNodus MCP](https://infranodus.com/mcp)
|
|
621
|
+
- [InfraNodus API Documentation](https://infranodus.com/api-access)
|
|
622
622
|
- [MCP Protocol Documentation](https://modelcontextprotocol.io)
|
|
623
623
|
- [Graph Theory Concepts](https://noduslabs.com/research/)
|
|
624
624
|
|
|
@@ -631,5 +631,5 @@ MIT
|
|
|
631
631
|
For issues related to:
|
|
632
632
|
|
|
633
633
|
- This MCP server: Open an issue in this repository
|
|
634
|
-
-
|
|
634
|
+
- InfraNodus API: Contact support@infranodus.com
|
|
635
635
|
- MCP Protocol: Visit the [MCP community](https://modelcontextprotocol.io)
|
package/dist/http-server.js
CHANGED
package/dist/resources/about.js
CHANGED
|
@@ -30,7 +30,7 @@ Available Tools:
|
|
|
30
30
|
10. difference_between_texts - Create knowledge graphs from two or more text and find what's not present in the first graph that's present in the others
|
|
31
31
|
11. analyze_llm_results - Ask an LLM to describe a topic and turn its answer into a knowledge graph that reveals how the model frames it (main concepts, clusters, content gaps, relations). Useful for probing model bias or comparing how different models describe the same topic. Default model: claude-opus-4.6. Saves by default; returns analytics by default and omits raw graph (includeGraph: false) to keep responses compact
|
|
32
32
|
12. analyze_google_search_results - Generate a Google search results graph from search queries
|
|
33
|
-
13.
|
|
33
|
+
13. analyze_youtube_results - Generate a knowledge graph from YouTube results (search results, a channel's or playlist's videos, video comments, or transcribed subtitles) to reveal main topics, clusters, and content gaps
|
|
34
34
|
14. analyze_related_search_queries - Generate a graph of search requests related to search queries provided
|
|
35
35
|
15. search_queries_vs_search_results - Find what people search for but don't yet find
|
|
36
36
|
16. generate_seo_report - Analyze content for SEO optimization by comparing it with Google search results and search queries
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateYoutubeSearchResultsGraph.d.ts","sourceRoot":"","sources":["../../src/tools/generateYoutubeSearchResultsGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,uCAAuC,EAAE,MAAM,qBAAqB,CAAC;AAI9E,eAAO,MAAM,qCAAqC;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"generateYoutubeSearchResultsGraph.d.ts","sourceRoot":"","sources":["../../src/tools/generateYoutubeSearchResultsGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,uCAAuC,EAAE,MAAM,qBAAqB,CAAC;AAI9E,eAAO,MAAM,qCAAqC;;;;;;;;;;;;;;;;;;;;;;;;;sBAexC,CAAC,CAAC,KAAK,CAAC,OAAO,uCAAuC,CAAC;;;;;;;;;;;;;CA+FhE,CAAC"}
|
|
@@ -2,9 +2,9 @@ import { GenerateYoutubeSearchResultsGraphSchema } from "../schemas/index.js";
|
|
|
2
2
|
import { makeInfraNodusRequest } from "../api/client.js";
|
|
3
3
|
import { transformToStructuredOutput } from "../utils/transformers.js";
|
|
4
4
|
export const generateYoutubeSearchResultsGraphTool = {
|
|
5
|
-
name: "
|
|
5
|
+
name: "analyze_youtube_results",
|
|
6
6
|
definition: {
|
|
7
|
-
title: "Analyze
|
|
7
|
+
title: "Analyze YouTube Search Results, Channels, Playlists, Videos, and Comments",
|
|
8
8
|
description: "Generate a knowledge graph and topical clusters from YouTube results — search results, a channel's or playlist's videos, video comments, or transcribed subtitles — to reveal the main topics, clusters, and content gaps in the discourse",
|
|
9
9
|
inputSchema: GenerateYoutubeSearchResultsGraphSchema.shape,
|
|
10
10
|
annotations: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateYoutubeSearchResultsGraph.js","sourceRoot":"","sources":["../../src/tools/generateYoutubeSearchResultsGraph.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uCAAuC,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAEvE,MAAM,CAAC,MAAM,qCAAqC,GAAG;IACpD,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"generateYoutubeSearchResultsGraph.js","sourceRoot":"","sources":["../../src/tools/generateYoutubeSearchResultsGraph.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED