@n8n/n8n-nodes-langchain 2.14.0 → 2.15.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/node-definitions/.nodes-hash +1 -1
- package/dist/nodes/agents/Agent/agents/SqlAgent/execute.d.ts +1 -0
- package/dist/nodes/agents/Agent/agents/SqlAgent/execute.js +38 -0
- package/dist/nodes/agents/Agent/agents/SqlAgent/execute.js.map +1 -1
- package/dist/nodes/chains/ChainLLM/methods/chainExecutor.js +1 -4
- package/dist/nodes/chains/ChainLLM/methods/chainExecutor.js.map +1 -1
- package/dist/nodes/llms/LMChatOpenAi/methods/loadModels.js +6 -4
- package/dist/nodes/llms/LMChatOpenAi/methods/loadModels.js.map +1 -1
- package/dist/nodes/mcp/shared/utils.js +41 -30
- package/dist/nodes/mcp/shared/utils.js.map +1 -1
- package/dist/nodes/trigger/ChatTrigger/templates.d.ts +1 -0
- package/dist/nodes/trigger/ChatTrigger/templates.js +6 -5
- package/dist/nodes/trigger/ChatTrigger/templates.js.map +1 -1
- package/dist/typecheck.tsbuildinfo +1 -1
- package/dist/utils/output_parsers/N8nStructuredOutputParser.js +13 -8
- package/dist/utils/output_parsers/N8nStructuredOutputParser.js.map +1 -1
- package/package.json +11 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
450ed92fcacd9529a36bd873c7fb5742c384869cba2ed60ac3bed3f21e59f0f1
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.detectBlockedSqlKeyword = detectBlockedSqlKeyword;
|
|
3
4
|
exports.sqlAgentAgentExecute = sqlAgentAgentExecute;
|
|
5
|
+
const tools_1 = require("@langchain/core/tools");
|
|
4
6
|
const sql_1 = require("@langchain/classic/agents/toolkits/sql");
|
|
5
7
|
const sql_db_1 = require("@langchain/classic/sql_db");
|
|
6
8
|
const n8n_workflow_1 = require("n8n-workflow");
|
|
@@ -14,6 +16,27 @@ const parseTablesString = (tablesString) => tablesString
|
|
|
14
16
|
.split(',')
|
|
15
17
|
.map((table) => table.trim())
|
|
16
18
|
.filter((table) => table.length > 0);
|
|
19
|
+
const BLOCKED_SQL_OPERATIONS = new Set([
|
|
20
|
+
'INSERT',
|
|
21
|
+
'UPDATE',
|
|
22
|
+
'DELETE',
|
|
23
|
+
'DROP',
|
|
24
|
+
'TRUNCATE',
|
|
25
|
+
'ALTER',
|
|
26
|
+
'CREATE',
|
|
27
|
+
'REPLACE',
|
|
28
|
+
'MERGE',
|
|
29
|
+
]);
|
|
30
|
+
function detectBlockedSqlKeyword(sql) {
|
|
31
|
+
const stripped = sql
|
|
32
|
+
.replace(/--[^\n]*/g, '')
|
|
33
|
+
.replace(/\/\*[\s\S]*?\*\//g, '')
|
|
34
|
+
.replace(/'(?:[^'\\]|\\.)*'/g, "''")
|
|
35
|
+
.replace(/"(?:[^"\\]|\\.)*"/g, '""');
|
|
36
|
+
const pattern = new RegExp(`\\b(${[...BLOCKED_SQL_OPERATIONS].join('|')})\\b`, 'i');
|
|
37
|
+
const match = stripped.match(pattern);
|
|
38
|
+
return match ? match[1].toUpperCase() : undefined;
|
|
39
|
+
}
|
|
17
40
|
async function sqlAgentAgentExecute() {
|
|
18
41
|
this.logger.debug('Executing SQL Agent');
|
|
19
42
|
const model = (await this.getInputConnectionData(n8n_workflow_1.NodeConnectionTypes.AiLanguageModel, 0));
|
|
@@ -73,6 +96,21 @@ async function sqlAgentAgentExecute() {
|
|
|
73
96
|
});
|
|
74
97
|
const toolkit = new sql_1.SqlToolkit(dbInstance, model);
|
|
75
98
|
const agentExecutor = (0, sql_1.createSqlAgent)(model, toolkit, agentOptions);
|
|
99
|
+
agentExecutor.tools = agentExecutor.tools.map((tool) => {
|
|
100
|
+
if (tool.name !== 'query-sql')
|
|
101
|
+
return tool;
|
|
102
|
+
return new tools_1.DynamicTool({
|
|
103
|
+
name: tool.name,
|
|
104
|
+
description: tool.description,
|
|
105
|
+
func: async (sqlInput) => {
|
|
106
|
+
const blockedKeyword = detectBlockedSqlKeyword(sqlInput);
|
|
107
|
+
if (blockedKeyword) {
|
|
108
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), `SQL operation "${blockedKeyword}" is not allowed`, { itemIndex: i });
|
|
109
|
+
}
|
|
110
|
+
return String(await tool.invoke(sqlInput));
|
|
111
|
+
},
|
|
112
|
+
});
|
|
113
|
+
});
|
|
76
114
|
const memory = (await this.getInputConnectionData(n8n_workflow_1.NodeConnectionTypes.AiMemory, 0));
|
|
77
115
|
agentExecutor.memory = memory;
|
|
78
116
|
let chatHistory = '';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../../../../nodes/agents/Agent/agents/SqlAgent/execute.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../../../../nodes/agents/Agent/agents/SqlAgent/execute.ts"],"names":[],"mappings":"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"}
|
|
@@ -56,10 +56,7 @@ function getOutputParserForLLM(llm) {
|
|
|
56
56
|
async function executeSimpleChain({ context, llm, query, prompt, }) {
|
|
57
57
|
const outputParser = getOutputParserForLLM(llm);
|
|
58
58
|
const chain = prompt.pipe(llm).pipe(outputParser).withConfig((0, tracing_1.getTracingConfig)(context));
|
|
59
|
-
const response = await chain.invoke({
|
|
60
|
-
query,
|
|
61
|
-
signal: context.getExecutionCancelSignal(),
|
|
62
|
-
});
|
|
59
|
+
const response = await chain.invoke({ query }, { signal: context.getExecutionCancelSignal() });
|
|
63
60
|
return [response];
|
|
64
61
|
}
|
|
65
62
|
function withBuiltInTools(llm) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chainExecutor.js","sourceRoot":"","sources":["../../../../../nodes/chains/ChainLLM/methods/chainExecutor.ts"],"names":[],"mappings":";;;AAiCA,8DASC;AAED,sDAUC;AAKD,8CAIC;AAKD,sDAqBC;
|
|
1
|
+
{"version":3,"file":"chainExecutor.js","sourceRoot":"","sources":["../../../../../nodes/chains/ChainLLM/methods/chainExecutor.ts"],"names":[],"mappings":";;;AAiCA,8DASC;AAED,sDAUC;AAKD,8CAIC;AAKD,sDAqBC;AAkDD,oCA4DC;AAnMD,mEAAsF;AAKtF,oDAAmD;AACnD,4CAAkD;AAElD,+CAA0E;AAG1E,MAAa,qBAEX,SAAQ,iCAAmB;IAC5B,KAAK,CAAC,KAAK,CAAC,IAAY;QAEvB,IAAI,CAAC;YACJ,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,YAAiB,CAAC;QAC1B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAEZ,OAAO,MAAM,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;IACF,CAAC;CACD;AAbD,sDAaC;AAKD,SAAgB,yBAAyB,CACxC,GAAsB;IAEtB,OAAO,CACN,aAAa,IAAI,GAAG;QACpB,CAAC,CAAC,GAAG,CAAC,WAAW;QACjB,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ;QACnC,iBAAiB,IAAI,GAAG,CAAC,WAAW,CACpC,CAAC;AACH,CAAC;AAED,SAAgB,qBAAqB,CACpC,GAAsB;IAEtB,OAAO,CACN,WAAW,IAAI,GAAG;QAClB,kBAAkB,IAAI,GAAG,CAAC,SAAS;QACnC,OAAO,GAAG,CAAC,SAAS,CAAC,gBAAgB,KAAK,QAAQ;QAClD,UAAU,IAAI,GAAG,CAAC,SAAS,CAAC,gBAAgB;QAC5C,GAAG,CAAC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAC1D,CAAC;AACH,CAAC;AAKD,SAAgB,iBAAiB,CAChC,GAAsB;IAEtB,OAAO,QAAQ,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,WAAW,CAAC;AAC7D,CAAC;AAKD,SAAgB,qBAAqB,CACpC,GAAsC;IAEtC,IAAI,yBAAyB,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,WAAW,EAAE,eAAe,EAAE,IAAI,KAAK,aAAa,EAAE,CAAC;QAChG,OAAO,IAAI,qBAAqB,EAAE,CAAC;IACpC,CAAC;IAED,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QACrD,OAAO,IAAI,qBAAqB,EAAE,CAAC;IACpC,CAAC;IAED,IAAI,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC;QAChC,OAAO,IAAI,qBAAqB,EAAE,CAAC;IACpC,CAAC;IAGD,IAAI,GAAG,CAAC,QAAQ,EAAE,aAAa,KAAK,MAAM,EAAE,CAAC;QAC5C,OAAO,IAAI,qBAAqB,EAAE,CAAC;IACpC,CAAC;IAED,OAAO,IAAI,mCAAkB,EAAE,CAAC;AACjC,CAAC;AAKD,KAAK,UAAU,kBAAkB,CAAC,EACjC,OAAO,EACP,GAAG,EACH,KAAK,EACL,MAAM,GAMN;IACA,MAAM,YAAY,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;IAEhD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,UAAU,CAAC,IAAA,0BAAgB,EAAC,OAAO,CAAC,CAAC,CAAC;IAGxF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IAG/F,OAAO,CAAC,QAAQ,CAAC,CAAC;AACnB,CAAC;AAGD,SAAS,gBAAgB,CAAC,GAAsC;IAC/D,MAAM,UAAU,GAAI,GAAG,CAAC,QAAQ,EAAE,KAAgB,IAAI,EAAE,CAAC;IACzD,IAAI,UAAU,CAAC,MAAM,IAAI,IAAA,6BAAc,EAAC,GAAG,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;QAC/D,OAAO,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,SAAS,UAAU,CAClB,GAAsC,EACtC,WAAsD;IAEtD,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACtC,IAAI,WAAW,EAAE,CAAC;QACjB,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC;AAKM,KAAK,UAAU,YAAY,CAAC,EAClC,OAAO,EACP,SAAS,EACT,KAAK,EACL,GAAG,EACH,YAAY,EACZ,QAAQ,EACR,WAAW,GACW;IACtB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,WAAW,CAAC;IAC9C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,WAAW,CAAsC,CAAC;IAEhF,IAAI,CAAC,YAAY,EAAE,CAAC;QACnB,MAAM,cAAc,GAAG,MAAM,IAAA,kCAAoB,EAAC;YACjD,OAAO;YACP,SAAS;YACT,GAAG;YACH,QAAQ;YACR,KAAK;SACL,CAAC,CAAC;QAEH,OAAO,MAAM,kBAAkB,CAAC;YAC/B,OAAO;YACP,GAAG,EAAE,KAAK;YACV,KAAK;YACL,MAAM,EAAE,cAAc;SACtB,CAAC,CAAC;IACJ,CAAC;IAED,MAAM,kBAAkB,GAAG,YAAY,CAAC,qBAAqB,EAAE,CAAC;IAGhE,MAAM,sBAAsB,GAAG,MAAM,IAAA,kCAAoB,EAAC;QACzD,OAAO;QACP,SAAS;QACT,GAAG;QACH,QAAQ;QACR,kBAAkB;QAClB,KAAK;KACL,CAAC,CAAC;IAEH,IAAI,KAAkC,CAAC;IACvC,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC;QAEpB,KAAK,GAAG,sBAAsB;aAC5B,IAAI,CAAC,KAAK,CAAC;aACX,IAAI,CAAC,IAAA,iCAAmB,EAAC,YAAY,CAAC,CAAC;aACvC,UAAU,CAAC,IAAA,0BAAgB,EAAC,OAAO,CAAC,CAAC,CAAC;IACzC,CAAC;SAAM,CAAC;QACP,KAAK,GAAG,sBAAsB;aAC5B,IAAI,CAAC,KAAK,CAAC;aACX,IAAI,CAAC,YAAY,CAAC;aAClB,UAAU,CAAC,IAAA,0BAAgB,EAAC,OAAO,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IAI/F,OAAO,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AACxD,CAAC"}
|
|
@@ -4,17 +4,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.searchModels = searchModels;
|
|
7
|
-
const openai_1 = __importDefault(require("openai"));
|
|
8
|
-
const modelFiltering_1 = require("../../../vendors/OpenAi/helpers/modelFiltering");
|
|
9
7
|
const ai_utilities_1 = require("@n8n/ai-utilities");
|
|
10
|
-
const di_1 = require("@n8n/di");
|
|
11
8
|
const config_1 = require("@n8n/config");
|
|
9
|
+
const di_1 = require("@n8n/di");
|
|
10
|
+
const openai_1 = __importDefault(require("openai"));
|
|
11
|
+
const helpers_1 = require("../../../../utils/helpers");
|
|
12
|
+
const modelFiltering_1 = require("../../../vendors/OpenAi/helpers/modelFiltering");
|
|
12
13
|
async function searchModels(filter) {
|
|
13
14
|
const credentials = await this.getCredentials('openAiApi');
|
|
14
15
|
const baseURL = this.getNodeParameter('options.baseURL', '') ||
|
|
15
16
|
credentials.url ||
|
|
16
17
|
'https://api.openai.com/v1';
|
|
17
|
-
const { openAiDefaultHeaders
|
|
18
|
+
const { openAiDefaultHeaders } = di_1.Container.get(config_1.AiConfig);
|
|
19
|
+
const defaultHeaders = (0, helpers_1.mergeCustomHeaders)(credentials, openAiDefaultHeaders ?? {});
|
|
18
20
|
const openai = new openai_1.default({
|
|
19
21
|
baseURL,
|
|
20
22
|
apiKey: credentials.apiKey,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loadModels.js","sourceRoot":"","sources":["../../../../../nodes/llms/LMChatOpenAi/methods/loadModels.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"loadModels.js","sourceRoot":"","sources":["../../../../../nodes/llms/LMChatOpenAi/methods/loadModels.ts"],"names":[],"mappings":";;;;;AASA,oCAyCC;AAlDD,oDAAkD;AAClD,wCAAuC;AACvC,gCAAoC;AAEpC,oDAA4B;AAE5B,uDAA+D;AAC/D,mFAAoF;AAE7E,KAAK,UAAU,YAAY,CAEjC,MAAe;IAEf,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IAC3D,MAAM,OAAO,GACX,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,EAAE,CAAY;QACvD,WAAW,CAAC,GAAc;QAC3B,2BAA2B,CAAC;IAC7B,MAAM,EAAE,oBAAoB,EAAE,GAAG,cAAS,CAAC,GAAG,CAAC,iBAAQ,CAAC,CAAC;IACzD,MAAM,cAAc,GAAG,IAAA,4BAAkB,EAAC,WAAW,EAAE,oBAAoB,IAAI,EAAE,CAAC,CAAC;IAEnF,MAAM,MAAM,GAAG,IAAI,gBAAM,CAAC;QACzB,OAAO;QACP,MAAM,EAAE,WAAW,CAAC,MAAgB;QACpC,YAAY,EAAE;YACb,UAAU,EAAE,IAAA,4BAAa,EAAC,OAAO,CAAC;SAClC;QACD,cAAc;KACd,CAAC,CAAC;IACH,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAEzD,MAAM,GAAG,GAAG,OAAO,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEjG,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAqB,EAAE,EAAE;QAC9D,MAAM,YAAY,GAAG,IAAA,mCAAkB,EAAC,KAAK,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QAE/D,IAAI,CAAC,MAAM;YAAE,OAAO,YAAY,CAAC;QAEjC,OAAO,YAAY,IAAI,KAAK,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAExD,OAAO;QACN,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,KAAqB,EAAE,EAAE,CAAC,CAAC;YACvD,IAAI,EAAE,KAAK,CAAC,EAAE;YACd,KAAK,EAAE,KAAK,CAAC,EAAE;SACf,CAAC,CAAC;KACH,CAAC;AACH,CAAC"}
|
|
@@ -71,29 +71,17 @@ async function connectMcpClient({ headers, serverTransport, endpointUrl, name, v
|
|
|
71
71
|
if (!endpoint.ok) {
|
|
72
72
|
return (0, n8n_workflow_1.createResultError)({ type: 'invalid_url', error: endpoint.error });
|
|
73
73
|
}
|
|
74
|
+
const authFetch = createAuthFetch(headers, onUnauthorized);
|
|
74
75
|
const client = new index_js_1.Client({ name, version: version.toString() }, { capabilities: {} });
|
|
75
76
|
if (serverTransport === 'httpStreamable') {
|
|
76
77
|
try {
|
|
77
78
|
const transport = new streamableHttp_js_1.StreamableHTTPClientTransport(endpoint.result, {
|
|
78
|
-
|
|
79
|
-
fetch: ai_utilities_1.proxyFetch,
|
|
79
|
+
fetch: authFetch,
|
|
80
80
|
});
|
|
81
81
|
await client.connect(transport);
|
|
82
82
|
return (0, n8n_workflow_1.createResultOk)(client);
|
|
83
83
|
}
|
|
84
84
|
catch (error) {
|
|
85
|
-
if (onUnauthorized && isUnauthorizedError(error)) {
|
|
86
|
-
const newHeaders = await onUnauthorized(headers);
|
|
87
|
-
if (newHeaders) {
|
|
88
|
-
return await connectMcpClient({
|
|
89
|
-
headers: newHeaders,
|
|
90
|
-
serverTransport,
|
|
91
|
-
endpointUrl,
|
|
92
|
-
name,
|
|
93
|
-
version,
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
85
|
if (isUnauthorizedError(error) || isForbiddenError(error)) {
|
|
98
86
|
return (0, n8n_workflow_1.createResultError)({ type: 'auth', error: error });
|
|
99
87
|
}
|
|
@@ -105,33 +93,20 @@ async function connectMcpClient({ headers, serverTransport, endpointUrl, name, v
|
|
|
105
93
|
try {
|
|
106
94
|
const sseTransport = new sse_js_1.SSEClientTransport(endpoint.result, {
|
|
107
95
|
eventSourceInit: {
|
|
108
|
-
fetch: async (url, init) => await (
|
|
96
|
+
fetch: async (url, init) => await authFetch(url, {
|
|
109
97
|
...init,
|
|
110
98
|
headers: {
|
|
111
|
-
...headers,
|
|
99
|
+
...headersToRecord(init?.headers),
|
|
112
100
|
Accept: 'text/event-stream',
|
|
113
101
|
},
|
|
114
102
|
}),
|
|
115
103
|
},
|
|
116
|
-
fetch:
|
|
117
|
-
requestInit: { headers },
|
|
104
|
+
fetch: authFetch,
|
|
118
105
|
});
|
|
119
106
|
await client.connect(sseTransport);
|
|
120
107
|
return (0, n8n_workflow_1.createResultOk)(client);
|
|
121
108
|
}
|
|
122
109
|
catch (error) {
|
|
123
|
-
if (onUnauthorized && isUnauthorizedError(error)) {
|
|
124
|
-
const newHeaders = await onUnauthorized(headers);
|
|
125
|
-
if (newHeaders) {
|
|
126
|
-
return await connectMcpClient({
|
|
127
|
-
headers: newHeaders,
|
|
128
|
-
serverTransport,
|
|
129
|
-
endpointUrl,
|
|
130
|
-
name,
|
|
131
|
-
version,
|
|
132
|
-
});
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
110
|
if (isUnauthorizedError(error) || isForbiddenError(error)) {
|
|
136
111
|
return (0, n8n_workflow_1.createResultError)({ type: 'auth', error: error });
|
|
137
112
|
}
|
|
@@ -140,6 +115,42 @@ async function connectMcpClient({ headers, serverTransport, endpointUrl, name, v
|
|
|
140
115
|
}
|
|
141
116
|
}
|
|
142
117
|
}
|
|
118
|
+
function headersToRecord(headers) {
|
|
119
|
+
if (!headers)
|
|
120
|
+
return {};
|
|
121
|
+
if (headers instanceof Headers)
|
|
122
|
+
return Object.fromEntries(headers.entries());
|
|
123
|
+
if (Array.isArray(headers))
|
|
124
|
+
return Object.fromEntries(headers);
|
|
125
|
+
return headers;
|
|
126
|
+
}
|
|
127
|
+
function createAuthFetch(initialHeaders, onUnauthorized) {
|
|
128
|
+
let headers = initialHeaders;
|
|
129
|
+
return async (input, init) => {
|
|
130
|
+
const response = await (0, ai_utilities_1.proxyFetch)(input, {
|
|
131
|
+
...init,
|
|
132
|
+
headers: {
|
|
133
|
+
...headersToRecord(init?.headers),
|
|
134
|
+
...headers,
|
|
135
|
+
},
|
|
136
|
+
});
|
|
137
|
+
if (response.status !== 401 || !onUnauthorized) {
|
|
138
|
+
return response;
|
|
139
|
+
}
|
|
140
|
+
const refreshedHeaders = await onUnauthorized(headers);
|
|
141
|
+
if (!refreshedHeaders) {
|
|
142
|
+
return response;
|
|
143
|
+
}
|
|
144
|
+
headers = refreshedHeaders;
|
|
145
|
+
return await (0, ai_utilities_1.proxyFetch)(input, {
|
|
146
|
+
...init,
|
|
147
|
+
headers: {
|
|
148
|
+
...headersToRecord(init?.headers),
|
|
149
|
+
...headers,
|
|
150
|
+
},
|
|
151
|
+
});
|
|
152
|
+
};
|
|
153
|
+
}
|
|
143
154
|
async function getAuthHeaders(ctx, authentication) {
|
|
144
155
|
switch (authentication) {
|
|
145
156
|
case 'headerAuth': {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../nodes/mcp/shared/utils.ts"],"names":[],"mappings":";;AAiBA,kCAQC;AAiDD,0DAqBC;AAED,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../nodes/mcp/shared/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { AuthenticationChatOption, LoadPreviousSessionChatOption } from './types';
|
|
2
2
|
export declare function getSanitizedInitialMessages(initialMessages: string): string[];
|
|
3
3
|
export declare function getSanitizedI18nConfig(config: Record<string, string>): Record<string, string>;
|
|
4
|
+
export declare function getSanitizedCustomCss(customCss: string): string;
|
|
4
5
|
export declare function createPage({ instanceId, webhookUrl, showWelcomeScreen, loadPreviousSession, i18n: { en }, initialMessages, authentication, allowFileUploads, allowedFilesMimeTypes, customCss, enableStreaming, }: {
|
|
5
6
|
instanceId: string;
|
|
6
7
|
webhookUrl?: string;
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.getSanitizedInitialMessages = getSanitizedInitialMessages;
|
|
7
7
|
exports.getSanitizedI18nConfig = getSanitizedI18nConfig;
|
|
8
|
+
exports.getSanitizedCustomCss = getSanitizedCustomCss;
|
|
8
9
|
exports.createPage = createPage;
|
|
9
10
|
const sanitize_html_1 = __importDefault(require("sanitize-html"));
|
|
10
11
|
function sanitizeUserInput(input) {
|
|
@@ -31,6 +32,9 @@ function getSanitizedI18nConfig(config) {
|
|
|
31
32
|
}
|
|
32
33
|
return sanitized;
|
|
33
34
|
}
|
|
35
|
+
function getSanitizedCustomCss(customCss) {
|
|
36
|
+
return customCss.replace(/<\/style/gi, '');
|
|
37
|
+
}
|
|
34
38
|
function createPage({ instanceId, webhookUrl, showWelcomeScreen, loadPreviousSession, i18n: { en }, initialMessages, authentication, allowFileUploads, allowedFilesMimeTypes, customCss, enableStreaming, }) {
|
|
35
39
|
const validAuthenticationOptions = [
|
|
36
40
|
'none',
|
|
@@ -48,10 +52,7 @@ function createPage({ instanceId, webhookUrl, showWelcomeScreen, loadPreviousSes
|
|
|
48
52
|
const sanitizedShowWelcomeScreen = !!showWelcomeScreen;
|
|
49
53
|
const sanitizedAllowFileUploads = !!allowFileUploads;
|
|
50
54
|
const sanitizedAllowedFilesMimeTypes = sanitizeUserInput(allowedFilesMimeTypes?.toString() ?? '');
|
|
51
|
-
const sanitizedCustomCss = (
|
|
52
|
-
allowedTags: ['style'],
|
|
53
|
-
allowedAttributes: false,
|
|
54
|
-
});
|
|
55
|
+
const sanitizedCustomCss = getSanitizedCustomCss(customCss?.toString() ?? '');
|
|
55
56
|
const sanitizedLoadPreviousSession = validLoadPreviousSessionOptions.includes(loadPreviousSession)
|
|
56
57
|
? loadPreviousSession
|
|
57
58
|
: 'notSupported';
|
|
@@ -73,7 +74,7 @@ function createPage({ instanceId, webhookUrl, showWelcomeScreen, loadPreviousSes
|
|
|
73
74
|
height: 100%;
|
|
74
75
|
}
|
|
75
76
|
</style>
|
|
76
|
-
|
|
77
|
+
<style>${sanitizedCustomCss}</style>
|
|
77
78
|
</head>
|
|
78
79
|
<body>
|
|
79
80
|
<script type="module">
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../../../nodes/trigger/ChatTrigger/templates.ts"],"names":[],"mappings":";;;;;AAiBA,kEAOC;AAED,wDAQC;AACD,
|
|
1
|
+
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../../../nodes/trigger/ChatTrigger/templates.ts"],"names":[],"mappings":"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"}
|