al-go-mcp-server 1.0.1 → 1.0.3
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/build/index.js +59 -9
- package/build/index.js.map +1 -1
- package/package.json +1 -1
package/build/index.js
CHANGED
|
@@ -4,6 +4,44 @@ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"
|
|
|
4
4
|
import { z } from "zod";
|
|
5
5
|
import { AlGoService } from "./services/AlGoService.js";
|
|
6
6
|
import { DocumentIndex } from "./services/DocumentIndex.js";
|
|
7
|
+
import fs from "fs";
|
|
8
|
+
import path from "path";
|
|
9
|
+
import { fileURLToPath } from "url";
|
|
10
|
+
// Handle command line arguments
|
|
11
|
+
const args = process.argv.slice(2);
|
|
12
|
+
if (args.includes('--version') || args.includes('-v')) {
|
|
13
|
+
// Read version from package.json
|
|
14
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
15
|
+
const __dirname = path.dirname(__filename);
|
|
16
|
+
const packageJsonPath = path.join(__dirname, '..', 'package.json');
|
|
17
|
+
try {
|
|
18
|
+
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'));
|
|
19
|
+
console.log(`al-go-mcp-server v${packageJson.version}`);
|
|
20
|
+
process.exit(0);
|
|
21
|
+
}
|
|
22
|
+
catch (error) {
|
|
23
|
+
console.log('al-go-mcp-server (version unknown)');
|
|
24
|
+
process.exit(0);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
if (args.includes('--help') || args.includes('-h')) {
|
|
28
|
+
console.log(`
|
|
29
|
+
AL-Go MCP Server
|
|
30
|
+
|
|
31
|
+
A Model Context Protocol server for accessing AL-Go documentation.
|
|
32
|
+
|
|
33
|
+
Usage:
|
|
34
|
+
npx al-go-mcp-server Start the MCP server
|
|
35
|
+
npx al-go-mcp-server --version Show version information
|
|
36
|
+
npx al-go-mcp-server --help Show this help message
|
|
37
|
+
|
|
38
|
+
Environment Variables:
|
|
39
|
+
GITHUB_TOKEN Optional GitHub token for higher rate limits
|
|
40
|
+
|
|
41
|
+
For more information, visit: https://github.com/louagej/al-go-mcp-server
|
|
42
|
+
`);
|
|
43
|
+
process.exit(0);
|
|
44
|
+
}
|
|
7
45
|
/**
|
|
8
46
|
* AL-Go Documentation MCP Server
|
|
9
47
|
*
|
|
@@ -14,18 +52,30 @@ import { DocumentIndex } from "./services/DocumentIndex.js";
|
|
|
14
52
|
// Initialize the MCP server
|
|
15
53
|
const server = new McpServer({
|
|
16
54
|
name: "al-go-mcp-server",
|
|
17
|
-
version: "1.0.
|
|
55
|
+
version: "1.0.1"
|
|
18
56
|
});
|
|
19
|
-
// Initialize services
|
|
20
|
-
|
|
21
|
-
|
|
57
|
+
// Initialize services lazily to avoid startup messages for --version/--help
|
|
58
|
+
let alGoService;
|
|
59
|
+
let documentIndex;
|
|
60
|
+
function getAlGoService() {
|
|
61
|
+
if (!alGoService) {
|
|
62
|
+
alGoService = new AlGoService();
|
|
63
|
+
}
|
|
64
|
+
return alGoService;
|
|
65
|
+
}
|
|
66
|
+
function getDocumentIndex() {
|
|
67
|
+
if (!documentIndex) {
|
|
68
|
+
documentIndex = new DocumentIndex();
|
|
69
|
+
}
|
|
70
|
+
return documentIndex;
|
|
71
|
+
}
|
|
22
72
|
// Resource: Get AL-Go repository information
|
|
23
73
|
server.registerResource("al-go-repo-info", "al-go://repo/info", {
|
|
24
74
|
title: "AL-Go Repository Information",
|
|
25
75
|
description: "Basic information about the AL-Go repository",
|
|
26
76
|
mimeType: "application/json"
|
|
27
77
|
}, async (uri) => {
|
|
28
|
-
const repoInfo = await
|
|
78
|
+
const repoInfo = await getAlGoService().getRepositoryInfo();
|
|
29
79
|
return {
|
|
30
80
|
contents: [{
|
|
31
81
|
uri: uri.href,
|
|
@@ -41,7 +91,7 @@ server.registerResource("al-go-doc", "al-go://docs/{path}", {
|
|
|
41
91
|
}, async (uri) => {
|
|
42
92
|
// Extract path from URI
|
|
43
93
|
const urlPath = new URL(uri.href).pathname.replace('/docs/', '');
|
|
44
|
-
const content = await
|
|
94
|
+
const content = await getAlGoService().getDocumentContent(urlPath);
|
|
45
95
|
return {
|
|
46
96
|
contents: [{
|
|
47
97
|
uri: uri.href,
|
|
@@ -61,7 +111,7 @@ server.registerTool("search-al-go-docs", {
|
|
|
61
111
|
}, async ({ query, limit }) => {
|
|
62
112
|
try {
|
|
63
113
|
// Use direct API search instead of indexing
|
|
64
|
-
const results = await
|
|
114
|
+
const results = await getDocumentIndex().search(query, limit);
|
|
65
115
|
const resultText = results.map((result, index) => `${index + 1}. **${result.title}** (${result.path})\n ${result.excerpt}\n Score: ${result.score.toFixed(2)}\n`).join('\n');
|
|
66
116
|
return {
|
|
67
117
|
content: [{
|
|
@@ -89,7 +139,7 @@ server.registerTool("get-al-go-workflows", {
|
|
|
89
139
|
}
|
|
90
140
|
}, async ({ workflowType }) => {
|
|
91
141
|
try {
|
|
92
|
-
const workflows = await
|
|
142
|
+
const workflows = await getAlGoService().getWorkflowExamples(workflowType);
|
|
93
143
|
const workflowText = workflows.map((workflow) => `## ${workflow.name}\n**Path:** ${workflow.path}\n**Description:** ${workflow.description}\n\n\`\`\`yaml\n${workflow.content}\n\`\`\`\n`).join('\n---\n\n');
|
|
94
144
|
return {
|
|
95
145
|
content: [{
|
|
@@ -117,7 +167,7 @@ server.registerTool("refresh-al-go-cache", {
|
|
|
117
167
|
}
|
|
118
168
|
}, async ({ force }) => {
|
|
119
169
|
try {
|
|
120
|
-
await
|
|
170
|
+
await getDocumentIndex().refresh(getAlGoService(), force);
|
|
121
171
|
return {
|
|
122
172
|
content: [{
|
|
123
173
|
type: "text",
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,gCAAgC;AAChC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACnC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;IACtD,iCAAiC;IACjC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IAEnE,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,qBAAqB,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;CAcb,CAAC,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED;;;;;;GAMG;AAEH,4BAA4B;AAC5B,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;IAC3B,IAAI,EAAE,kBAAkB;IACxB,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,4EAA4E;AAC5E,IAAI,WAAwB,CAAC;AAC7B,IAAI,aAA4B,CAAC;AAEjC,SAAS,cAAc;IACrB,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,gBAAgB;IACvB,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;IACtC,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,6CAA6C;AAC7C,MAAM,CAAC,gBAAgB,CACrB,iBAAiB,EACjB,mBAAmB,EACnB;IACE,KAAK,EAAE,8BAA8B;IACrC,WAAW,EAAE,8CAA8C;IAC3D,QAAQ,EAAE,kBAAkB;CAC7B,EACD,KAAK,EAAE,GAAG,EAAE,EAAE;IACZ,MAAM,QAAQ,GAAG,MAAM,cAAc,EAAE,CAAC,iBAAiB,EAAE,CAAC;IAC5D,OAAO;QACL,QAAQ,EAAE,CAAC;gBACT,GAAG,EAAE,GAAG,CAAC,IAAI;gBACb,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;gBACvC,QAAQ,EAAE,kBAAkB;aAC7B,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,kDAAkD;AAClD,MAAM,CAAC,gBAAgB,CACrB,WAAW,EACX,qBAAqB,EACrB;IACE,KAAK,EAAE,0BAA0B;IACjC,WAAW,EAAE,sDAAsD;CACpE,EACD,KAAK,EAAE,GAAG,EAAE,EAAE;IACZ,wBAAwB;IACxB,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACjE,MAAM,OAAO,GAAG,MAAM,cAAc,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACnE,OAAO;QACL,QAAQ,EAAE,CAAC;gBACT,GAAG,EAAE,GAAG,CAAC,IAAI;gBACb,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,eAAe;aAC1B,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,mCAAmC;AACnC,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;IACE,KAAK,EAAE,4BAA4B;IACnC,WAAW,EAAE,yDAAyD;IACtE,WAAW,EAAE;QACX,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QAClE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,qCAAqC,CAAC;KAC9E;CACF,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IACzB,IAAI,CAAC;QACH,4CAA4C;QAC5C,MAAM,OAAO,GAAG,MAAM,gBAAgB,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAE9D,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAW,EAAE,KAAa,EAAE,EAAE,CAC5D,GAAG,KAAK,GAAG,CAAC,OAAO,MAAM,CAAC,KAAK,OAAO,MAAM,CAAC,IAAI,SAAS,MAAM,CAAC,OAAO,eAAe,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CACnH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,SAAS,OAAO,CAAC,MAAM,iBAAiB,KAAK,SAAS,UAAU,EAAE;iBACzE,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,wCAAwC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE;iBACzG,CAAC;YACF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC,CACF,CAAC;AAEF,oCAAoC;AACpC,MAAM,CAAC,YAAY,CACjB,qBAAqB,EACrB;IACE,KAAK,EAAE,6BAA6B;IACpC,WAAW,EAAE,wCAAwC;IACrD,WAAW,EAAE;QACX,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,+BAA+B,CAAC;KACxH;CACF,EACD,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE;IACzB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,cAAc,EAAE,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAE3E,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAa,EAAE,EAAE,CACnD,MAAM,QAAQ,CAAC,IAAI,eAAe,QAAQ,CAAC,IAAI,sBAAsB,QAAQ,CAAC,WAAW,mBAAmB,QAAQ,CAAC,OAAO,YAAY,CACzI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEpB,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,4BAA4B,YAAY,SAAS,YAAY,EAAE;iBACtE,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,qCAAqC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE;iBACtG,CAAC;YACF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC,CACF,CAAC;AAEF,oCAAoC;AACpC,MAAM,CAAC,YAAY,CACjB,qBAAqB,EACrB;IACE,KAAK,EAAE,mCAAmC;IAC1C,WAAW,EAAE,4DAA4D;IACzE,WAAW,EAAE;QACX,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,uCAAuC,CAAC;KACpF;CACF,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;IAClB,IAAI,CAAC;QACH,MAAM,gBAAgB,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,KAAK,CAAC,CAAC;QAC1D,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,mDAAmD;iBAC1D,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,iCAAiC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE;iBAClG,CAAC;YACF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC,CACF,CAAC;AAEF,mCAAmC;AACnC,MAAM,CAAC,cAAc,CACnB,kBAAkB,EAClB;IACE,KAAK,EAAE,0BAA0B;IACjC,WAAW,EAAE,8DAA8D;IAC3E,UAAU,EAAE;QACV,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,sBAAsB,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QACzG,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;KAC7E;CACF,EACD,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC5B,MAAM,UAAU,GAAG;;gBAEP,WAAW;EACzB,QAAQ,CAAC,CAAC,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE;;;;;;;;sHAQ6E,CAAC;IAEnH,OAAO;QACL,QAAQ,EAAE,CAAC;gBACT,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,UAAU;iBACjB;aACF,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,oCAAoC;AACpC,KAAK,UAAU,IAAI;IACjB,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAE9C,IAAI,CAAC;QACH,6DAA6D;QAE7D,wCAAwC;QACxC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAEhC,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;QAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,6BAA6B;AAC7B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;IACxB,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;IACzB,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,mBAAmB;AACnB,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;IACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|