@elastic.io/mcp 1.0.1-dev2 → 1.0.1-dev21

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.
Files changed (108) hide show
  1. package/README.md +94 -89
  2. package/dist/api/client.d.ts.map +1 -1
  3. package/dist/api/client.js +8 -3
  4. package/dist/api/client.js.map +1 -1
  5. package/dist/api/jsonapi.d.ts +2 -9
  6. package/dist/api/jsonapi.d.ts.map +1 -1
  7. package/dist/api/jsonapi.js +1 -14
  8. package/dist/api/jsonapi.js.map +1 -1
  9. package/dist/api/logger.d.ts +0 -1
  10. package/dist/api/logger.d.ts.map +1 -1
  11. package/dist/api/logger.js +2 -5
  12. package/dist/api/logger.js.map +1 -1
  13. package/dist/api/samples.d.ts +0 -6
  14. package/dist/api/samples.d.ts.map +1 -1
  15. package/dist/api/samples.js +8 -8
  16. package/dist/api/samples.js.map +1 -1
  17. package/dist/api/verification.d.ts +6 -0
  18. package/dist/api/verification.d.ts.map +1 -0
  19. package/dist/api/verification.js +71 -0
  20. package/dist/api/verification.js.map +1 -0
  21. package/dist/cli.d.ts +3 -0
  22. package/dist/cli.d.ts.map +1 -0
  23. package/dist/cli.js +9 -0
  24. package/dist/cli.js.map +1 -0
  25. package/dist/config.js.map +1 -1
  26. package/dist/index.js +8 -11
  27. package/dist/index.js.map +1 -1
  28. package/dist/paths.d.ts +0 -1
  29. package/dist/paths.d.ts.map +1 -1
  30. package/dist/paths.js +1 -1
  31. package/dist/paths.js.map +1 -1
  32. package/dist/server.d.ts.map +1 -1
  33. package/dist/server.js +24 -0
  34. package/dist/server.js.map +1 -1
  35. package/dist/setup.d.ts.map +1 -1
  36. package/dist/setup.js +220 -21
  37. package/dist/setup.js.map +1 -1
  38. package/dist/tools/confirmation.d.ts +0 -4
  39. package/dist/tools/confirmation.d.ts.map +1 -1
  40. package/dist/tools/confirmation.js +1 -1
  41. package/dist/tools/confirmation.js.map +1 -1
  42. package/dist/tools/constants.d.ts +6 -9
  43. package/dist/tools/constants.d.ts.map +1 -1
  44. package/dist/tools/constants.js +48 -41
  45. package/dist/tools/constants.js.map +1 -1
  46. package/dist/tools/definitions.d.ts.map +1 -1
  47. package/dist/tools/definitions.js +35 -3
  48. package/dist/tools/definitions.js.map +1 -1
  49. package/dist/tools/flow-build.d.ts +18 -0
  50. package/dist/tools/flow-build.d.ts.map +1 -0
  51. package/dist/tools/flow-build.js +295 -0
  52. package/dist/tools/flow-build.js.map +1 -0
  53. package/dist/tools/flow-evidence.d.ts +62 -0
  54. package/dist/tools/flow-evidence.d.ts.map +1 -0
  55. package/dist/tools/flow-evidence.js +128 -0
  56. package/dist/tools/flow-evidence.js.map +1 -0
  57. package/dist/tools/flow-state-machine.d.ts +69 -0
  58. package/dist/tools/flow-state-machine.d.ts.map +1 -0
  59. package/dist/tools/flow-state-machine.js +292 -0
  60. package/dist/tools/flow-state-machine.js.map +1 -0
  61. package/dist/tools/handlers/auth.d.ts.map +1 -1
  62. package/dist/tools/handlers/auth.js +18 -148
  63. package/dist/tools/handlers/auth.js.map +1 -1
  64. package/dist/tools/handlers/component.d.ts.map +1 -1
  65. package/dist/tools/handlers/component.js +28 -8
  66. package/dist/tools/handlers/component.js.map +1 -1
  67. package/dist/tools/handlers/data-sample.d.ts.map +1 -1
  68. package/dist/tools/handlers/data-sample.js +37 -5
  69. package/dist/tools/handlers/data-sample.js.map +1 -1
  70. package/dist/tools/handlers/dynamic.d.ts.map +1 -1
  71. package/dist/tools/handlers/dynamic.js +43 -14
  72. package/dist/tools/handlers/dynamic.js.map +1 -1
  73. package/dist/tools/handlers/flow.d.ts.map +1 -1
  74. package/dist/tools/handlers/flow.js +147 -619
  75. package/dist/tools/handlers/flow.js.map +1 -1
  76. package/dist/tools/handlers/log.d.ts.map +1 -1
  77. package/dist/tools/handlers/log.js.map +1 -1
  78. package/dist/tools/handlers/raw.d.ts.map +1 -1
  79. package/dist/tools/handlers/raw.js +5 -2
  80. package/dist/tools/handlers/raw.js.map +1 -1
  81. package/dist/tools/handlers/search.d.ts.map +1 -1
  82. package/dist/tools/handlers/search.js +31 -0
  83. package/dist/tools/handlers/search.js.map +1 -1
  84. package/dist/tools/handlers/session.d.ts.map +1 -1
  85. package/dist/tools/handlers/session.js +8 -1
  86. package/dist/tools/handlers/session.js.map +1 -1
  87. package/dist/tools/handlers.d.ts.map +1 -1
  88. package/dist/tools/handlers.js +7 -2
  89. package/dist/tools/handlers.js.map +1 -1
  90. package/dist/tools/helpers.d.ts +0 -1
  91. package/dist/tools/helpers.d.ts.map +1 -1
  92. package/dist/tools/helpers.js +2 -2
  93. package/dist/tools/helpers.js.map +1 -1
  94. package/dist/tools/types.d.ts +8 -1
  95. package/dist/tools/types.d.ts.map +1 -1
  96. package/dist/tools/validation.d.ts +16 -5
  97. package/dist/tools/validation.d.ts.map +1 -1
  98. package/dist/tools/validation.js +220 -168
  99. package/dist/tools/validation.js.map +1 -1
  100. package/dist/vectorstore/qdrant.js +1 -1
  101. package/dist/vectorstore/qdrant.js.map +1 -1
  102. package/package.json +16 -4
  103. package/resources/docs/complex-flow-scenarios-2.md +120 -0
  104. package/resources/docs/flow-building-guide.md +18 -2
  105. package/resources/docs/flow-creation-stages.md +195 -0
  106. package/resources/docs/flow-state-machine-audit.md +162 -0
  107. package/resources/docs/rest-api-pagination.md +58 -0
  108. package/resources/docs/system-instructions.md +11 -1
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/tools/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/tools/validation.ts"],"names":[],"mappings":"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"}
@@ -39,7 +39,7 @@ export class QdrantVectorStore {
39
39
  });
