n8n-editor-ui
Version:
Workflow Editor UI for n8n
28 lines (27 loc) • 1.07 kB
JavaScript
import { t as useTelemetry } from "./useTelemetry-C797TaYa.js";
import { Bt as CHAT_TRIGGER_NODE_TYPE, Qn as SCHEDULE_TRIGGER_NODE_TYPE, dn as FORM_TRIGGER_NODE_TYPE, vr as WEBHOOK_NODE_TYPE } from "./constants-CX1ozgFz.js";
function useMcp() {
const telemetry = useTelemetry();
const mcpTriggerMap = {
[SCHEDULE_TRIGGER_NODE_TYPE]: "Schedule Trigger",
[WEBHOOK_NODE_TYPE]: "Webhook Trigger",
[FORM_TRIGGER_NODE_TYPE]: "Form Trigger",
[CHAT_TRIGGER_NODE_TYPE]: "Chat Trigger"
};
const isEligibleForMcpAccess = (workflow) => {
return workflow.nodes.some((node) => Object.keys(mcpTriggerMap).includes(node.type) && node.disabled !== true);
};
const trackMcpAccessEnabledForWorkflow = (workflowId) => {
telemetry.track("User gave MCP access to workflow", { workflow_id: workflowId });
};
const trackUserToggledMcpAccess = (enabled) => {
telemetry.track("User toggled MCP access", { state: enabled });
};
return {
isEligibleForMcpAccess,
trackMcpAccessEnabledForWorkflow,
trackUserToggledMcpAccess,
mcpTriggerMap
};
}
export { useMcp as t };