@camunda/connectors-element-templates 1.0.17 → 1.0.19

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 (125) hide show
  1. package/package.json +2 -2
  2. package/src/connectors.js +12 -2
  3. package/src/element-templates/agenticai-a2a-client-outbound-connector.json +4 -7
  4. package/src/element-templates/agenticai-a2a-client-polling-inbound-connector-intermediate.json +8 -8
  5. package/src/element-templates/agenticai-a2a-client-polling-inbound-connector-receive.json +8 -8
  6. package/src/element-templates/agenticai-a2a-client-webhook-inbound-connector-intermediate.json +8 -8
  7. package/src/element-templates/agenticai-a2a-client-webhook-inbound-connector-receive.json +8 -8
  8. package/src/element-templates/agenticai-adhoctoolsschema-outbound-connector.json +9 -12
  9. package/src/element-templates/agenticai-aiagent-job-worker.json +3770 -29
  10. package/src/element-templates/agenticai-aiagent-outbound-connector.json +6274 -2594
  11. package/src/element-templates/agenticai-mcp-client-outbound-connector.json +549 -552
  12. package/src/element-templates/agenticai-mcp-message-start-event.json +122 -0
  13. package/src/element-templates/agenticai-mcp-remote-client-outbound-connector.json +736 -739
  14. package/src/element-templates/asana-connector.json +759 -48
  15. package/src/element-templates/automation-anywhere-outbound-connector.json +1763 -1759
  16. package/src/element-templates/aws-bedrock-agentcore-long-term-memory-outbound-connector.json +431 -0
  17. package/src/element-templates/aws-bedrock-agentcore-runtime-outbound-connector.json +285 -0
  18. package/src/element-templates/aws-bedrock-codeinterpreter-outbound-connector.json +341 -0
  19. package/src/element-templates/aws-bedrock-knowledgebase-outbound-connector.json +316 -0
  20. package/src/element-templates/aws-bedrock-outbound-connector.json +747 -10
  21. package/src/element-templates/aws-comprehend-outbound-connector.json +10 -5
  22. package/src/element-templates/aws-dynamodb-outbound-connector.json +1358 -1358
  23. package/src/element-templates/aws-eventbridge-connector-boundary.json +383 -18
  24. package/src/element-templates/aws-eventbridge-connector-intermediate.json +377 -12
  25. package/src/element-templates/aws-eventbridge-connector-message-start.json +407 -8
  26. package/src/element-templates/aws-eventbridge-connector-receive.json +364 -0
  27. package/src/element-templates/aws-eventbridge-connector-start-event.json +317 -0
  28. package/src/element-templates/aws-eventbridge-outbound-connector.json +300 -295
  29. package/src/element-templates/aws-lambda-outbound-connector.json +238 -234
  30. package/src/element-templates/aws-s3-outbound-connector.json +646 -5
  31. package/src/element-templates/aws-sagemaker-outbound-connector.json +13 -9
  32. package/src/element-templates/aws-sns-inbound-boundary.json +44 -37
  33. package/src/element-templates/aws-sns-inbound-intermediate.json +210 -203
  34. package/src/element-templates/aws-sns-inbound-message-start.json +125 -118
  35. package/src/element-templates/aws-sns-inbound-receive.json +13 -6
  36. package/src/element-templates/aws-sns-inbound-start-event.json +134 -127
  37. package/src/element-templates/aws-sns-outbound-connector.json +581 -577
  38. package/src/element-templates/aws-sqs-boundary-connector.json +453 -449
  39. package/src/element-templates/aws-sqs-inbound-intermediate-connector.json +530 -526
  40. package/src/element-templates/aws-sqs-outbound-connector.json +711 -709
  41. package/src/element-templates/aws-sqs-receive-connector.json +15 -11
  42. package/src/element-templates/aws-sqs-start-event-connector.json +213 -205
  43. package/src/element-templates/aws-sqs-start-message.json +461 -457
  44. package/src/element-templates/aws-textract-outbound-connector.json +109 -105
  45. package/src/element-templates/azure-blobstorage-outbound-connector.json +676 -19
  46. package/src/element-templates/azure-open-ai-connector.json +1329 -4
  47. package/src/element-templates/blue-prism-connector.json +569 -24
  48. package/src/element-templates/box-outbound-connector.json +924 -12
  49. package/src/element-templates/csv-outbound-connector.json +13 -5
  50. package/src/element-templates/easy-post-connector.json +1077 -109
  51. package/src/element-templates/email-inbound-connector-boundary.json +32 -24
  52. package/src/element-templates/email-inbound-connector-intermediate.json +32 -24
  53. package/src/element-templates/email-inbound-connector-receive.json +564 -0
  54. package/src/element-templates/email-message-start-event-connector.json +58 -50
  55. package/src/element-templates/email-outbound-connector.json +2116 -243
  56. package/src/element-templates/embeddings-vector-database-outbound-connector.json +3 -6
  57. package/src/element-templates/github-connector.json +15257 -11722
  58. package/src/element-templates/github-webhook-connector-boundary.json +27 -29
  59. package/src/element-templates/github-webhook-connector-intermediate.json +36 -38
  60. package/src/element-templates/github-webhook-connector-message-start.json +11 -13
  61. package/src/element-templates/github-webhook-connector-receive.json +13 -15
  62. package/src/element-templates/github-webhook-connector-start-event.json +54 -56
  63. package/src/element-templates/gitlab-connector.json +4177 -2545
  64. package/src/element-templates/google-cloud-storage-outbound-connector.json +562 -13
  65. package/src/element-templates/google-drive-outbound-connector.json +1386 -766
  66. package/src/element-templates/google-gemini-outbound-connector.json +13 -5
  67. package/src/element-templates/google-maps-platform-connector.json +1059 -30
  68. package/src/element-templates/google-sheets-outbound-connector.json +2449 -1455
  69. package/src/element-templates/graphql-outbound-connector.json +1744 -1735
  70. package/src/element-templates/http-json-connector.json +2982 -2332
  71. package/src/element-templates/http-polling-boundary-catch-event-connector.json +752 -741
  72. package/src/element-templates/http-polling-connector.json +1512 -1501
  73. package/src/element-templates/hubspot-outbound-connector.json +2371 -25
  74. package/src/element-templates/hugging-face-connector.json +234 -3
  75. package/src/element-templates/jdbc-outbound-connector.json +20 -6
  76. package/src/element-templates/kafka-inbound-connector-boundary.json +613 -604
  77. package/src/element-templates/kafka-inbound-connector-intermediate.json +528 -519
  78. package/src/element-templates/kafka-inbound-connector-receive.json +15 -6
  79. package/src/element-templates/kafka-inbound-connector-start-message.json +530 -521
  80. package/src/element-templates/kafka-inbound-connector.json +240 -240
  81. package/src/element-templates/kafka-outbound-connector.json +518 -512
  82. package/src/element-templates/microsoft-o365-email-boundary-event-connector.json +18 -6
  83. package/src/element-templates/microsoft-o365-email-intermediate-catch-event-connector.json +18 -6
  84. package/src/element-templates/microsoft-o365-email-message-start-event-connector.json +18 -6
  85. package/src/element-templates/microsoft-office365-mail-connector.json +893 -10
  86. package/src/element-templates/microsoft-teams-outbound-connector.json +5971 -3807
  87. package/src/element-templates/openai-connector.json +550 -87
  88. package/src/element-templates/operate-connector.json +1198 -46
  89. package/src/element-templates/power-automate-connector.json +601 -9
  90. package/src/element-templates/rabbitmq-inbound-connector-boundary.json +444 -435
  91. package/src/element-templates/rabbitmq-inbound-connector-intermediate.json +484 -475
  92. package/src/element-templates/rabbitmq-inbound-connector-message-start.json +367 -358
  93. package/src/element-templates/rabbitmq-inbound-connector-receive.json +15 -6
  94. package/src/element-templates/rabbitmq-inbound-connector-start-event.json +479 -470
  95. package/src/element-templates/rabbitmq-outbound-connector.json +356 -350
  96. package/src/element-templates/rpa-connector.json +346 -0
  97. package/src/element-templates/salesforce-connector.json +544 -0
  98. package/src/element-templates/send-message-connector-intermediate-throw-event.json +10 -5
  99. package/src/element-templates/send-message-connector-message-end-event.json +10 -5
  100. package/src/element-templates/send-message-connector-send-task.json +10 -5
  101. package/src/element-templates/sendgrid-outbound-connector.json +945 -337
  102. package/src/element-templates/servicenow-connector.json +971 -3
  103. package/src/element-templates/servicenow-flow-starter-connector.json +8 -3
  104. package/src/element-templates/servicenow-incident-connector.json +980 -3
  105. package/src/element-templates/slack-inbound-boundary.json +490 -192
  106. package/src/element-templates/slack-inbound-intermediate.json +421 -123
  107. package/src/element-templates/slack-inbound-message-start.json +469 -139
  108. package/src/element-templates/slack-inbound-receive.json +297 -0
  109. package/src/element-templates/slack-inbound-start-event.json +216 -211
  110. package/src/element-templates/slack-outbound-connector.json +2451 -753
  111. package/src/element-templates/soap-outbound-connector.json +812 -2
  112. package/src/element-templates/twilio-connector.json +1573 -93
  113. package/src/element-templates/twilio-webhook-boundary-connector.json +19 -10
  114. package/src/element-templates/twilio-webhook-connector.json +243 -13
  115. package/src/element-templates/twilio-webhook-intermediate-connector.json +34 -25
  116. package/src/element-templates/twilio-webhook-message-start-connector.json +312 -0
  117. package/src/element-templates/twilio-webhook-receive-connector.json +11 -2
  118. package/src/element-templates/uipath-connector.json +594 -2
  119. package/src/element-templates/webhook-connector-boundary.json +580 -570
  120. package/src/element-templates/webhook-connector-intermediate.json +1390 -1380
  121. package/src/element-templates/webhook-connector-receive.json +16 -6
  122. package/src/element-templates/webhook-connector-start-event.json +1382 -1375
  123. package/src/element-templates/webhook-connector-start-message.json +1306 -1296
  124. package/src/element-templates/whatsapp-connector.json +343 -9
  125. package/src/element-templates/http-connector.json.json +0 -654