40
40
  }
41
41
  catch (err) {
42
- logger.debug(`Payload index for "type" might already exist or failed: ${err}`);
42
+ logger.debug(`Payload index for "type" might already exist or failed: ${String(err)}`);
43
43
  }
44
44
  }
45
45
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"qdrant.js","sourceRoot":"","sources":["../../src/vectorstore/qdrant.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,MAAM,OAAO,iBAAiB;IACpB,MAAM,CAAe;IACrB,cAAc,GAAG,eAAe,CAAC;IAEzC;QACE,MAAM,GAAG,GAAG,MAAM,CAAC,cAAc,CAAC;QAClC,MAAM,MAAM,GAAG,MAAM,CAAC,iBAAiB,CAAC;QAExC,IAAI,CAAC,MAAM,GAAG,IAAI,YAAY,CAAC;YAC7B,GAAG;YACH,MAAM,EAAE,MAAM,IAAI,SAAS;SAC5B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,UAAkB,EAAE,iBAAyB,IAAI,CAAC,cAAc;QAC/E,IAAI,CAAC;YACH,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC/D,MAAM,MAAM,GAAG,mBAAmB,CAAC,WAAW,CAAC,IAAI,CACjD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CACjC,CAAC;YAEF,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,CAAC,IAAI,CAAC,+BAA+B,cAAc,UAAU,UAAU,gBAAgB,CAAC,CAAC;gBAC/F,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE;oBACjD,OAAO,EAAE;wBACP,IAAI,EAAE,UAAU;wBAChB,QAAQ,EAAE,QAAQ;qBACnB;iBACF,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,sBAAsB,cAAc,yBAAyB,CAAC,CAAC;YAC7E,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,sBAAsB,cAAc,mBAAmB,CAAC,CAAC;YACvE,CAAC;YAED,mFAAmF;YACnF,IAAI,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,oDAAoD,cAAc,MAAM,CAAC,CAAC;gBACtF,MAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,cAAc,EAAE;oBACnD,UAAU,EAAE,MAAM;oBAClB,YAAY,EAAE,SAAS;oBACvB,IAAI,EAAE,IAAI;iBACX,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAC,2DAA2D,GAAG,EAAE,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,2CAA2C,cAAc,IAAI,EAAE,KAAK,CAAC,CAAC;YACnF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,iBAAyB,IAAI,CAAC,cAAc;QACtD,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,8BAA8B,cAAc,MAAM,CAAC,CAAC;YAChE,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;YACnD,MAAM,CAAC,IAAI,CAAC,sBAAsB,cAAc,gCAAgC,CAAC,CAAC;QACpF,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBAC7E,MAAM,CAAC,IAAI,CAAC,eAAe,cAAc,qCAAqC,CAAC,CAAC;YAClF,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,KAAK,CAAC,sCAAsC,cAAc,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC9E,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAA0B,EAAE,iBAAyB,IAAI,CAAC,cAAc;QACnF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE;gBACvC,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACzB,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,OAAO,EAAE,CAAC,CAAC,OAAO;iBACnB,CAAC,CAAC;aACJ,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,mDAAmD,cAAc,IAAI,EAAE,KAAK,CAAC,CAAC;YAC3F,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CACV,WAAqB,EACrB,KAAa,EACb,MAAY,EACZ,iBAAyB,IAAI,CAAC,cAAc;QAE5C,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,kCAAkC,cAAc,oBAAoB,WAAW,CAAC,MAAM,aAAa,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/K,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE;gBACxD,MAAM,EAAE,WAAW;gBACnB,KAAK;gBACL,MAAM,EAAE,MAAM,IAAI,SAAS;gBAC3B,YAAY,EAAE,IAAI;aACnB,CAAC,CAAC;YAEH,MAAM,CAAC,IAAI,CAAC,8BAA8B,QAAQ,CAAC,MAAM,WAAW,CAAC,CAAC;YACtE,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBAC9B,MAAM,OAAO,GAAI,KAAK,CAAC,OAA+B,IAAI,EAAE,CAAC;gBAC7D,MAAM,CAAC,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,OAAO,CAAC,IAAI,IAAI,KAAK,cAAc,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK,IAAI,KAAK,EAAE,CAAC,CAAC;YAC9J,CAAC,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC9B,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,OAAO,EAAG,KAAK,CAAC,OAA+B,IAAI,EAAE;aACtD,CAAC,CAAC,CAAC;QACN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,8CAA8C,cAAc,IAAI,EAAE,KAAK,CAAC,CAAC;YACtF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"qdrant.js","sourceRoot":"","sources":["../../src/vectorstore/qdrant.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@elastic.io/mcp",
3
- "version": "1.0.1-dev2",
3
+ "version": "1.0.1-dev21",
4
4
  "description": "elastic.io Model Context Protocol (MCP) Server",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
7
- "elasticio-mcp-server": "dist/index.js"
7
+ "mcp": "dist/cli.js"
8
8
  },
