@ema.co/mcp-toolkit 2026.2.5 → 2026.2.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.

Potentially problematic release.


This version of @ema.co/mcp-toolkit might be problematic. Click here for more details.

Files changed (67) hide show
  1. package/.context/public/guides/ema-user-guide.md +12 -16
  2. package/.context/public/guides/mcp-tools-guide.md +203 -334
  3. package/LICENSE +29 -21
  4. package/README.md +58 -35
  5. package/dist/mcp/domain/loop-detection.js +97 -0
  6. package/dist/mcp/domain/proto-constraints.js +284 -0
  7. package/dist/mcp/domain/structural-rules.js +12 -5
  8. package/dist/mcp/domain/validation-rules.js +107 -20
  9. package/dist/mcp/domain/workflow-graph-optimizer.js +235 -0
  10. package/dist/mcp/domain/workflow-graph-transforms.js +808 -0
  11. package/dist/mcp/domain/workflow-graph.js +374 -0
  12. package/dist/mcp/domain/workflow-optimizer.js +10 -4
  13. package/dist/mcp/guidance.js +54 -31
  14. package/dist/mcp/handlers/feedback/index.js +139 -0
  15. package/dist/mcp/handlers/feedback/store.js +262 -0
  16. package/dist/mcp/handlers/persona/index.js +237 -8
  17. package/dist/mcp/handlers/persona/schema.js +27 -0
  18. package/dist/mcp/handlers/reference/index.js +6 -4
  19. package/dist/mcp/handlers/workflow/index.js +25 -28
  20. package/dist/mcp/handlers/workflow/optimize.js +73 -33
  21. package/dist/mcp/handlers/workflow/validation.js +1 -1
  22. package/dist/mcp/knowledge-types.js +7 -0
  23. package/dist/mcp/knowledge.js +146 -834
  24. package/dist/mcp/resources.js +610 -18
  25. package/dist/mcp/server.js +233 -2156
  26. package/dist/mcp/tools.js +91 -5
  27. package/dist/sdk/generated/agent-catalog.js +615 -0
  28. package/dist/sdk/generated/deprecated-actions.js +182 -96
  29. package/dist/sdk/generated/proto-fields.js +2 -1
  30. package/dist/sdk/generated/protos/service/agent_qa/v1/agent_qa_pb.js +460 -21
  31. package/dist/sdk/generated/protos/service/auth/v1/auth_pb.js +11 -1
  32. package/dist/sdk/generated/protos/service/dataingest/v1/dataingest_pb.js +173 -66
  33. package/dist/sdk/generated/protos/service/feedback/v1/feedback_pb.js +43 -1
  34. package/dist/sdk/generated/protos/service/llmservice/v1/llmservice_pb.js +26 -21
  35. package/dist/sdk/generated/protos/service/persona/v1/persona_config_pb.js +100 -89
  36. package/dist/sdk/generated/protos/service/persona/v1/persona_pb.js +126 -116
  37. package/dist/sdk/generated/protos/service/persona/v1/shared_widgets/widget_types_pb.js +33 -1
  38. package/dist/sdk/generated/protos/service/persona/v1/voicebot_widgets/widget_types_pb.js +60 -11
  39. package/dist/sdk/generated/protos/service/tenant/v1/tenant_pb.js +1 -1
  40. package/dist/sdk/generated/protos/service/user/v1/user_pb.js +1 -1
  41. package/dist/sdk/generated/protos/service/utils/v1/agent_qa_pb.js +35 -0
  42. package/dist/sdk/generated/protos/service/workflows/v1/action_registry_pb.js +1 -1
  43. package/dist/sdk/generated/protos/service/workflows/v1/action_type_pb.js +6 -1
  44. package/dist/sdk/generated/protos/service/workflows/v1/chatbot_pb.js +106 -11
  45. package/dist/sdk/generated/protos/service/workflows/v1/common_forms_pb.js +1 -1
  46. package/dist/sdk/generated/protos/service/workflows/v1/coordinator_pb.js +1 -1
  47. package/dist/sdk/generated/protos/service/workflows/v1/external_actions_pb.js +31 -1
  48. package/dist/sdk/generated/protos/service/workflows/v1/well_known_pb.js +5 -1
  49. package/dist/sdk/generated/protos/service/workflows/v1/workflow_pb.js +1 -1
  50. package/dist/sdk/generated/protos/util/tracking_metadata_pb.js +1 -1
  51. package/dist/sdk/generated/widget-catalog.js +60 -0
  52. package/docs/README.md +17 -9
  53. package/package.json +2 -2
  54. package/.context/public/guides/dashboard-operations.md +0 -286
  55. package/.context/public/guides/email-patterns.md +0 -125
  56. package/dist/mcp/domain/intent-architect.js +0 -914
  57. package/dist/mcp/domain/quality-gates.js +0 -110
  58. package/dist/mcp/domain/workflow-execution-analyzer.js +0 -412
  59. package/dist/mcp/domain/workflow-intent.js +0 -1806
  60. package/dist/mcp/domain/workflow-merge.js +0 -449
  61. package/dist/mcp/domain/workflow-tracer.js +0 -648
  62. package/dist/mcp/domain/workflow-transformer.js +0 -742
  63. package/dist/mcp/handlers/persona/intent.js +0 -141
  64. package/dist/mcp/handlers/workflow/analyze.js +0 -119
  65. package/dist/mcp/handlers/workflow/compare.js +0 -70
  66. package/dist/mcp/handlers/workflow/generate.js +0 -384
  67. package/dist/mcp/handlers-consolidated.js +0 -333