@@ -1,17 +1,249 @@
1
1
  [
2
2
  {
3
3
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
4
- "name": "MCP Client",
4
+ "name": "MCP Client (early access)",
5
+ "id": "io.camunda.connectors.agenticai.mcp.client.v0",
6
+ "description": "MCP (Model Context Protocol) client using MCP connections configured on the connector runtime. Only supports tool operations.",
7
+ "metadata": {
8
+ "keywords": []
9
+ },
10
+ "version": 0,
11
+ "category": {
12
+ "id": "aiTools",
13
+ "name": "AI Tools"
14
+ },
15
+ "appliesTo": ["bpmn:Task"],
16
+ "elementType": {
17
+ "value": "bpmn:ServiceTask"
18
+ },
19
+ "engines": {
20
+ "camunda": "^8.8"
21
+ },
22
+ "groups": [
23
+ {
24
+ "id": "client",
25
+ "label": "MCP Client"
26
+ },
27
+ {
28
+ "id": "tools",
29
+ "label": "Tools"
30
+ },
31
+ {
32
+ "id": "operation",
33
+ "label": "Operation",
34
+ "openByDefault": false
35
+ },
36
+ {
37
+ "id": "connector",
38
+ "label": "Connector"
39
+ },
40
+ {
41
+ "id": "output",
42
+ "label": "Output mapping"
43
+ },
44
+ {
45
+ "id": "error",
46
+ "label": "Error handling"
47
+ },
48
+ {
49
+ "id": "retries",
50
+ "label": "Retries"
51
+ }
52
+ ],
53
+ "properties": [
54
+ {
55
+ "value": "io.camunda.agenticai:mcpclient:0",
56
+ "binding": {
57
+ "property": "type",
58
+ "type": "zeebe:taskDefinition"
59
+ },
60
+ "type": "Hidden"
61
+ },
62
+ {
63
+ "value": "mcpClient",
64
+ "binding": {
65
+ "name": "io.camunda.agenticai.gateway.type",
66
+ "type": "zeebe:property"
67
+ },
68
+ "type": "Hidden"
69
+ },
70
+ {
71
+ "id": "data.client.clientId",
72
+ "label": "Client ID",
73
+ "description": "The MCP client ID. This needs to be configured on your connector runtime.",
74
+ "optional": false,
75
+ "constraints": {
76
+ "notEmpty": true
77
+ },
78
+ "feel": "optional",
79
+ "group": "client",
80
+ "binding": {
81
+ "name": "data.client.clientId",
82
+ "type": "zeebe:input"
83
+ },
84
+ "type": "String"
85
+ },
86
+ {
87
+ "id": "data.tools.included",
88
+ "label": "Included tools",
89
+ "description": "List of tools that can be used by the MCP client. By default, all tools are allowed.",
90
+ "optional": true,
91
+ "feel": "required",
92
+ "group": "tools",
93
+ "binding": {
94
+ "name": "data.tools.included",
95
+ "type": "zeebe:input"
96
+ },
97
+ "type": "Text"
98
+ },
99
+ {
100
+ "id": "data.tools.excluded",
101
+ "label": "Excluded tools",
102
+ "description": "List of tools that are not allowed to be used by the MCP client. Will override any included tools.",
103
+ "optional": true,
104
+ "feel": "required",
105
+ "group": "tools",
106
+ "binding": {
107
+ "name": "data.tools.excluded",
108
+ "type": "zeebe:input"
109
+ },
110
+ "type": "Text"
111
+ },
112
+ {
113
+ "id": "data.operation.method",
114
+ "label": "Method",
115
+ "description": "The MCP method to be called, e.g. <code>tools/list</code>.",
116
+ "optional": false,
117
+ "value": "=toolCall.method",
118
+ "constraints": {
119
+ "notEmpty": true
120
+ },
121
+ "feel": "optional",
122
+ "group": "operation",
123
+ "binding": {
124
+ "name": "data.operation.method",
125
+ "type": "zeebe:input"
126
+ },
127
+ "tooltip": "The method to be called on the MCP server. See the <a href=\"https://modelcontextprotocol.io/specification/2024-11-05/server\">MCP specification</a> for a list of available methods.<br><br>Currently supported:<br><code>tools/list</code>, <code>tools/call</code>",
128
+ "type": "String"
129
+ },
130
+ {
131
+ "id": "data.operation.params",
132
+ "label": "Parameters",
133
+ "description": "The parameters to be passed to the MCP method.",
134
+ "optional": true,
135
+ "value": "=toolCall.params",
136
+ "feel": "required",
137
+ "group": "operation",
138
+ "binding": {
139
+ "name": "data.operation.params",
140
+ "type": "zeebe:input"
141
+ },
142
+ "tooltip": "The parameter structure depends on the method being called. See the <a href=\"https://modelcontextprotocol.io/specification/2024-11-05/server/tools#calling-tools\">MCP specification</a> for an example of the parameters for the <code>tools/call</code> method.",
143
+ "type": "String"
144
+ },
145
+ {
146
+ "id": "version",
147
+ "label": "Version",
148
+ "description": "Version of the element template",
149
+ "value": "0",
150
+ "group": "connector",
151
+ "binding": {
152
+ "key": "elementTemplateVersion",
153
+ "type": "zeebe:taskHeader"
154
+ },
155
+ "type": "Hidden"
156
+ },
157
+ {
158
+ "id": "id",
159
+ "label": "ID",
160
+ "description": "ID of the element template",
161
+ "value": "io.camunda.connectors.agenticai.mcp.client.v0",
162
+ "group": "connector",
163
+ "binding": {
164
+ "key": "elementTemplateId",
165
+ "type": "zeebe:taskHeader"
166
+ },
167
+ "type": "Hidden"
168
+ },
169
+ {
170
+ "id": "resultVariable",
171
+ "label": "Result variable",
172
+ "description": "Name of variable to store the response in",
173
+ "value": "toolCallResult",
174
+ "group": "output",
175
+ "binding": {
176
+ "key": "resultVariable",
177
+ "type": "zeebe:taskHeader"
178
+ },
179
+ "type": "String"
180
+ },
181
+ {
182
+ "id": "resultExpression",
183
+ "label": "Result expression",
184
+ "description": "Expression to map the response into process variables",
185
+ "feel": "required",
186
+ "group": "output",
187
+ "binding": {
188
+ "key": "resultExpression",
189
+ "type": "zeebe:taskHeader"
190
+ },
191
+ "type": "Text"
192
+ },
193
+ {
194
+ "id": "errorExpression",
195
+ "label": "Error expression",
196
+ "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
197
+ "feel": "required",
198
+ "group": "error",
199
+ "binding": {
200
+ "key": "errorExpression",
201
+ "type": "zeebe:taskHeader"
202
+ },
203
+ "type": "Text"
204
+ },
205
+ {
206
+ "id": "retryCount",
207
+ "label": "Retries",
208
+ "description": "Number of retries",
209
+ "value": "3",
210
+ "feel": "optional",
211
+ "group": "retries",
212
+ "binding": {
213
+ "property": "retries",
214
+ "type": "zeebe:taskDefinition"
215
+ },
216
+ "type": "String"
217
+ },
218
+ {
219
+ "id": "retryBackoff",
220
+ "label": "Retry backoff",
221
+ "description": "ISO-8601 duration to wait between retries",
222
+ "value": "PT0S",
223
+ "group": "retries",
224
+ "binding": {
225
+ "key": "retryBackoff",
226
+ "type": "zeebe:taskHeader"
227
+ },
228
+ "type": "String"
229
+ }
230
+ ],
231
+ "icon": {
232
+ "contents": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIiBmaWxsPSJub25lIiB2aWV3Qm94PSIwIDAgMjAwIDIwMCI+CiAgICA8cGF0aCBkPSJNMjUgOTcuODUyOEw5Mi44ODIzIDI5Ljk3MDZDMTAyLjI1NSAyMC41OTggMTE3LjQ1MSAyMC41OTggMTI2LjgyMyAyOS45NzA2VjI5Ljk3MDZDMTM2LjE5NiAzOS4zNDMxIDEzNi4xOTYgNTQuNTM5MSAxMjYuODIzIDYzLjkxMTdMNzUuNTU4MSAxMTUuMTc3IiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjEyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KICAgIDxwYXRoIGQ9Ik03Ni4yNjUzIDExNC40N0wxMjYuODIzIDYzLjkxMTdDMTM2LjE5NiA1NC41MzkxIDE1MS4zOTIgNTQuNTM5MSAxNjAuNzY1IDYzLjkxMTdMMTYxLjExOCA2NC4yNjUyQzE3MC40OTEgNzMuNjM3OCAxNzAuNDkxIDg4LjgzMzggMTYxLjExOCA5OC4yMDYzTDk5LjcyNDggMTU5LjZDOTYuNjAwNiAxNjIuNzI0IDk2LjYwMDYgMTY3Ljc4OSA5OS43MjQ4IDE3MC45MTNMMTEyLjMzMSAxODMuNTIiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMTIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgogICAgPHBhdGggZD0iTTEwOS44NTMgNDYuOTQxMUw1OS42NDgyIDk3LjE0NTdDNTAuMjc1NyAxMDYuNTE4IDUwLjI3NTcgMTIxLjcxNCA1OS42NDgyIDEzMS4wODdWMTMxLjA4N0M2OS4wMjA4IDE0MC40NTkgODQuMjE2OCAxNDAuNDU5IDkzLjU4OTQgMTMxLjA4N0wxNDMuNzk0IDgwLjg4MjIiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMTIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgo8L3N2Zz4K"
233
+ }
234
+ },
235
+ {
236
+ "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
237
+ "name": "MCP Client (early access)",
5
238
  "id": "io.camunda.connectors.agenticai.mcp.client.v0",
6
239
  "description": "MCP (Model Context Protocol) client using MCP connections configured on the connector runtime.",
7
240
  "metadata": {
8
241
  "keywords": []
9
242
  },
10
- "documentationRef": "https://docs.camunda.io/docs/8.9/components/connectors/out-of-the-box-connectors/agentic-ai-mcp-client-connector/",
11
- "version": 2,
243
+ "version": 1,
12
244
  "category": {
13
- "id": "connectors",
14
- "name": "Connectors"
245
+ "id": "aiTools",
246
+ "name": "AI Tools"
15
247
  },
16
248
  "appliesTo": ["bpmn:Task"],
17
249
  "elementType": {
@@ -35,8 +267,8 @@
35
267
  "label": "Operation"
36
268
  },
37
269
  {
38
- "id": "filters",
39
- "label": "Filters",
270
+ "id": "tools",
271
+ "label": "Tools",
40
272
  "openByDefault": false
41
273
  },
42
274
  {
@@ -133,33 +365,13 @@
133
365
  },
134
366
  "type": "Dropdown",
135
367
  "choices": [
136
- {
137
- "name": "List Tools",
138
- "value": "tools/list"
139
- },
140
368
  {
141
369
  "name": "Call Tool",
142
370
  "value": "tools/call"
143
371
  },
144
372
  {
145
- "name": "List Resources",
146
- "value": "resources/list"
147
- },
148
- {
149
- "name": "List Resource Templates",
150
- "value": "resources/templates/list"
151
- },
152
- {
153
- "name": "Read Resource",
154
- "value": "resources/read"
155
- },
156
- {
157
- "name": "List Prompts",
158
- "value": "prompts/list"
159
- },
160
- {
161
- "name": "Get Prompt",
162
- "value": "prompts/get"
373
+ "name": "List Tools",
374
+ "value": "tools/list"
163
375
  }
164
376
  ]
165
377
  },
@@ -220,93 +432,6 @@
220
432
  },