9
9
  "type": "module",
10
10
  "files": [
@@ -15,14 +15,18 @@
15
15
  "LICENSE"
16
16
  ],
17
17
  "engines": {
18
- "node": ">=18"
18
+ "node": ">=22"
19
19
  },
20
20
  "scripts": {
21
21
  "prepublishOnly": "npm run build",
22
22
  "build": "tsc",
23
23
  "start": "node dist/index.js",
24
24
  "dev": "tsc -w",
25
- "test": "vitest run"
25
+ "test": "vitest run",
26
+ "lint": "eslint src/",
27
+ "lint:fix": "eslint src/ --fix",
28
+ "knip": "knip",
29
+ "dead-code": "ts-prune --project tsconfig.json"
26
30
  },
27
31
  "keywords": [
28
32
  "mcp",
@@ -36,15 +40,23 @@
36
40
  "@google/genai": "^2.8.0",
37
41
  "@modelcontextprotocol/sdk": "^1.0.1",
38
42
  "@qdrant/js-client-rest": "^1.18.0",
43
+ "ajv": "^8.20.0",
39
44
  "axios": "^1.7.2",
40
45
  "dotenv": "^16.4.5",
41
46
  "express": "^4.19.2",
47
+ "jsonata": "^2.1.0",
42
48
  "kitsu-core": "^10.0.0"
43
49
  },
44
50
  "devDependencies": {
45
51
  "@types/express": "^4.17.21",
46
52
  "@types/node": "^20.12.12",
53
+ "eslint": "^10.12.0",
54
+ "eslint-config-prettier": "^10.1.8",
55
+ "eslint-plugin-unused-imports": "^4.4.1",
56
+ "knip": "^6.41.0",
57
+ "ts-prune": "^0.10.3",
47
58
  "typescript": "^5.4.5",
59
+ "typescript-eslint": "^8.71.1",
48
60
  "vitest": "^3.0.0"
49
61
  }
50
62
  }