@@ -4,8 +4,8 @@
4
4
  * PRIMARY SOURCE: API via client.listActions() where deprecated === true
5
5
  * This file is FALLBACK only when API is unavailable.
6
6
  *
7
- * Generated at: 2026-01-26T00:00:00.000Z
8
- * Source: manual (pending first GH Actions sync)
7
+ * Generated at: 2026-02-13T06:42:33.243Z
8
+ * Source: ../ema-repos
9
9
  *
10
10
  * DO NOT EDIT MANUALLY - regenerate with: npm run generate:deprecated-actions
11
11
  */
@@ -15,112 +15,188 @@
15
15
  */
16
16
  export const DEPRECATED_ACTIONS_WITH_REPLACEMENT = [
17
17
  {
18
- action: "search",
19
- version: "v0",
20
- replacement: "search",
21
- replacementVersion: "v2",
22
- migrationNotes: "v2 requires datastore_configs input (mandatory)",
23
- source: "registered_actions.py",
18
+ "action": "call_llm",
19
+ "version": "v0",
20
+ "environment": "all",
21
+ "source": "system_agents/prod/call_llm_def.txtpb",
22
+ "replacement": "call_llm",
23
+ "replacementVersion": "v2",
24
+ "migrationNotes": "v2 uses meta_respond_v2"
24
25
  },
25
26
  {
26
- action: "web_search",
27
- version: "v0",
28
- replacement: "live_web_search or ai_web_search",
29
- migrationNotes: "Split into two specialized actions",
30
- source: "registered_actions.py",
27
+ "action": "custom_agent",
28
+ "version": "v0",
29
+ "environment": "all",
30
+ "source": "system_agents/prod/custom_agent_def.txtpb",
31
+ "replacement": "custom_agent",
32
+ "replacementVersion": "v1"
31
33
  },
32
34
  {
33
- action: "call_llm",
34
- version: "v0",
35
- replacement: "call_llm",
36
- replacementVersion: "v2",
37
- migrationNotes: "v2 uses meta_respond_v2",
38
- source: "registered_actions.py",
35
+ "action": "fixed_response",
36
+ "version": "v0",
37
+ "environment": "all",
38
+ "source": "system_agents/prod/fixed_response_def.txtpb",
39
+ "replacement": "fixed_response",
40
+ "replacementVersion": "v1"
39
41
  },
40
42
  {
41
- action: "combine_external_action_and_search_results",
42
- version: "v0",
43
- replacement: "respond_for_external_actions",
44
- migrationNotes: "Migration in progress",
45
- source: "registered_actions.py",
43
+ "action": "json_mapper",
44
+ "version": "v0",
45
+ "environment": "all",
46
+ "source": "system_agents/prod/json_mapper_def.txtpb",
47
+ "replacement": "json_mapper",
48
+ "replacementVersion": "v1"
46
49
  },
47
50
  {
48
- action: "human_collaboration",
49
- version: "v0",
50
- replacement: "general_hitl",
51
- migrationNotes: "More flexible HITL patterns",
52
- source: "registered_actions.py",
51
+ "action": "respond_with_sources",
52
+ "version": "v0",
53
+ "environment": "all",
54
+ "source": "system_agents/prod/respond_with_sources_def.txtpb",
55
+ "replacement": "respond_for_external_actions",
56
+ "migrationNotes": "Better tool result handling"
53
57
  },
54
58
  {
55
- action: "fixed_response",
56
- version: "v0",
57
- replacement: "fixed_response",
58
- replacementVersion: "v1",
59
- source: "registered_actions.py",
59
+ "action": "rule_validation_with_documents",
60
+ "version": "v0",
61
+ "environment": "all",
62
+ "source": "system_agents/prod/rule_validation_with_documents_def.txtpb",
63
+ "replacement": "rule_validation_with_documents",
64
+ "replacementVersion": "v1"
60
65
  },
61
66
  {
62
- action: "custom_agent",
63
- version: "v0",
64
- replacement: "custom_agent",
65
- replacementVersion: "v1",
66
- source: "registered_actions.py",
67
+ "action": "search",
68
+ "version": "v0",
69
+ "environment": "all",
70
+ "source": "system_agents/prod/search_def.txtpb",
71
+ "replacement": "search",
72
+ "replacementVersion": "v2",
73
+ "migrationNotes": "v2 requires datastore_configs input"
67
74
  },
68
75
  {
69
- action: "json_mapper",
70
- version: "v0",
71
- replacement: "json_mapper",
72
- replacementVersion: "v1",
73
- source: "registered_actions.py",
76
+ "action": "text_categorizer",
77
+ "version": "v0",
78
+ "environment": "all",
79
+ "source": "system_agents/prod/text_categorizer_def.txtpb",
80
+ "replacement": "text_categorizer",
81
+ "replacementVersion": "v1"
74
82
  },
75
83
  {
76
- action: "rule_validation_with_documents",
77
- version: "v0",
78
- replacement: "rule_validation_with_documents",
79
- replacementVersion: "v1",
80
- source: "registered_actions.py",
84
+ "action": "web_search",
85
+ "version": "v0",
86
+ "environment": "all",
87
+ "source": "system_agents/prod/web_search_def.txtpb",
88
+ "replacement": "live_web_search or ai_web_search",
89
+ "migrationNotes": "Split into two specialized actions"
81
90
  },
82
91
  {
83
- action: "text_categorizer",
84
- version: "v0",
85
- replacement: "text_categorizer",
86
- replacementVersion: "v1",
87
- source: "registered_actions.py",
88
- },
89
- {
90
- action: "respond_with_sources",
91
- version: "v0",
92
- replacement: "respond_for_external_actions",
93
- migrationNotes: "Better tool result handling",
94
- source: "registered_actions.py",
95
- },
96
- {
97
- action: "email_intelligent",
98
- version: "v0",
99
- replacement: "send_email_agent",
100
- replacementVersion: "v0",
101
- migrationNotes: "email_intelligent is deprecated, use send_email_agent for all email sending",
102
- source: "manual",
103
- },
92
+ "action": "combine_external_action_and_search_results",
93
+ "version": "v0",
94
+ "environment": "dev",
95
+ "source": "system_agents/dev/combine_external_action_and_search_results_def.txtpb",
96
+ "replacement": "respond_for_external_actions"
97
+ }
104
98
  ];