221
433
  "type": "String"
222
434
  },
223
- {
224
- "id": "data.connectorMode.operation.resourceUri",
225
- "label": "Resource URI",
226
- "description": "The URI of the resource to read.",
227
- "optional": false,
228
- "constraints": {
229
- "notEmpty": true
230
- },
231
- "feel": "optional",
232
- "group": "operation",
233
- "binding": {
234
- "name": "data.connectorMode.operation.resourceUri",
235
- "type": "zeebe:input"
236
- },
237
- "condition": {
238
- "allMatch": [
239
- {
240
- "property": "data.connectorMode.operation.type",
241
- "equals": "resources/read",
242
- "type": "simple"
243
- },
244
- {
245
- "property": "data.connectorMode.type",
246
- "equals": "standalone",
247
- "type": "simple"
248
- }
249
- ]
250
- },
251
- "type": "String"
252
- },
253
- {
254
- "id": "data.connectorMode.operation.promptName",
255
- "label": "Prompt name",
256
- "description": "The name of the prompt to get.",
257
- "optional": false,
258
- "constraints": {
259
- "notEmpty": true
260
- },
261
- "feel": "optional",
262
- "group": "operation",
263
- "binding": {
264
- "name": "data.connectorMode.operation.promptName",
265
- "type": "zeebe:input"
266
- },
267
- "condition": {
268
- "allMatch": [
269
- {
270
- "property": "data.connectorMode.operation.type",
271
- "equals": "prompts/get",
272
- "type": "simple"
273
- },
274
- {
275
- "property": "data.connectorMode.type",
276
- "equals": "standalone",
277
- "type": "simple"
278
- }
279
- ]
280
- },
281
- "type": "String"
282
- },
283
- {
284
- "id": "data.connectorMode.operation.promptArguments",
285
- "label": "Prompt arguments",
286
- "description": "The arguments to pass to the prompt generation.",
287
- "optional": true,
288
- "feel": "required",
289
- "group": "operation",
290
- "binding": {
291
- "name": "data.connectorMode.operation.promptArguments",
292
- "type": "zeebe:input"
293
- },
294
- "condition": {
295
- "allMatch": [
296
- {
297
- "property": "data.connectorMode.operation.type",
298
- "equals": "prompts/get",
299
- "type": "simple"
300
- },
301
- {
302
- "property": "data.connectorMode.type",
303
- "equals": "standalone",
304
- "type": "simple"
305
- }
306
- ]
307
- },
308
- "type": "String"
309
- },
310
435
  {
311
436
  "id": "data.connectorMode.toolOperation.method",
312
437
  "label": "Method",
@@ -351,268 +476,88 @@
351
476
  "type": "String"
352
477
  },