@@ -0,0 +1,120 @@
1
+ # Complex Multi-Component Flow Scenarios (Part 2)
2
+
3
+ Realistic end-to-end integration scenarios that combine multiple components into wide, branching flows.
4
+ Each scenario is a natural-language prompt for the LLM via the MCP server.
5
+
6
+ ---
7
+
8
+ ## Scenario 11: Customer 360 Data Aggregation
9
+
10
+ **Components**: Simple Trigger, Salesforce (MS Dynamics CRM V2), HubSpot, PostgreSQL, Code, Splitter, REST API V2, Slack
11
+
12
+ > Create a flow running daily at 6 AM: Simple Trigger fires, then PostgreSQL SELECTs all customers updated in the last 24 hours. Then Splitter splits into individual customer records. For each customer: MS Dynamics CRM V2 looks up the account by email, then HubSpot looks up the contact by email, then a Code component merges both CRM records into a unified customer profile object with fields from both sources (preferring Dynamics for billing data and HubSpot for marketing engagement data). Then REST API V2 PUTs the unified profile to https://cdp.internal/api/profiles/{customer_id}. If either CRM lookup fails, send a Slack message to #data-sync-errors with the customer email and which source failed.
13
+
14
+ ---
15
+
16
+ ## Scenario 12: Multi-Region Compliance Document Processing
17
+
18
+ **Components**: SFTP, Code, Claude AI, Router, PostgreSQL, Email (SMTP), iLovePDF, REST API V2, Slack
19
+
20
+ > Create a flow: SFTP polls for new PDF files in /incoming/compliance/ every 30 minutes. Then iLovePDF extracts text from the PDF. Then Claude AI analyzes the extracted text and returns: document_type (invoice, contract, receipt, other), region (EU, US, APAC), contains_pii (boolean), and a compliance_risk_score (1-10). Then a Router:
21
+ > - Branch 1 (region = "EU" AND contains_pii = true): Code component redacts PII fields, then REST API V2 POSTs the redacted document metadata to the GDPR compliance API at https://compliance.internal/api/gdpr/documents, then PostgreSQL inserts an audit log entry, then Email via SMTP notifies the DPO at dpo@company.com.
22
+ > - Branch 2 (compliance_risk_score >= 7): PostgreSQL inserts a high-risk flag record, then Slack sends an urgent alert to #legal-compliance, then Email via SMTP sends the full document details to legal-review@company.com.
23
+ > - Branch 3 (document_type = "invoice"): REST API V2 POSTs to the AP system at https://ap.internal/api/invoices for automatic processing, then PostgreSQL logs the processed invoice.
24
+ > - Default: PostgreSQL logs the document metadata for audit trail.
25
+
26
+ ---
27
+
28
+ ## Scenario 13: Omnichannel Customer Support Routing
29
+
30
+ **Components**: Webhook, Code, Gemini, Router, Slack, Email (SMTP), HubSpot, REST API V2, PostgreSQL, ClickSend SMS
31
+
32
+ > Create a flow: Webhook receives incoming support messages with `channel` (email, chat, phone, social), `customer_id`, `message_text`, `language`, and `sentiment_hint`. Code component looks up the customer tier (platinum, gold, silver, basic) from a mapping object. Then Gemini summarizes the message and extracts intent (billing, technical, account, general). Then a Router:
33
+ > - Branch 1 (customer_tier = "platinum"): HubSpot creates a priority ticket, then Slack sends to #vip-support with all context, then ClickSend SMS sends an acknowledgment to the customer's phone, then Email via SMTP sends to vip-team@company.com.
34
+ > - Branch 2 (intent = "billing" AND channel = "email"): HubSpot creates a ticket tagged "billing", then REST API V2 POSTs to the billing service at https://billing.internal/api/cases to check for open disputes, then Email via SMTP sends auto-response with billing FAQ link.
35
+ > - Branch 3 (intent = "technical"): HubSpot creates a ticket tagged "technical", then Slack sends to #tech-support with the Gemini summary, then REST API V2 POSTs to the knowledge base API at https://kb.internal/api/search with the extracted intent for suggested articles.
36
+ > - Default: PostgreSQL logs the message for manual triage, then Slack sends to #support-overflow.
37
+
38
+ ---
39
+
40
+ ## Scenario 14: E-Commerce Returns & Refund Automation
41
+
42
+ **Components**: Webhook, Code, Router, Shopify Admin V2, Stripe, PostgreSQL, Email (SMTP), Slack, SFTP, REST API V2
43
+
44
+ > Create a flow: Webhook receives a return request with `order_id`, `items[]`, `reason`, `refund_method`. Code component calculates the total refund amount and validates the return window (30 days). Then a Router:
45
+ > - Branch 1 (within return window AND refund_method = "original_payment"): Stripe creates a refund for the calculated amount, then Shopify Admin V2 updates the order status to "returned", then PostgreSQL inserts a returns record, then Email via SMTP sends refund confirmation to the customer, then SFTP uploads a return label PDF to /outgoing/return-labels/.
46
+ > - Branch 2 (within return window AND refund_method = "store_credit"): REST API V2 POSTs to the loyalty API at https://loyalty.internal/api/credits to add store credit, then Shopify Admin V2 updates the order, then PostgreSQL inserts the returns record, then Email via SMTP sends store credit confirmation.
47
+ > - Branch 3 (outside return window): PostgreSQL inserts a rejected return record, then Email via SMTP sends a polite rejection with the return policy, then Slack sends to #cs-escalation for manual review if reason contains "defective".
48
+ > - Branch 4 (reason = "defective" regardless of window): Slack sends an urgent alert to #quality-assurance with item details, then REST API V2 POSTs to the QA tracking system at https://qa.internal/api/defects, then process the refund via Stripe (same as Branch 1).
49
+
50
+ ---
51
+
52
+ ## Scenario 15: Automated Invoice Reconciliation with Multi-ERP Sync
53
+
54
+ **Components**: Google Sheets V2, Splitter, Code, Router, SAP Business One, MS Dynamics BC OnPrem, MSSQL, PostgreSQL, Slack, Email (SMTP)
55
+
56
+ > Create a flow running daily at 11 PM: Google Sheets V2 reads all rows from the "Daily Invoices" sheet where `status` = "pending". Then Splitter splits the rows. For each invoice, Code component normalizes the data (currency conversion, tax calculation, format dates). Then a Router:
57
+ > - Branch 1 (erp_target = "sap"): SAP Business One creates an invoice document, then MSSQL SELECTs the SAP-generated document number, then PostgreSQL updates the reconciliation table with the SAP reference, then Google Sheets V2 updates the row status to "synced_sap".
58
+ > - Branch 2 (erp_target = "dynamics"): MS Dynamics BC OnPrem creates a sales invoice, then PostgreSQL updates the reconciliation table with the Dynamics reference, then Google Sheets V2 updates the row status to "synced_dynamics".
59
+ > - Branch 3 (amount > 50000): In addition to the ERP sync above, Slack sends a high-value invoice alert to #finance-approvals, then Email via SMTP sends to cfo@company.com for manual approval.
60
+ > - Branch 4 (validation fails in Code component): PostgreSQL logs the error, then Slack sends to #finance-data-issues with the invoice number and error details.
61
+
62
+ ---
63
+
64
+ ## Scenario 16: Social Media Campaign Tracker with Analytics
65
+
66
+ **Components**: Simple Trigger, REST API V2, Code, Google Sheets V2, Google Analytics, Router, Slack, Email (SMTP), Pinterest, Twitter
67
+
68
+ > Create a flow running every 4 hours: Simple Trigger fires, then REST API V2 GETs active campaigns from the marketing platform at https://campaigns.internal/api/active. Then Code component extracts campaign IDs and platforms. Then Google Analytics runs a report for each campaign's UTM parameters to get click-through and conversion data. Then a Router:
69
+ > - Branch 1 (conversion_rate > target AND platform = "twitter"): Twitter posts a performance update tweet from the brand account, then Google Sheets V2 appends a success row to the "Campaign Performance" sheet, then Slack sends to #marketing-wins.
70
+ > - Branch 2 (conversion_rate > target AND platform = "pinterest"): Pinterest creates a promoted pin with the winning creative, then Google Sheets V2 appends a success row, then Slack sends to #marketing-wins.
71
+ > - Branch 3 (conversion_rate < target * 0.5): Slack sends an underperformance alert to #campaign-optimization with suggested actions from the Code component, then Email via SMTP sends a detailed report to the campaign manager, then Google Sheets V2 updates the campaign row with "needs_attention" flag.
72
+ > - Default: Google Sheets V2 appends the performance data for tracking.
73
+
74
+ ---
75
+
76
+ ## Scenario 17: Vendor Onboarding & Procurement Pipeline
77
+
78
+ **Components**: Monday, Code, Router, REST API V2, SFTP, PostgreSQL, Email (SMTP), Slack, Zoho CRM, PandaDoc
79
+
80
+ > Create a flow: Monday webhook triggers when an item moves to "Approved" status in the "Vendor Applications" board. Code component extracts vendor details (name, tax_id, bank_info, category, tier). Then a Router:
81
+ > - Branch 1 (tier = "strategic"): PandaDoc creates a contract from the "Strategic Vendor Agreement" template with merged vendor details, then Zoho CRM creates a vendor account, then REST API V2 POSTs to the procurement system at https://procurement.internal/api/vendors to create a vendor profile, then PostgreSQL inserts into vendor_master table, then Slack sends to #procurement with the PandaDoc link for review, then Email via SMTP sends the contract link to the vendor contact.
82
+ > - Branch 2 (tier = "standard"): PandaDoc creates a contract from the "Standard Terms" template, then REST API V2 POSTs to the procurement system, then PostgreSQL inserts into vendor_master, then Email via SMTP sends the contract to the vendor.
83
+ > - Branch 3 (category = "technology"): In addition to the tier-based processing, REST API V2 POSTs to the IT security review API at https://security.internal/api/vendor-reviews to initiate a security assessment, then Slack sends to #it-security-reviews.
84
+ > - Branch 4 (missing required fields): Slack sends to #procurement-issues with the missing fields list, then Email via SMTP notifies the submitter to complete the application.
85
+
86
+ ---
87
+
88
+ ## Scenario 18: Real-Time Fraud Detection & Response
89
+
90
+ **Components**: AMQP, Code, Claude AI, Router, PostgreSQL, REST API V2, Slack, Email (SMTP), AWS SQS, ClickSend SMS
91
+
92
+ > Create a flow: AMQP consumes messages from the "transactions.pending" queue. Code component extracts transaction features (amount, location, device_fingerprint, velocity, merchant_category). Then Claude AI evaluates fraud risk using the features and returns a risk_score (0-100), risk_factors[], and recommended_action (approve, review, block). Then a Router:
93
+ > - Branch 1 (recommended_action = "block"): REST API V2 POSTs to the payment gateway at https://payments.internal/api/transactions/{id}/block to block the transaction, then PostgreSQL inserts into fraud_events with all risk factors, then ClickSend SMS sends an alert to the customer's phone asking them to verify, then Slack sends to #fraud-alerts with full details, then AWS SQS sends to the fraud investigation queue.
94
+ > - Branch 2 (recommended_action = "review" AND amount > 5000): PostgreSQL inserts into fraud_review_queue, then Slack sends to #fraud-review-urgent, then Email via SMTP sends to fraud-team@company.com with the transaction details and Claude AI's analysis, then REST API V2 POSTs to the payment gateway to hold the transaction.
95
+ > - Branch 3 (recommended_action = "review" AND amount <= 5000): PostgreSQL inserts into fraud_review_queue, then Slack sends to #fraud-review-standard.
96
+ > - Branch 4 (recommended_action = "approve"): REST API V2 POSTs to the payment gateway to approve, then PostgreSQL inserts a clean transaction log.
97
+
98
+ ---
99
+
100
+ ## Scenario 19: Multi-Language Knowledge Base Sync
101
+
102
+ **Components**: Webhook, REST API V2, Splitter, DeepL, WordPress, Code, Router, PostgreSQL, Slack, Google Pub/Sub
103
+
104
+ > Create a flow: Webhook receives a notification that an article was published in the primary knowledge base with `article_id`, `title`, `content`, `target_languages[]`, `category`. REST API V2 GETs the full article content from https://kb.internal/api/articles/{article_id}. Then Splitter splits the target_languages array. For each language, DeepL translates the title and content. Then a Router:
105
+ > - Branch 1 (category = "product_docs"): WordPress creates a new post in the corresponding language site, then Code component generates SEO metadata for the translated content, then REST API V2 PUTs the SEO metadata to the CMS API, then PostgreSQL inserts a translation record with article_id, language, and wordpress_post_id.
106
+ > - Branch 2 (category = "support_articles"): REST API V2 POSTs the translated article to the help center API at https://help.internal/api/articles, then PostgreSQL inserts the translation record, then Google Pub/Sub publishes an event to the "content-updates" topic for downstream consumers.
107
+ > - Branch 3 (category = "legal"): Code component adds a disclaimer header ("Machine-translated — pending legal review"), then REST API V2 POSTs to the legal review queue API, then Slack sends to #legal-translations with the article link for human review.
108
+ > All branches: Slack sends a notification to #content-ops with the article title and languages processed.
109
+
110
+ ---
111
+
112
+ ## Scenario 20: IoT Fleet Management & Predictive Maintenance
113
+
114
+ **Components**: Google Pub/Sub, Splitter, Code, Router, PostgreSQL, MSSQL, REST API V2, Slack, Email (SMTP), AMQP, AWS SQS
115
+
116
+ > Create a flow: Google Pub/Sub subscribes to the "fleet.telemetry" topic (messages are batched vehicle data). Splitter splits into individual vehicle readings. Code component calculates derived metrics (fuel_efficiency, engine_health_score, brake_wear_index, miles_since_last_service). Then a Router:
117
+ > - Branch 1 (engine_health_score < 30): PostgreSQL inserts a critical maintenance alert, then AMQP publishes to the "maintenance.urgent" exchange for the dispatch system, then Slack sends to #fleet-critical with vehicle ID, location, and health metrics, then Email via SMTP sends to fleet-ops@company.com, then REST API V2 POSTs to the routing API at https://fleet.internal/api/vehicles/{id}/reroute to redirect the vehicle to the nearest service center.
118
+ > - Branch 2 (brake_wear_index > 80 OR miles_since_last_service > 15000): PostgreSQL inserts a scheduled maintenance record, then AWS SQS sends to the maintenance scheduling queue, then Slack sends to #fleet-maintenance with recommended service items.
119
+ > - Branch 3 (fuel_efficiency < vehicle.baseline_efficiency * 0.7): MSSQL inserts into the legacy fleet_performance table, then REST API V2 POSTs to the analytics API at https://analytics.internal/api/efficiency-alerts, then Slack sends to #fleet-optimization.
120
+ > - Default: PostgreSQL inserts the telemetry reading into vehicle_telemetry table for historical tracking.
@@ -5,6 +5,16 @@ This guide describes how to construct and update integration flows on the elasti
5
5
  ## Flow Architecture
