n8n-mcp 2.53.1 → 2.54.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/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +44 -23
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/skills/index.d.ts +3 -0
- package/dist/mcp/skills/index.d.ts.map +1 -0
- package/dist/mcp/skills/index.js +6 -0
- package/dist/mcp/skills/index.js.map +1 -0
- package/dist/mcp/skills/registry.d.ts +16 -0
- package/dist/mcp/skills/registry.d.ts.map +1 -0
- package/dist/mcp/skills/registry.js +143 -0
- package/dist/mcp/skills/registry.js.map +1 -0
- package/dist/mcp/skills/types.d.ts +10 -0
- package/dist/mcp/skills/types.d.ts.map +1 -0
- package/dist/mcp/skills/types.js +3 -0
- package/dist/mcp/skills/types.js.map +1 -0
- package/dist/services/workflow-diff-engine.d.ts +1 -0
- package/dist/services/workflow-diff-engine.d.ts.map +1 -1
- package/dist/services/workflow-diff-engine.js +57 -55
- package/dist/services/workflow-diff-engine.js.map +1 -1
- package/dist/triggers/handlers/chat-handler.d.ts +2 -2
- package/dist/triggers/handlers/webhook-handler.d.ts +2 -2
- package/package.json +1 -1
package/dist/mcp/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/server.js
CHANGED
|
@@ -44,6 +44,7 @@ const fs_1 = require("fs");
|
|
|
44
44
|
const path_1 = __importDefault(require("path"));
|
|
45
45
|
const tools_1 = require("./tools");
|
|
46
46
|
const ui_1 = require("./ui");
|
|
47
|
+
const skills_1 = require("./skills");
|
|
47
48
|
const tools_n8n_manager_1 = require("./tools-n8n-manager");
|
|
48
49
|
const tools_n8n_friendly_1 = require("./tools-n8n-friendly");
|
|
49
50
|
const workflow_examples_1 = require("./workflow-examples");
|
|
@@ -161,6 +162,7 @@ class N8NDocumentationMCPServer {
|
|
|
161
162
|
},
|
|
162
163
|
});
|
|
163
164
|
ui_1.UIAppRegistry.load();
|
|
165
|
+
skills_1.SkillResourceRegistry.load();
|
|
164
166
|
this.setupHandlers();
|
|
165
167
|
}
|
|
166
168
|
async close() {
|
|
@@ -597,36 +599,55 @@ class N8NDocumentationMCPServer {
|
|
|
597
599
|
});
|
|
598
600
|
this.server.setRequestHandler(types_js_1.ListResourcesRequestSchema, async () => {
|
|
599
601
|
const apps = ui_1.UIAppRegistry.getAllApps();
|
|
602
|
+
const skills = skills_1.SkillResourceRegistry.getAll();
|
|
600
603
|
return {
|
|
601
|
-
resources:
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
604
|
+
resources: [
|
|
605
|
+
...apps
|
|
606
|
+
.filter(app => app.html !== null)
|
|
607
|
+
.map(app => ({
|
|
608
|
+
uri: app.config.uri,
|
|
609
|
+
name: app.config.displayName,
|
|
610
|
+
description: app.config.description,
|
|
611
|
+
mimeType: app.config.mimeType,
|
|
612
|
+
})),
|
|
613
|
+
...skills.map(skill => ({
|
|
614
|
+
uri: skill.uri,
|
|
615
|
+
name: skill.name,
|
|
616
|
+
description: skill.description,
|
|
617
|
+
mimeType: skill.mimeType,
|
|
618
|
+
})),
|
|
619
|
+
],
|
|
609
620
|
};
|
|
610
621
|
});
|
|
622
|
+
this.server.setRequestHandler(types_js_1.ListResourceTemplatesRequestSchema, async () => ({
|
|
623
|
+
resourceTemplates: skills_1.SkillResourceRegistry.getTemplates(),
|
|
624
|
+
}));
|
|
611
625
|
this.server.setRequestHandler(types_js_1.ReadResourceRequestSchema, async (request) => {
|
|
612
626
|
const uri = request.params.uri;
|
|
613
|
-
const
|
|
614
|
-
if (
|
|
615
|
-
|
|
627
|
+
const uiMatch = uri.match(/^ui:\/\/n8n-mcp\/(.+)$/);
|
|
628
|
+
if (uiMatch) {
|
|
629
|
+
const app = ui_1.UIAppRegistry.getAppById(uiMatch[1]);
|
|
630
|
+
if (!app || !app.html) {
|
|
631
|
+
throw new Error(`UI app not found or not built: ${uiMatch[1]}`);
|
|
632
|
+
}
|
|
633
|
+
return {
|
|
634
|
+
contents: [
|
|
635
|
+
{ uri: app.config.uri, mimeType: app.config.mimeType, text: app.html },
|
|
636
|
+
],
|
|
637
|
+
};
|
|
616
638
|
}
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
639
|
+
if (uri.startsWith('skill://n8n-mcp/')) {
|
|
640
|
+
const skill = skills_1.SkillResourceRegistry.getByUri(uri);
|
|
641
|
+
if (!skill) {
|
|
642
|
+
throw new Error(`Skill resource not found: ${uri}`);
|
|
643
|
+
}
|
|
644
|
+
return {
|
|
645
|
+
contents: [
|
|
646
|
+
{ uri: skill.uri, mimeType: skill.mimeType, text: skill.content },
|
|
647
|
+
],
|
|
648
|
+
};
|
|
620
649
|
}
|
|
621
|
-
|
|
622
|
-
contents: [
|
|
623
|
-
{
|
|
624
|
-
uri: app.config.uri,
|
|
625
|
-
mimeType: app.config.mimeType,
|
|
626
|
-
text: app.html,
|
|
627
|
-
},
|
|
628
|
-
],
|
|
629
|
-
};
|
|
650
|
+
throw new Error(`Unknown resource URI: ${uri}`);
|
|
630
651
|
});
|
|
631
652
|
}
|
|
632
653
|
sanitizeValidationResult(result, toolName) {
|