353
478
  {
354
- "id": "data.connectorMode.standaloneModeFilters.tools.included",
479
+ "id": "data.tools.included",
355
480
  "label": "Included tools",
356
481
  "description": "List of tools that can be used by the MCP client. By default, all tools are allowed.",
357
482
  "optional": true,
358
483
  "feel": "required",
359
- "group": "filters",
484
+ "group": "tools",
360
485
  "binding": {
361
- "name": "data.connectorMode.standaloneModeFilters.tools.included",
486
+ "name": "data.tools.included",
362
487
  "type": "zeebe:input"
363
488
  },
364
- "condition": {
365
- "allMatch": [
366
- {
367
- "property": "data.connectorMode.operation.type",
368
- "oneOf": ["tools/call", "tools/list"],
369
- "type": "simple"
370
- },
371
- {
372
- "property": "data.connectorMode.type",
373
- "equals": "standalone",
374
- "type": "simple"
375
- }
376
- ]
377
- },
378
489
  "type": "Text"
379
490
  },
380
491
  {
381
- "id": "data.connectorMode.standaloneModeFilters.tools.excluded",
492
+ "id": "data.tools.excluded",
382
493
  "label": "Excluded tools",
383
494
  "description": "List of tools that are not allowed to be used by the MCP client. Will override any included tools.",
384
495
  "optional": true,
385
496
  "feel": "required",
386
- "group": "filters",
497
+ "group": "tools",
387
498
  "binding": {
388
- "name": "data.connectorMode.standaloneModeFilters.tools.excluded",
499
+ "name": "data.tools.excluded",
389
500
  "type": "zeebe:input"
390
501
  },
391
- "condition": {
392
- "allMatch": [
393
- {
394
- "property": "data.connectorMode.operation.type",
395
- "oneOf": ["tools/call", "tools/list"],
396
- "type": "simple"
397
- },
398
- {
399
- "property": "data.connectorMode.type",
400
- "equals": "standalone",
401
- "type": "simple"
402
- }
403
- ]
404
- },
405
502
  "type": "Text"
406
503
  },
407
504
  {
408
- "id": "data.connectorMode.standaloneModeFilters.resources.included",
409
- "label": "Included resources",
410
- "description": "List of resources that can be accessed by the MCP client. By default, all resources are allowed.",
411
- "optional": true,
412
- "feel": "required",
413
- "group": "filters",
505
+ "id": "version",
506
+ "label": "Version",
507
+ "description": "Version of the element template",
508
+ "value": "1",
509
+ "group": "connector",
414
510
  "binding": {
415
- "name": "data.connectorMode.standaloneModeFilters.resources.included",
416
- "type": "zeebe:input"
417
- },
418
- "condition": {
419
- "allMatch": [
420
- {
421
- "property": "data.connectorMode.operation.type",
422
- "oneOf": [
423
- "resources/read",
424
- "resources/list",
425
- "resources/templates/list"
426
- ],
427
- "type": "simple"
428
- },
429
- {
430
- "property": "data.connectorMode.type",
431
- "equals": "standalone",
432
- "type": "simple"
433
- }
434
- ]
511
+ "key": "elementTemplateVersion",
512
+ "type": "zeebe:taskHeader"
435
513
  },
436
- "type": "Text"
514
+ "type": "Hidden"
437
515
  },