6
6
  An elastic.io flow contains a directed graph of steps (nodes) and connections (edges).
7
7
 
8
+ ### Step ID Format
9
+ Every `step_id` must follow the format `step_N`, where `N` is a positive integer starting from `1`. Use the exact prefix `step_` followed by the numeric index, with no spaces or additional characters.
10
+
11
+ **Valid examples**: `step_1`, `step_2`, `step_3`, ..., `step_N`
12
+
13
+ **Invalid examples**: `step1`, `Step_1`, `step_0`, `step_01`, `my_step_1`, `step_lk_from`
14
+
15
+ > [!CAUTION]
16
+ > Always use this format when specifying a `step_id` in flow-related API requests. The platform rejects non-conforming step IDs and they cause errors in the UI.
17
+
8
18
  ## Flow Scheduling (Cron)
9
19
  To run a flow on a periodic schedule (e.g. every 10 minutes, daily, etc.):
10
20
  1. Set the flow type to `"ordinary"` (scheduled).
@@ -59,6 +69,9 @@ When retrieving a flow config via `get_flow`, the API returns steps with object
59
69
  >
60
70
  > Before presenting component options to the user, call `get_component` for each candidate and filter out components that lack the required operation type. Do NOT list components that cannot serve the intended role — this confuses users and wastes time.
