@g99/lightrag-mcp-server 1.0.5 → 1.0.6
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/index.js +76 -7
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
/**
|
|
4
4
|
* LightRAG MCP Server - Complete Node.js Implementation
|
|
5
5
|
*
|
|
6
|
-
* Model Context Protocol server for LightRAG with
|
|
6
|
+
* Model Context Protocol server for LightRAG with 31 tools
|
|
7
7
|
*
|
|
8
8
|
* Author: Lalit Suryan
|
|
9
9
|
* License: MIT
|
|
@@ -37,7 +37,7 @@ const httpClient = axios.create({
|
|
|
37
37
|
const server = new Server(
|
|
38
38
|
{
|
|
39
39
|
name: '@g99/lightrag-mcp-server',
|
|
40
|
-
version: '1.0.
|
|
40
|
+
version: '1.0.6',
|
|
41
41
|
},
|
|
42
42
|
{
|
|
43
43
|
capabilities: {
|
|
@@ -46,7 +46,7 @@ const server = new Server(
|
|
|
46
46
|
}
|
|
47
47
|
);
|
|
48
48
|
|
|
49
|
-
// All
|
|
49
|
+
// All 31 Tool definitions (10 Document + 3 Query + 10 Knowledge Graph + 8 System)
|
|
50
50
|
const tools = [
|
|
51
51
|
// ===== DOCUMENT MANAGEMENT TOOLS (10) =====
|
|
52
52
|
{
|
|
@@ -223,7 +223,7 @@ const tools = [
|
|
|
223
223
|
}
|
|
224
224
|
},
|
|
225
225
|
|
|
226
|
-
// ===== KNOWLEDGE GRAPH TOOLS (
|
|
226
|
+
// ===== KNOWLEDGE GRAPH TOOLS (10) =====
|
|
227
227
|
{
|
|
228
228
|
name: 'get_knowledge_graph',
|
|
229
229
|
description: 'Retrieve the complete knowledge graph',
|
|
@@ -305,8 +305,55 @@ const tools = [
|
|
|
305
305
|
required: ['relation_id']
|
|
306
306
|
}
|
|
307
307
|
},
|
|
308
|
+
{
|
|
309
|
+
name: 'get_graph_labels',
|
|
310
|
+
description: 'Get labels from the knowledge graph',
|
|
311
|
+
inputSchema: {
|
|
312
|
+
type: 'object',
|
|
313
|
+
properties: {}
|
|
314
|
+
}
|
|
315
|
+
},
|
|
316
|
+
{
|
|
317
|
+
name: 'update_relation',
|
|
318
|
+
description: 'Update properties of a relationship in the knowledge graph',
|
|
319
|
+
inputSchema: {
|
|
320
|
+
type: 'object',
|
|
321
|
+
properties: {
|
|
322
|
+
relation_id: { type: 'string', description: 'Relation ID' },
|
|
323
|
+
properties: { type: 'object', description: 'Properties to update' }
|
|
324
|
+
},
|
|
325
|
+
required: ['relation_id', 'properties']
|
|
326
|
+
}
|
|
327
|
+
},
|
|
308
328
|
|
|
309
|
-
// ===== SYSTEM MANAGEMENT TOOLS (
|
|
329
|
+
// ===== SYSTEM MANAGEMENT TOOLS (8) =====
|
|
330
|
+
{
|
|
331
|
+
name: 'get_pipeline_status',
|
|
332
|
+
description: 'Get the processing pipeline status from LightRAG',
|
|
333
|
+
inputSchema: {
|
|
334
|
+
type: 'object',
|
|
335
|
+
properties: {}
|
|
336
|
+
}
|
|
337
|
+
},
|
|
338
|
+
{
|
|
339
|
+
name: 'get_track_status',
|
|
340
|
+
description: 'Get track status by ID',
|
|
341
|
+
inputSchema: {
|
|
342
|
+
type: 'object',
|
|
343
|
+
properties: {
|
|
344
|
+
track_id: { type: 'string', description: 'ID of the track' }
|
|
345
|
+
},
|
|
346
|
+
required: ['track_id']
|
|
347
|
+
}
|
|
348
|
+
},
|
|
349
|
+
{
|
|
350
|
+
name: 'get_document_status_counts',
|
|
351
|
+
description: 'Get document status counts',
|
|
352
|
+
inputSchema: {
|
|
353
|
+
type: 'object',
|
|
354
|
+
properties: {}
|
|
355
|
+
}
|
|
356
|
+
},
|
|
310
357
|
{
|
|
311
358
|
name: 'get_health',
|
|
312
359
|
description: 'Check LightRAG server health status',
|
|
@@ -489,7 +536,29 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
489
536
|
response = await httpClient.delete(`/graph/relation/${args.relation_id}`);
|
|
490
537
|
break;
|
|
491
538
|
|
|
539
|
+
case 'get_graph_labels':
|
|
540
|
+
response = await httpClient.get('/graph/labels');
|
|
541
|
+
break;
|
|
542
|
+
|
|
543
|
+
case 'update_relation':
|
|
544
|
+
response = await httpClient.put(`/graph/relation/${args.relation_id}`, {
|
|
545
|
+
properties: args.properties
|
|
546
|
+
});
|
|
547
|
+
break;
|
|
548
|
+
|
|
492
549
|
// SYSTEM MANAGEMENT
|
|
550
|
+
case 'get_pipeline_status':
|
|
551
|
+
response = await httpClient.get('/pipeline/status');
|
|
552
|
+
break;
|
|
553
|
+
|
|
554
|
+
case 'get_track_status':
|
|
555
|
+
response = await httpClient.get(`/track/${args.track_id}/status`);
|
|
556
|
+
break;
|
|
557
|
+
|
|
558
|
+
case 'get_document_status_counts':
|
|
559
|
+
response = await httpClient.get('/documents/status/counts');
|
|
560
|
+
break;
|
|
561
|
+
|
|
493
562
|
case 'get_health':
|
|
494
563
|
response = await httpClient.get('/health');
|
|
495
564
|
break;
|
|
@@ -542,11 +611,11 @@ async function main() {
|
|
|
542
611
|
const transport = new StdioServerTransport();
|
|
543
612
|
await server.connect(transport);
|
|
544
613
|
console.error('╔════════════════════════════════════════════════════════╗');
|
|
545
|
-
console.error('║ LightRAG MCP Server v1.0.
|
|
614
|
+
console.error('║ LightRAG MCP Server v1.0.6 - Started Successfully ║');
|
|
546
615
|
console.error('╚════════════════════════════════════════════════════════╝');
|
|
547
616
|
console.error(`Server: ${LIGHTRAG_SERVER_URL}`);
|
|
548
617
|
console.error(`Workspace: ${LIGHTRAG_WORKSPACE}`);
|
|
549
|
-
console.error(`Tools:
|
|
618
|
+
console.error(`Tools: 31 tools available (Most Complete!)`);
|
|
550
619
|
console.error('Ready for connections...\n');
|
|
551
620
|
}
|
|
552
621
|
|
package/package.json
CHANGED