438
516
  {
439
- "id": "data.connectorMode.standaloneModeFilters.resources.excluded",
440
- "label": "Excluded resources",
441
- "description": "List of resources that are not allowed to be accessed by the MCP client. Will override any included resources.",
442
- "optional": true,
443
- "feel": "required",
444
- "group": "filters",
517
+ "id": "id",
518
+ "label": "ID",
519
+ "description": "ID of the element template",
520
+ "value": "io.camunda.connectors.agenticai.mcp.client.v0",
521
+ "group": "connector",
445
522
  "binding": {
446
- "name": "data.connectorMode.standaloneModeFilters.resources.excluded",
447
- "type": "zeebe:input"
523
+ "key": "elementTemplateId",
524
+ "type": "zeebe:taskHeader"
448
525
  },
449
- "condition": {
450
- "allMatch": [
451
- {
452
- "property": "data.connectorMode.operation.type",
453
- "oneOf": [
454
- "resources/read",
455
- "resources/list",
456
- "resources/templates/list"
457
- ],
458
- "type": "simple"
459
- },
460
- {
461
- "property": "data.connectorMode.type",
462
- "equals": "standalone",
463
- "type": "simple"
464
- }
465
- ]
526
+ "type": "Hidden"
527
+ },
528
+ {
529
+ "id": "resultVariable",
530
+ "label": "Result variable",
531
+ "description": "Name of variable to store the response in",
532
+ "value": "toolCallResult",
533
+ "group": "output",
534
+ "binding": {
535
+ "key": "resultVariable",
536
+ "type": "zeebe:taskHeader"
466
537
  },
467
- "type": "Text"
538
+ "type": "String"
468
539
  },
469
540
  {
470
- "id": "data.connectorMode.standaloneModeFilters.prompts.included",
471
- "label": "Included prompts",
472
- "description": "List of prompts that can be accessed by the MCP client. By default, all prompts are allowed.",
473
- "optional": true,
541
+ "id": "resultExpression",
542
+ "label": "Result expression",
543
+ "description": "Expression to map the response into process variables",
474
544
  "feel": "required",
475
- "group": "filters",
545
+ "group": "output",
476
546
  "binding": {
477
- "name": "data.connectorMode.standaloneModeFilters.prompts.included",
478
- "type": "zeebe:input"
479
- },
480
- "condition": {
481
- "allMatch": [
482
- {
483
- "property": "data.connectorMode.operation.type",
484
- "oneOf": ["prompts/get", "prompts/list"],
485
- "type": "simple"
486
- },
487
- {
488
- "property": "data.connectorMode.type",
489
- "equals": "standalone",
490
- "type": "simple"
491
- }
492
- ]
547
+ "key": "resultExpression",
548
+ "type": "zeebe:taskHeader"
493
549
  },
494
550
  "type": "Text"
495
551
  },
496
552
  {
497
- "id": "data.connectorMode.standaloneModeFilters.prompts.excluded",
498
- "label": "Excluded prompts",
499
- "description": "List of prompts that are not allowed to be accessed by the MCP client. Will override any included prompts.",
500
- "optional": true,
553
+ "id": "errorExpression",
554
+ "label": "Error expression",
555
+ "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
501
556
  "feel": "required",
502
- "group": "filters",
557
+ "group": "error",
503
558
  "binding": {
504
- "name": "data.connectorMode.standaloneModeFilters.prompts.excluded",
505
- "type": "zeebe:input"
506
- },
507
- "condition": {
508
- "allMatch": [
509
- {
510
- "property": "data.connectorMode.operation.type",
511
- "oneOf": ["prompts/get", "prompts/list"],
512
- "type": "simple"
513
- },
514
- {
515
- "property": "data.connectorMode.type",
516
- "equals": "standalone",
517
- "type": "simple"
518
- }
519
- ]
520
- },
521
- "type": "Text"
522
- },
523
- {
524
- "id": "data.connectorMode.toolModeFilters.tools.included",
525
- "label": "Included tools",
526
- "description": "List of tools that can be used by the MCP client. By default, all tools are allowed.",
527
- "optional": true,
528
- "feel": "required",
529
- "group": "filters",
530
- "binding": {
531
- "name": "data.connectorMode.toolModeFilters.tools.included",
532
- "type": "zeebe:input"
533
- },
534
- "condition": {
535
- "property": "data.connectorMode.type",
536
- "equals": "aiAgentTool",
537
- "type": "simple"
538
- },
539
- "type": "Text"
540
- },
541
- {
542
- "id": "data.connectorMode.toolModeFilters.tools.excluded",
543
- "label": "Excluded tools",
544
- "description": "List of tools that are not allowed to be used by the MCP client. Will override any included tools.",
545
- "optional": true,
546
- "feel": "required",
547
- "group": "filters",
548
- "binding": {
549
- "name": "data.connectorMode.toolModeFilters.tools.excluded",
550
- "type": "zeebe:input"
551
- },
552
- "condition": {
553
- "property": "data.connectorMode.type",
554
- "equals": "aiAgentTool",
555
- "type": "simple"
556
- },
557
- "type": "Text"
558
- },
559
- {
560
- "id": "version",
561
- "label": "Version",
562
- "description": "Version of the element template",
563
- "value": "2",
564
- "group": "connector",
565
- "binding": {
566
- "key": "elementTemplateVersion",
567
- "type": "zeebe:taskHeader"
568
- },
569
- "type": "Hidden"
570
- },
571
- {
572
- "id": "id",
573
- "label": "ID",
574
- "description": "ID of the element template",
575
- "value": "io.camunda.connectors.agenticai.mcp.client.v0",
576
- "group": "connector",
577
- "binding": {
578
- "key": "elementTemplateId",
579
- "type": "zeebe:taskHeader"
580
- },
581
- "type": "Hidden"
582
- },
583
- {
584
- "id": "resultVariable",
585
- "label": "Result variable",
586
- "description": "Name of variable to store the response in",
587
- "value": "toolCallResult",
588
- "group": "output",
589
- "binding": {
590
- "key": "resultVariable",
591
- "type": "zeebe:taskHeader"
592
- },
593
- "type": "String"
594
- },
595
- {
596
- "id": "resultExpression",
597
- "label": "Result expression",
598
- "description": "Expression to map the response into process variables",
599
- "feel": "required",
600
- "group": "output",
601
- "binding": {
602
- "key": "resultExpression",
603
- "type": "zeebe:taskHeader"
604
- },
605
- "type": "Text"
606
- },
607
- {
608
- "id": "errorExpression",
609
- "label": "Error expression",
610
- "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
611
- "feel": "required",
612
- "group": "error",
613
- "binding": {
614
- "key": "errorExpression",
615
- "type": "zeebe:taskHeader"
559
+ "key": "errorExpression",
560
+ "type": "zeebe:taskHeader"
616
561
  },
617
562
  "type": "Text"
618
563
  },
@@ -648,16 +593,14 @@
648
593
  },