61
71
 
72
+ > [!IMPORTANT]
73
+ > **Webhook Component Credentials**: Although the Webhook component (`elasticio/webhook:receive`) does not require authentication to receive payloads, you MUST always propose attaching credentials to the Webhook step when building flows. Webhook credentials enable HMAC signature verification, API key validation, basic auth, and other security features. Even if the user says "just a simple webhook", explicitly ask whether they want to secure it and offer to set up or attach credentials. Never silently omit credentials on a Webhook step without asking the user.
74
+
62
75
  3. **`credentials_id`** (for Credential-based components):
63
76
  * *Retrieved (get_flow)*: `{ "credentialId": "CRED_ID", "credentialName": "..." }`
64
77
  * *Constructed (update/create)*: Plain string, e.g., `"CRED_ID"`
@@ -405,8 +418,11 @@ Each edge in the `graph.edges` array connects two steps:
405
418
  }
406
419
  ```
407
420
 
408
- > [!CAUTION]
409
- > **Mapper format MUST be an object, NEVER a string.** The mapper must always be an object with per-field JSONata expressions (`{"fieldName": "expression"}`). Using a single JSONata string as the mapper (e.g., `"mapper": "{ \"to\": ... }"`) breaks the UI visual mapper — fields appear empty/broken and the JSONata toggle does not work correctly. Always use the object format.
421
+ > [!NOTE]
422
+ > **Supported Mapper Formats**:
423
+ > Elastic.io supports two mapper formats for `edge.config.mapper`:
424
+ > 1. **Per-field Object Mapper** (`{"fieldName": "expression"}`): Standard format for simple/flat component mappings where each property is mapped individually in the visual UI. Nested objects and arrays of objects/expressions are fully supported.
425
+ > 2. **Root JSONata String Mapper** (`"{\n \"field\": expression\n}"` or `"(\n $var := ...;\n {\n \"field\": ...\n }\n)"`): Ideal for complex payloads, nested objects/arrays, or developer-mode mappings requiring JSONata block variables. Ensure the expression starts with `{`, `(`, or `[`, and is NOT wrapped in outer literal quotes.
410
426
 
411
427
  ## Read-Only Properties to Strip
412
428
  When sending an `update_flow` (PATCH) payload, the API will fail if read-only properties are present in the request. You MUST strip the following keys from `attributes` and `relationships`:
@@ -0,0 +1,195 @@
1
+ # Flow Lifecycle (State Machine)
2
+
3
+ One continuous cycle. After LOGS the flow is RUNNING — any modification request loops back through the modification stages.
4
+
5
+ ```
6
+ INIT → DISCOVERY → SKELETON → METADATA → MAPPERS → PUBLISH_DRAFT → START → RUN_NOW → LOGS → RUNNING
7
+ ↓
8
+ user requests a change ↓
9
+ ↓
10
+ INSPECT → STOP → DISCOVERY(changed) → IMPACT
11
+ ↓
12
+ re-do affected stages (see below)
13
+ ↓
14
+ PUBLISH_DRAFT → START → RUN_NOW → LOGS → RUNNING
15
+ ↓
16
+ ...
17
+ ```
18
+
19
+ ---
20
+
21
+ ## Stage 1: INIT
22
+
23
+ **Trigger:** `create_flow` — creates an empty flow (no graph).
24
+
25
+ **What happens:**
26
+ - Flow is registered in the platform
27
+ - State machine initialized for this flow ID
28
+
29
+ **Gate to next stage:** flow ID exists.
30
+
31
+ ---
32
+
33
+ ## Stage 2: DISCOVERY
34
+
35
+ **Trigger:** `get_component`, `list_credentials`, `list_secrets` for each component used in the flow.
36
+
37
+ **What happens:**
38
+ - Component schemas (actions, triggers, fields, dynamicMetadata flags) are fetched and cached
39
+ - Available credentials and secrets are listed
40
+ - Components requiring auth are flagged
41
+ - Components with `dynamicMetadata: true` are recorded — these will need metadata retrieval later
42
+
43
+ **Gate to next stage:** every `component_id` that will appear in the skeleton must have a corresponding `get_component` call. Every `credentials_id` / `secret_id` must come from `list_credentials` / `list_secrets`.
44
+
45
+ ---
46
+
47
+ ## Stage 3: SKELETON
48
+
49
+ **Trigger:** `update_flow_draft` with nodes + edges but **no mappers** on edges.
50
+
51
+ **What happens:**
52
+ - Draft is saved with the flow structure: which steps exist, how they connect
53
+ - No data mapping yet — edges have no `config.mapper`
54
+ - The system analyzes which steps have `dynamicMetadata: true` and builds a list of pending metadata calls
55
+
56
+ **Gate to next stage:** skeleton must be saved successfully. If any component wasn't discovered in Stage 2, the call is rejected.
57
+
58
+ ---
59
+
60
+ ## Stage 4: METADATA
61
+
62
+ **Trigger:** `init_dynamic_metadata` for each step that has `dynamicMetadata: true`.
63
+
64
+ **What happens:**
65
+ - For each step with dynamic metadata, the actual input/output schema is retrieved from the component using live credentials
66
+ - This gives real field names (not guessed ones) for building mappers
67
+ - Each successful call marks that component:action combo as "metadata retrieved"
68
+
69
+ **Gate to next stage:** all pending metadata combos (identified in Stage 3) must be retrieved. If a step doesn't have `dynamicMetadata: true`, it's skipped automatically.
70
+
71
+ **Skip condition:** if no steps in the skeleton have `dynamicMetadata: true`, this stage is auto-completed.
72
+
73
+ ---
74
+
75
+ ## Stage 5: MAPPERS
76
+
77
+ **Trigger:** `update_flow_draft` again, this time with `config.mapper` on edges.
78
+
79
+ **What happens:**
80
+ - Mappers are built using real field names from Stage 4
81
+ - Mapper values reference upstream steps via `$getPassthrough().step_id.body.fieldName`
82
+ - Mapper keys are the target step's input field names (from metadata)
83
+
84
+ **Gate to next stage:** draft must be saved with mappers. The system rejects the call if:
85
+ - Skeleton wasn't saved first (Stage 3 skipped)
86
+ - Metadata wasn't retrieved for steps that need it (Stage 4 skipped)
87
+
88
+ ---
89
+
90
+ ## Stage 6: PUBLISH DRAFT
91
+
92
+ **Trigger:** `update_flow` (PATCH) — publishes the draft, making it the live flow configuration.
93
+
94
+ **What happens:**
95
+ - Impact analysis is shown (diff between current live flow and the draft)
96
+ - User must confirm with `confirmed: true`
97
+ - Draft becomes the active configuration, draft is deleted
98
+
99
+ **Gate to next stage:** flow must have completed the MAPPERS stage. Cannot publish from INIT, DISCOVERY, SKELETON, or METADATA phases.
100
+
101
+ ---
102
+
103
+ ## Stage 7: START
104
+
105
+ **Trigger:** `start_flow`
106
+
107
+ **What happens:**
108
+ - Pre-start health check runs (credentials valid, required fields set, components accessible)
109
+ - If health check has errors, start is blocked
110
+ - If health check passes, flow begins executing on its cron schedule
111
+
112
+ ---
113
+
114
+ ## Stage 8: RUN NOW
115
+
116
+ **Trigger:** `run_flow_now`
117
+
118
+ **What happens:**
119
+ - Forces an immediate execution of the flow (outside of its cron schedule)
120
+ - Useful to verify the flow works end-to-end before waiting for the next scheduled run
121
+
122
+ **Gate:** flow must be started (Stage 7).
123
+
124
+ ---
125
+
126
+ ## Stage 9: LOGS
127
+
128
+ **Trigger:** `get_logs` for the flow
129
+
130
+ **What happens:**
131
+ - Check execution logs to verify the flow ran successfully
132
+ - Identify errors, warnings, or unexpected behavior in the execution
133
+ - If issues found — diagnose and loop back to the appropriate stage to fix
134
+
135
+ **After this stage:** flow transitions to RUNNING state.
136
+
137
+ ---
138
+
139
+ ## Stage 10: RUNNING
140
+
141
+ Flow is live and executing on schedule. State machine stays here until the user requests a modification.
142
+
143
+ **On modification request** → enter the modification cycle below.
144
+
145
+ ---
146
+
147
+ ## Modification Cycle (from RUNNING)
148
+
149
+ When the user asks to change something in a running flow, the state machine loops back through these stages:
150
+
151
+ ### Step M1: INSPECT
152
+
153
+ **Trigger:** `get_flow` — fetch the current flow configuration.
154
+
155
+ **Gate:** must be called before any modification.
156
+
157
+ ### Step M2: STOP
158
+
159
+ **Trigger:** `stop_flow` — stop the running flow.
160
+
161
+ **Skip condition:** if flow is already inactive.
162
+
163
+ ### Step M3: DISCOVERY (only for changed components)
164
+
165
+ Re-run `get_component`, `list_credentials`, `list_secrets` only for:
166
+ - New components being added
167
+ - Components whose credentials are changing
168
+
169
+ Already-discovered components from the previous cycle are still cached.
170
+
171
+ ### Step M4: IMPACT ANALYSIS
172
+
173
+ **Trigger:** first call to `update_flow` or `update_flow_draft` (without `confirmed: true`).
174
+
175
+ **What happens:**
176
+ - The system compares old vs. new graph and shows a domino-effect impact report
177
+ - Lists: added/removed/changed steps, broken passthrough references, stale data samples
178
+ - Identifies which downstream steps are affected
179
+
180
+ ### Step M5: RE-DO AFFECTED STAGES
181
+
182
+ Based on what changed, repeat only the relevant stages:
183
+
184
+ | What changed | Stages to repeat |
185
+ |---|---|
186
+ | New step added | DISCOVERY → METADATA (if dynamicMetadata) → SKELETON → MAPPERS |
187
+ | Component replaced in step | DISCOVERY → METADATA → MAPPERS |
188
+ | Credentials changed | DISCOVERY (list_credentials) → verify_credentials |
189
+ | Step fields changed | MAPPERS (if output schema affected) + refresh data samples |
190
+ | Step removed | MAPPERS (fix broken passthrough refs) |
191
+ | Mapper changed | refresh data samples for downstream steps |
192
+
193
+ ### Step M6: PUBLISH DRAFT → START → RUN NOW → LOGS → RUNNING
194
+
195
+ Same as stages 6–10. The cycle repeats.