n8n-editor-ui
Version:
Workflow Editor UI for n8n
28 lines (27 loc) • 1.07 kB
JavaScript
import { O as useTelemetry } from "./builder.store-sBTWwxRU.js";
import { Zn as SCHEDULE_TRIGGER_NODE_TYPE, hr as WEBHOOK_NODE_TYPE, un as FORM_TRIGGER_NODE_TYPE, zt as CHAT_TRIGGER_NODE_TYPE } from "./constants-BbpucWL4.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 };