649
594
  {
650
595
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
651
- "name": "MCP Client (early access)",
596
+ "name": "MCP Client",
652
597
  "id": "io.camunda.connectors.agenticai.mcp.client.v0",
653
598
  "description": "MCP (Model Context Protocol) client using MCP connections configured on the connector runtime.",
654
- "metadata": {
655
- "keywords": []
656
- },
657
- "version": 1,
599
+ "documentationRef": "https://docs.camunda.io/docs/8.9/components/connectors/out-of-the-box-connectors/agentic-ai-mcp-client-connector/",
600
+ "version": 2,
658
601
  "category": {
659
- "id": "connectors",
660
- "name": "Connectors"
602
+ "id": "aiTools",
603
+ "name": "AI Tools"
661
604
  },
662
605
  "appliesTo": ["bpmn:Task"],
663
606
  "elementType": {
@@ -681,8 +624,8 @@
681
624
  "label": "Operation"
682
625
  },
683
626
  {
684
- "id": "tools",
685
- "label": "Tools",
627
+ "id": "filters",
628
+ "label": "Filters",
686
629
  "openByDefault": false
687
630
  },
688
631
  {
@@ -779,13 +722,33 @@
779
722
  },
780
723
  "type": "Dropdown",
781
724
  "choices": [
725
+ {
726
+ "name": "List Tools",
727
+ "value": "tools/list"
728
+ },
782
729
  {
783
730
  "name": "Call Tool",
784
731
  "value": "tools/call"
785
732
  },
786
733
  {
787
- "name": "List Tools",
788
- "value": "tools/list"
734
+ "name": "List Resources",
735
+ "value": "resources/list"
736
+ },
737
+ {
738
+ "name": "List Resource Templates",
739
+ "value": "resources/templates/list"
740
+ },
741
+ {
742
+ "name": "Read Resource",
743
+ "value": "resources/read"
744
+ },
745
+ {
746
+ "name": "List Prompts",
747
+ "value": "prompts/list"
748
+ },
749
+ {
750
+ "name": "Get Prompt",
751
+ "value": "prompts/get"
789
752
  }
790
753
  ]
791
754
  },
@@ -846,6 +809,93 @@
846
809
  },
847
810
  "type": "String"
848
811
  },
812
+ {
813
+ "id": "data.connectorMode.operation.resourceUri",
814
+ "label": "Resource URI",
815
+ "description": "The URI of the resource to read.",
816
+ "optional": false,
817
+ "constraints": {
818
+ "notEmpty": true
819
+ },
820
+ "feel": "optional",
821
+ "group": "operation",
822
+ "binding": {
823
+ "name": "data.connectorMode.operation.resourceUri",
824
+ "type": "zeebe:input"
825
+ },
826
+ "condition": {
827
+ "allMatch": [
828
+ {
829
+ "property": "data.connectorMode.operation.type",
830
+ "equals": "resources/read",
831
+ "type": "simple"
832
+ },
833
+ {
834
+ "property": "data.connectorMode.type",
835
+ "equals": "standalone",
836
+ "type": "simple"
837
+ }
838
+ ]
839
+ },
840
+ "type": "String"
841
+ },
842
+ {
843
+ "id": "data.connectorMode.operation.promptName",
844
+ "label": "Prompt name",
845
+ "description": "The name of the prompt to get.",
846
+ "optional": false,
847
+ "constraints": {
848
+ "notEmpty": true
849
+ },
850
+ "feel": "optional",
851
+ "group": "operation",
852
+ "binding": {
853
+ "name": "data.connectorMode.operation.promptName",
854
+ "type": "zeebe:input"
855
+ },
856
+ "condition": {
857
+ "allMatch": [
858
+ {
859
+ "property": "data.connectorMode.operation.type",
860
+ "equals": "prompts/get",
861
+ "type": "simple"
862
+ },
863
+ {
864
+ "property": "data.connectorMode.type",
865
+ "equals": "standalone",
866
+ "type": "simple"
867
+ }
868
+ ]
869
+ },
870
+ "type": "String"
871
+ },
872
+ {
873
+ "id": "data.connectorMode.operation.promptArguments",
874
+ "label": "Prompt arguments",
875
+ "description": "The arguments to pass to the prompt generation.",
876
+ "optional": true,
877
+ "feel": "required",
878
+ "group": "operation",
879
+ "binding": {
880
+ "name": "data.connectorMode.operation.promptArguments",
881
+ "type": "zeebe:input"
882
+ },
883
+ "condition": {
884
+ "allMatch": [
885
+ {
886
+ "property": "data.connectorMode.operation.type",
887
+ "equals": "prompts/get",
888
+ "type": "simple"
889
+ },
890
+ {
891
+ "property": "data.connectorMode.type",
892
+ "equals": "standalone",
893
+ "type": "simple"
894
+ }
895
+ ]
896
+ },
897
+ "type": "String"
898
+ },
849
899
  {
850
900
  "id": "data.connectorMode.toolOperation.method",
851
901
  "label": "Method",
@@ -890,269 +940,216 @@
890
940
  "type": "String"
891
941
  },
892
942
  {
893
- "id": "data.tools.included",
943
+ "id": "data.connectorMode.standaloneModeFilters.tools.included",
894
944
  "label": "Included tools",
895
945
  "description": "List of tools that can be used by the MCP client. By default, all tools are allowed.",
896
946
  "optional": true,
897
947
  "feel": "required",
898
- "group": "tools",
948
+ "group": "filters",
899
949
  "binding": {
900
- "name": "data.tools.included",
950
+ "name": "data.connectorMode.standaloneModeFilters.tools.included",
901
951
  "type": "zeebe:input"
902
952
  },
953
+ "condition": {
954
+ "allMatch": [
955
+ {
956
+ "property": "data.connectorMode.operation.type",
957
+ "oneOf": ["tools/call", "tools/list"],
958
+ "type": "simple"
959
+ },
960
+ {
961
+ "property": "data.connectorMode.type",
962
+ "equals": "standalone",
963
+ "type": "simple"
964
+ }
965
+ ]
966
+ },
903
967
  "type": "Text"
904
968
  },