105
99
  /**
106
100
  * Deprecated actions without documented replacements.
107
101
  * These are typically internal actions or superseded functionality.
108
102
  */
109
103
  export const DEPRECATED_ACTIONS_NO_REPLACEMENT = [
110
- { action: "meta_respond", version: "all", environment: "all", migrationNotes: "Internal LLM response - do not use directly", source: "system_agents" },
111
- { action: "meta_respond_v2", version: "all", environment: "all", migrationNotes: "Internal LLM response - do not use directly", source: "system_agents" },
112
- { action: "ticket_respond_with_sources", version: "all", environment: "all", source: "system_agents" },
113
- { action: "text_with_sources_translation", version: "all", environment: "all", source: "system_agents" },
114
- { action: "document_categorizer", version: "all", environment: "all", source: "system_agents" },
115
- { action: "document_metasearch", version: "all", environment: "all", source: "system_agents" },
116
- { action: "combine_search_results", version: "all", environment: "all", source: "system_agents" },
117
- { action: "combine_text_with_sources", version: "all", environment: "all", source: "system_agents" },
118
- { action: "develop_outline", version: "all", environment: "all", source: "system_agents" },
119
- { action: "generate_document_using_outline", version: "all", environment: "all", source: "system_agents" },
120
- { action: "write_document", version: "all", environment: "all", source: "system_agents" },
121
- { action: "external_action_caller_v1", version: "all", environment: "dev", migrationNotes: "Use external_action_caller v0", source: "system_agents" },
122
- { action: "ticket_thread_sink", version: "all", environment: "dev", source: "system_agents" },
123
- { action: "call_llm_v1", version: "all", environment: "all", migrationNotes: "Use call_llm v2", source: "system_agents" },
104
+ {
105
+ "action": "ai_web_search",
106
+ "version": "v0",
107
+ "environment": "all",
108
+ "source": "system_agents/prod/ai_web_search_def.txtpb"
109
+ },
110
+ {
111
+ "action": "call_llm",
112
+ "version": "v1",
113
+ "environment": "all",
114
+ "source": "system_agents/prod/call_llm_v1_def.txtpb"
115
+ },
116
+ {
117
+ "action": "combine_search_results",
118
+ "version": "v0",
119
+ "environment": "all",
120
+ "source": "system_agents/prod/combine_search_results_def.txtpb"
121
+ },
122
+ {
123
+ "action": "combine_text_with_sources",
124
+ "version": "v0",
125
+ "environment": "all",
126
+ "source": "system_agents/prod/combine_text_with_sources_def.txtpb"
127
+ },
128
+ {
129
+ "action": "develop_document_outline",
130
+ "version": "v0",
131
+ "environment": "all",
132
+ "source": "system_agents/prod/develop_outline_def.txtpb"
133
+ },
134
+ {
135
+ "action": "document_categorizer",
136
+ "version": "v0",
137
+ "environment": "all",
138
+ "source": "system_agents/prod/document_categorizer_def.txtpb"
139
+ },
140
+ {
141
+ "action": "document_metasearch",
142
+ "version": "v0",
143
+ "environment": "all",
144
+ "source": "system_agents/prod/document_metasearch_def.txtpb"
145
+ },
146
+ {
147
+ "action": "generate_document_using_outline",
148
+ "version": "v0",
149
+ "environment": "all",
150
+ "source": "system_agents/prod/generate_document_using_outline_def.txtpb"
151
+ },
152
+ {
153
+ "action": "general_hitl",
154
+ "version": "v1",
155
+ "environment": "all",
156
+ "source": "system_agents/prod/human_collaboration_def.txtpb"
157
+ },
158
+ {
159
+ "action": "meta_respond",
160
+ "version": "v0",
161
+ "environment": "all",
162
+ "source": "system_agents/prod/meta_respond_def.txtpb"
163
+ },
164
+ {
165
+ "action": "meta_respond",
166
+ "version": "v2",
167
+ "environment": "all",
168
+ "source": "system_agents/prod/meta_respond_v2_def.txtpb"
169
+ },
170
+ {
171
+ "action": "text_with_sources_translation",
172
+ "version": "v0",
173
+ "environment": "all",
174
+ "source": "system_agents/prod/text_with_sources_translation_def.txtpb"
175
+ },
176
+ {
177
+ "action": "ticket_respond_with_sources",
178
+ "version": "v0",
179
+ "environment": "all",
180
+ "source": "system_agents/prod/ticket_respond_with_sources_def.txtpb"
181
+ },
182
+ {
183
+ "action": "write_document",
184
+ "version": "v0",
185
+ "environment": "all",
186
+ "source": "system_agents/prod/write_document_def.txtpb"
187
+ },
188
+ {
189
+ "action": "external_action_caller",
190
+ "version": "v1",
191
+ "environment": "dev",
192
+ "source": "system_agents/dev/external_action_caller_v1_def.txtpb"
193
+ },
194
+ {
195
+ "action": "ticket_thread_sink",
196
+ "version": "v0",
197
+ "environment": "dev",
198
+ "source": "system_agents/dev/ticket_thread_sink_def.txtpb"
199
+ }
124
200
  ];