905
969
  {
906
- "id": "data.tools.excluded",
970
+ "id": "data.connectorMode.standaloneModeFilters.tools.excluded",
907
971
  "label": "Excluded tools",
908
972
  "description": "List of tools that are not allowed to be used by the MCP client. Will override any included tools.",
909
973
  "optional": true,
910
974
  "feel": "required",
911
- "group": "tools",
975
+ "group": "filters",
912
976
  "binding": {
913
- "name": "data.tools.excluded",
977
+ "name": "data.connectorMode.standaloneModeFilters.tools.excluded",
914
978
  "type": "zeebe:input"
915
979
  },
916
- "type": "Text"
917
- },
918
- {
919
- "id": "version",
920
- "label": "Version",
921
- "description": "Version of the element template",
922
- "value": "1",
923
- "group": "connector",
924
- "binding": {
925
- "key": "elementTemplateVersion",
926
- "type": "zeebe:taskHeader"
927
- },
928
- "type": "Hidden"
929
- },
930
- {
931
- "id": "id",
932
- "label": "ID",
933
- "description": "ID of the element template",
934
- "value": "io.camunda.connectors.agenticai.mcp.client.v0",
935
- "group": "connector",
936
- "binding": {
937
- "key": "elementTemplateId",
938
- "type": "zeebe:taskHeader"
939
- },
940
- "type": "Hidden"
941
- },
942
- {
943
- "id": "resultVariable",
944
- "label": "Result variable",
945
- "description": "Name of variable to store the response in",
946
- "value": "toolCallResult",
947
- "group": "output",
948
- "binding": {
949
- "key": "resultVariable",
950
- "type": "zeebe:taskHeader"
951
- },
952
- "type": "String"
953
- },
954
- {
955
- "id": "resultExpression",
956
- "label": "Result expression",
957
- "description": "Expression to map the response into process variables",
958
- "feel": "required",
959
- "group": "output",
960
- "binding": {
961
- "key": "resultExpression",
962
- "type": "zeebe:taskHeader"
980
+ "condition": {
981
+ "allMatch": [
982
+ {
983
+ "property": "data.connectorMode.operation.type",
984
+ "oneOf": ["tools/call", "tools/list"],
985
+ "type": "simple"
986
+ },
987
+ {
988
+ "property": "data.connectorMode.type",
989
+ "equals": "standalone",
990
+ "type": "simple"
991
+ }
992
+ ]
963
993
  },
964
994
  "type": "Text"
965
995
  },
966
996
  {
967
- "id": "errorExpression",
968
- "label": "Error expression",
969
- "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
997
+ "id": "data.connectorMode.standaloneModeFilters.resources.included",
998
+ "label": "Included resources",
999
+ "description": "List of resources that can be accessed by the MCP client. By default, all resources are allowed.",
1000
+ "optional": true,
970
1001
  "feel": "required",
971
- "group": "error",
1002
+ "group": "filters",
972
1003
  "binding": {
973
- "key": "errorExpression",
974
- "type": "zeebe:taskHeader"
1004
+ "name": "data.connectorMode.standaloneModeFilters.resources.included",
1005
+ "type": "zeebe:input"
1006
+ },
1007
+ "condition": {
1008
+ "allMatch": [
1009
+ {
1010
+ "property": "data.connectorMode.operation.type",
1011
+ "oneOf": [
1012
+ "resources/read",
1013
+ "resources/list",
1014
+ "resources/templates/list"
1015
+ ],
1016
+ "type": "simple"
1017
+ },
1018
+ {
1019
+ "property": "data.connectorMode.type",
1020
+ "equals": "standalone",
1021
+ "type": "simple"
1022
+ }
1023
+ ]
975
1024
  },
976
1025
  "type": "Text"
977
1026
  },
978
1027
  {
979
- "id": "retryCount",
980
- "label": "Retries",
981
- "description": "Number of retries",
982
- "value": "3",
983
- "feel": "optional",
984
- "group": "retries",
1028
+ "id": "data.connectorMode.standaloneModeFilters.resources.excluded",
1029
+ "label": "Excluded resources",
1030
+ "description": "List of resources that are not allowed to be accessed by the MCP client. Will override any included resources.",
1031
+ "optional": true,
1032
+ "feel": "required",
1033
+ "group": "filters",
985
1034
  "binding": {
986
- "property": "retries",
987
- "type": "zeebe:taskDefinition"
1035
+ "name": "data.connectorMode.standaloneModeFilters.resources.excluded",
1036
+ "type": "zeebe:input"
988
1037
  },
989
- "type": "String"
990
- },
991
- {
992
- "id": "retryBackoff",
993
- "label": "Retry backoff",
994
- "description": "ISO-8601 duration to wait between retries",
995
- "value": "PT0S",
996
- "group": "retries",
997
- "binding": {
998
- "key": "retryBackoff",
999
- "type": "zeebe:taskHeader"
1038
+ "condition": {
1039
+ "allMatch": [
1040
+ {
1041
+ "property": "data.connectorMode.operation.type",
1042
+ "oneOf": [
1043
+ "resources/read",
1044
+ "resources/list",
1045
+ "resources/templates/list"
1046
+ ],
1047
+ "type": "simple"
1048
+ },
1049
+ {
1050
+ "property": "data.connectorMode.type",
1051
+ "equals": "standalone",
1052
+ "type": "simple"
1053
+ }
1054
+ ]
1000
1055
  },
1001
- "type": "String"
1002
- }
1003
- ],
1004
- "icon": {
1005
- "contents": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIiBmaWxsPSJub25lIiB2aWV3Qm94PSIwIDAgMjAwIDIwMCI+CiAgICA8cGF0aCBkPSJNMjUgOTcuODUyOEw5Mi44ODIzIDI5Ljk3MDZDMTAyLjI1NSAyMC41OTggMTE3LjQ1MSAyMC41OTggMTI2LjgyMyAyOS45NzA2VjI5Ljk3MDZDMTM2LjE5NiAzOS4zNDMxIDEzNi4xOTYgNTQuNTM5MSAxMjYuODIzIDYzLjkxMTdMNzUuNTU4MSAxMTUuMTc3IiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjEyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KICAgIDxwYXRoIGQ9Ik03Ni4yNjUzIDExNC40N0wxMjYuODIzIDYzLjkxMTdDMTM2LjE5NiA1NC41MzkxIDE1MS4zOTIgNTQuNTM5MSAxNjAuNzY1IDYzLjkxMTdMMTYxLjExOCA2NC4yNjUyQzE3MC40OTEgNzMuNjM3OCAxNzAuNDkxIDg4LjgzMzggMTYxLjExOCA5OC4yMDYzTDk5LjcyNDggMTU5LjZDOTYuNjAwNiAxNjIuNzI0IDk2LjYwMDYgMTY3Ljc4OSA5OS43MjQ4IDE3MC45MTNMMTEyLjMzMSAxODMuNTIiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMTIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgogICAgPHBhdGggZD0iTTEwOS44NTMgNDYuOTQxMUw1OS42NDgyIDk3LjE0NTdDNTAuMjc1NyAxMDYuNTE4IDUwLjI3NTcgMTIxLjcxNCA1OS42NDgyIDEzMS4wODdWMTMxLjA4N0M2OS4wMjA4IDE0MC40NTkgODQuMjE2OCAxNDAuNDU5IDkzLjU4OTQgMTMxLjA4N0wxNDMuNzk0IDgwLjg4MjIiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMTIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgo8L3N2Zz4K"
1006
- }
1007
- },
1008
- {
1009
- "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1010
- "name": "MCP Client (early access)",
1011
- "id": "io.camunda.connectors.agenticai.mcp.client.v0",
1012
- "description": "MCP (Model Context Protocol) client using MCP connections configured on the connector runtime. Only supports tool operations.",
1013
- "metadata": {
1014
- "keywords": []
1015
- },
1016
- "version": 0,
1017
- "category": {
1018
- "id": "connectors",
1019
- "name": "Connectors"
1020
- },
1021
- "appliesTo": ["bpmn:Task"],
1022
- "elementType": {
1023
- "value": "bpmn:ServiceTask"
1024
- },
1025
- "engines": {
1026
- "camunda": "^8.8"
1027
- },
1028
- "groups": [
1029
- {
1030
- "id": "client",
1031
- "label": "MCP Client"
1032
- },
1033
- {
1034
- "id": "tools",
1035
- "label": "Tools"
1036
- },
1037
- {
1038
- "id": "operation",
1039
- "label": "Operation",
1040
- "openByDefault": false
1041
- },
1042
- {
1043
- "id": "connector",
1044
- "label": "Connector"
1045
- },
1046
- {
1047
- "id": "output",
1048
- "label": "Output mapping"
1049
- },
1050
- {
1051
- "id": "error",
1052
- "label": "Error handling"
1056
+ "type": "Text"
1053
1057
  },
1054
1058
  {
1055
- "id": "retries",
1056
- "label": "Retries"
1057
- }
1058
- ],
1059
- "properties": [
1060
- {
1061
- "value": "io.camunda.agenticai:mcpclient:0",
1059
+ "id": "data.connectorMode.standaloneModeFilters.prompts.included",
1060
+ "label": "Included prompts",
1061
+ "description": "List of prompts that can be accessed by the MCP client. By default, all prompts are allowed.",
1062
+ "optional": true,
1063
+ "feel": "required",
1064
+ "group": "filters",
1062
1065
  "binding": {
1063
- "property": "type",
1064
- "type": "zeebe:taskDefinition"
1066
+ "name": "data.connectorMode.standaloneModeFilters.prompts.included",
1067
+ "type": "zeebe:input"
1065
1068
  },
1066
- "type": "Hidden"
1067
- },
1068
- {
1069
- "value": "mcpClient",
1070
- "binding": {
1071
- "name": "io.camunda.agenticai.gateway.type",
1072
- "type": "zeebe:property"
1069
+ "condition": {
1070
+ "allMatch": [
1071
+ {
1072
+ "property": "data.connectorMode.operation.type",
1073
+ "oneOf": ["prompts/get", "prompts/list"],
1074
+ "type": "simple"
1075
+ },
1076
+ {
1077
+ "property": "data.connectorMode.type",
1078
+ "equals": "standalone",
1079
+ "type": "simple"
1080
+ }
1081
+ ]
1073
1082
  },
1074
- "type": "Hidden"
1083
+ "type": "Text"
1075
1084
  },
1076
1085
  {
1077
- "id": "data.client.clientId",
1078
- "label": "Client ID",
1079
- "description": "The MCP client ID. This needs to be configured on your connector runtime.",
1080
- "optional": false,
1081
- "constraints": {
1082
- "notEmpty": true
1083
- },
1084
- "feel": "optional",
1085
- "group": "client",
1086
+ "id": "data.connectorMode.standaloneModeFilters.prompts.excluded",
1087
+ "label": "Excluded prompts",
1088
+ "description": "List of prompts that are not allowed to be accessed by the MCP client. Will override any included prompts.",
1089
+ "optional": true,
1090
+ "feel": "required",
1091
+ "group": "filters",
1086
1092
  "binding": {
1087
- "name": "data.client.clientId",
1093
+ "name": "data.connectorMode.standaloneModeFilters.prompts.excluded",
1088
1094
  "type": "zeebe:input"
1089
1095
  },
1090
- "type": "String"
1096
+ "condition": {
1097
+ "allMatch": [
1098
+ {
1099
+ "property": "data.connectorMode.operation.type",
1100
+ "oneOf": ["prompts/get", "prompts/list"],
1101
+ "type": "simple"
1102
+ },
1103
+ {
1104
+ "property": "data.connectorMode.type",
1105
+ "equals": "standalone",
1106
+ "type": "simple"
1107
+ }
1108
+ ]
1109
+ },
1110
+ "type": "Text"
1091
1111
  },
1092
1112
  {
1093
- "id": "data.tools.included",
1113
+ "id": "data.connectorMode.toolModeFilters.tools.included",
1094
1114
  "label": "Included tools",
1095
1115
  "description": "List of tools that can be used by the MCP client. By default, all tools are allowed.",
1096
1116
  "optional": true,
1097
1117
  "feel": "required",
1098
- "group": "tools",
1118
+ "group": "filters",
1099
1119
  "binding": {
1100
- "name": "data.tools.included",
1120
+ "name": "data.connectorMode.toolModeFilters.tools.included",
1101
1121
  "type": "zeebe:input"
1102
1122
  },
1123
+ "condition": {
1124
+ "property": "data.connectorMode.type",
1125
+ "equals": "aiAgentTool",
1126
+ "type": "simple"
1127
+ },
1103
1128
  "type": "Text"
1104
1129
  },
1105
1130
  {
1106
- "id": "data.tools.excluded",
1131
+ "id": "data.connectorMode.toolModeFilters.tools.excluded",
1107
1132
  "label": "Excluded tools",
1108
1133
  "description": "List of tools that are not allowed to be used by the MCP client. Will override any included tools.",
1109
1134
  "optional": true,
1110
1135
  "feel": "required",
1111
- "group": "tools",
1112
- "binding": {
1113
- "name": "data.tools.excluded",
1114
- "type": "zeebe:input"
1115
- },
1116
- "type": "Text"
1117
- },
1118
- {
1119
- "id": "data.operation.method",
1120
- "label": "Method",
1121
- "description": "The MCP method to be called, e.g. <code>tools/list</code>.",
1122
- "optional": false,
1123
- "value": "=toolCall.method",
1124
- "constraints": {
1125
- "notEmpty": true
1126
- },
1127
- "feel": "optional",
1128
- "group": "operation",
1136
+ "group": "filters",
1129
1137
  "binding": {
1130
- "name": "data.operation.method",
1138
+ "name": "data.connectorMode.toolModeFilters.tools.excluded",
1131
1139
  "type": "zeebe:input"
1132
1140
  },
1133
- "tooltip": "The method to be called on the MCP server. See the <a href=\"https://modelcontextprotocol.io/specification/2024-11-05/server\">MCP specification</a> for a list of available methods.<br><br>Currently supported:<br><code>tools/list</code>, <code>tools/call</code>",
1134
- "type": "String"
1135
- },
1136
- {
1137
- "id": "data.operation.params",
1138
- "label": "Parameters",
1139
- "description": "The parameters to be passed to the MCP method.",
1140
- "optional": true,
1141
- "value": "=toolCall.params",
1142
- "feel": "required",
1143
- "group": "operation",
1144
- "binding": {
1145
- "name": "data.operation.params",
1146
- "type": "zeebe:input"
1141
+ "condition": {
1142
+ "property": "data.connectorMode.type",
1143
+ "equals": "aiAgentTool",
1144
+ "type": "simple"
1147
1145
  },
1148
- "tooltip": "The parameter structure depends on the method being called. See the <a href=\"https://modelcontextprotocol.io/specification/2024-11-05/server/tools#calling-tools\">MCP specification</a> for an example of the parameters for the <code>tools/call</code> method.",
1149
- "type": "String"
1146
+ "type": "Text"
1150
1147
  },
1151
1148
  {
1152
1149
  "id": "version",
1153
1150
  "label": "Version",
1154
1151
  "description": "Version of the element template",
1155
- "value": "0",
1152
+ "value": "2",
1156
1153
  "group": "connector",
1157
1154
  "binding": {
1158
1155
  "key": "elementTemplateVersion",
@@ -1175,7 +1172,7 @@
1175
1172
  {
1176
1173
  "id": "resultVariable",
1177
1174
  "label": "Result variable",
1178
- "description": "Name of variable to store the response in",
1175
+ "description": "Name of variable to store the response in. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#result-variable\" target=\"_blank\">documentation</a>.",
1179
1176
  "value": "toolCallResult",
1180
1177
  "group": "output",
1181
1178
  "binding": {
@@ -1187,7 +1184,7 @@
1187
1184
  {
1188
1185
  "id": "resultExpression",
1189
1186
  "label": "Result expression",
1190
- "description": "Expression to map the response into process variables",
1187
+ "description": "Expression to map the response into process variables. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#result-expression\" target=\"_blank\">documentation</a>.",
1191
1188
  "feel": "required",
1192
1189
  "group": "output",
1193
1190
  "binding": {