125
201
  /**
126
202
  * All deprecated actions combined.
@@ -143,28 +219,38 @@ export const DEPRECATED_AGENT_TYPES = [
143
219
  "PRIOR_AUTHORISATION_AGENT",
144
220
  "CHATBOT_AGENT",
145
221
  "DEMO_PROPOSAL_MANAGEMENT_AGENT",
146
- "GENERALISED_RULE_VALIDATION_AGENT",
222
+ "GENERALISED_RULE_VALIDATION_AGENT"
147
223
  ];
148
224
  /**
149
225
  * Quick lookup map: "action/version" -> replacement info
150
226
  */
151
227
  export const DEPRECATED_ACTIONS_MAP = {
152
- "search/v0": { replacement: "search/v2", notes: "v2 requires datastore_configs input (mandatory)" },
153
- "web_search/v0": { replacement: "live_web_search or ai_web_search", notes: "Split into two specialized actions" },
228
+ "ai_web_search/v0": {},
154
229
  "call_llm/v0": { replacement: "call_llm/v2", notes: "v2 uses meta_respond_v2" },
155
- "combine_external_action_and_search_results/v0": { replacement: "respond_for_external_actions", notes: "Migration in progress" },
156
- "human_collaboration/v0": { replacement: "general_hitl", notes: "More flexible HITL patterns" },
157
- "fixed_response/v0": { replacement: "fixed_response/v1" },
230
+ "call_llm/v1": {},
231
+ "combine_search_results/v0": {},
232
+ "combine_text_with_sources/v0": {},
158
233
  "custom_agent/v0": { replacement: "custom_agent/v1" },
234
+ "develop_document_outline/v0": {},
235
+ "document_categorizer/v0": {},
236
+ "document_metasearch/v0": {},
237
+ "fixed_response/v0": { replacement: "fixed_response/v1" },
238
+ "generate_document_using_outline/v0": {},
239
+ "general_hitl/v1": {},
159
240
  "json_mapper/v0": { replacement: "json_mapper/v1" },
241
+ "meta_respond/v0": {},
242
+ "meta_respond/v2": {},
243
+ "respond_with_sources/v0": { replacement: "respond_for_external_actions", notes: "Better tool result handling" },
160
244
  "rule_validation_with_documents/v0": { replacement: "rule_validation_with_documents/v1" },
245
+ "search/v0": { replacement: "search/v2", notes: "v2 requires datastore_configs input" },
161
246
  "text_categorizer/v0": { replacement: "text_categorizer/v1" },
162
- "respond_with_sources/v0": { replacement: "respond_for_external_actions", notes: "Better tool result handling" },
163
- "email_intelligent/v0": { replacement: "send_email_agent/v0", notes: "email_intelligent is deprecated, use send_email_agent for all email sending" },
164
- "meta_respond/all": { notes: "Internal LLM response - do not use directly" },
165
- "meta_respond_v2/all": { notes: "Internal LLM response - do not use directly" },
166
- "external_action_caller_v1/all": { notes: "Use external_action_caller v0" },
167
- "call_llm_v1/all": { notes: "Use call_llm v2" },
247
+ "text_with_sources_translation/v0": {},
248
+ "ticket_respond_with_sources/v0": {},
249
+ "web_search/v0": { replacement: "live_web_search or ai_web_search", notes: "Split into two specialized actions" },
250
+ "write_document/v0": {},
251
+ "combine_external_action_and_search_results/v0": { replacement: "respond_for_external_actions" },
252
+ "external_action_caller/v1": {},
253
+ "ticket_thread_sink/v0": {},
168
254
  };
169
255
  /**
170
256
  * Check if an action is deprecated.
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Auto-generated protobuf field constants from Ema Platform proto definitions.
3
- * Generated at: 2026-01-18T07:30:25.350Z
3
+ * Generated at: 2026-02-13T06:42:27.676Z
4
4
  *
5
5
  * DO NOT EDIT MANUALLY - regenerate with: npm run generate:proto
6
6
  *
@@ -40,6 +40,7 @@ export const ColumnValueFields = {
40
40
  document_version_id_value: 15, // document_store.v1.DocumentVersionId
41
41
  formatted_value: 10, // string
42
42
  file_sources: 11, // repeated document_store.v1.FileSource
43
+ auxiliary_sources: 16, // repeated document_store.v1.AuxiliarySource
43
44
  confidence_score: 14, // workflows.v1.ConfidenceScore
44
45
  };
45
46
  /** Field numbers for ColumnValueWithId message */