mcp-dataverse 0.3.4 → 0.3.7
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.
- package/CAPABILITIES.md +7 -7
- package/README.md +44 -25
- package/dist/dataverse/dataverse-client-advanced.d.ts +6 -0
- package/dist/dataverse/dataverse-client-advanced.d.ts.map +1 -1
- package/dist/dataverse/dataverse-client-advanced.js +23 -2
- package/dist/dataverse/dataverse-client-advanced.js.map +1 -1
- package/dist/dataverse/dataverse-client.d.ts +3 -2
- package/dist/dataverse/dataverse-client.d.ts.map +1 -1
- package/dist/dataverse/dataverse-client.js +36 -9
- package/dist/dataverse/dataverse-client.js.map +1 -1
- package/dist/dataverse/dataverse-client.metadata.d.ts +1 -0
- package/dist/dataverse/dataverse-client.metadata.d.ts.map +1 -1
- package/dist/dataverse/dataverse-client.metadata.js +3 -0
- package/dist/dataverse/dataverse-client.metadata.js.map +1 -1
- package/dist/dataverse/http-client.d.ts +2 -0
- package/dist/dataverse/http-client.d.ts.map +1 -1
- package/dist/dataverse/http-client.js +2 -1
- package/dist/dataverse/http-client.js.map +1 -1
- package/dist/tools/actions.tools.d.ts.map +1 -1
- package/dist/tools/actions.tools.js +2 -4
- package/dist/tools/actions.tools.js.map +1 -1
- package/dist/tools/annotations.tools.d.ts.map +1 -1
- package/dist/tools/annotations.tools.js +41 -6
- package/dist/tools/annotations.tools.js.map +1 -1
- package/dist/tools/batch.tools.js +1 -1
- package/dist/tools/batch.tools.js.map +1 -1
- package/dist/tools/crud.tools.d.ts +18 -0
- package/dist/tools/crud.tools.d.ts.map +1 -1
- package/dist/tools/crud.tools.js +17 -4
- package/dist/tools/crud.tools.js.map +1 -1
- package/dist/tools/customization.tools.d.ts +34 -0
- package/dist/tools/customization.tools.d.ts.map +1 -1
- package/dist/tools/customization.tools.js +95 -6
- package/dist/tools/customization.tools.js.map +1 -1
- package/dist/tools/environment.tools.d.ts +54 -0
- package/dist/tools/environment.tools.d.ts.map +1 -1
- package/dist/tools/environment.tools.js +115 -2
- package/dist/tools/environment.tools.js.map +1 -1
- package/dist/tools/guardrails.d.ts.map +1 -1
- package/dist/tools/guardrails.js +1 -0
- package/dist/tools/guardrails.js.map +1 -1
- package/dist/tools/metadata.tools.d.ts +83 -2
- package/dist/tools/metadata.tools.d.ts.map +1 -1
- package/dist/tools/metadata.tools.js +122 -2
- package/dist/tools/metadata.tools.js.map +1 -1
- package/dist/tools/output.utils.d.ts +43 -1
- package/dist/tools/output.utils.d.ts.map +1 -1
- package/dist/tools/output.utils.js +49 -2
- package/dist/tools/output.utils.js.map +1 -1
- package/dist/tools/quality.tools.d.ts.map +1 -1
- package/dist/tools/quality.tools.js +47 -26
- package/dist/tools/quality.tools.js.map +1 -1
- package/dist/tools/query.tools.d.ts +12 -0
- package/dist/tools/query.tools.d.ts.map +1 -1
- package/dist/tools/query.tools.js +60 -8
- package/dist/tools/query.tools.js.map +1 -1
- package/dist/tools/search.tools.js +13 -13
- package/dist/tools/search.tools.js.map +1 -1
- package/dist/tools/solution.tools.d.ts.map +1 -1
- package/dist/tools/solution.tools.js +3 -7
- package/dist/tools/solution.tools.js.map +1 -1
- package/dist/tools/teams.tools.d.ts +34 -2
- package/dist/tools/teams.tools.d.ts.map +1 -1
- package/dist/tools/teams.tools.js +53 -0
- package/dist/tools/teams.tools.js.map +1 -1
- package/dist/tools/trace.tools.d.ts.map +1 -1
- package/dist/tools/trace.tools.js +1 -8
- package/dist/tools/trace.tools.js.map +1 -1
- package/dist/tools/tracking.tools.d.ts.map +1 -1
- package/dist/tools/tracking.tools.js +25 -2
- package/dist/tools/tracking.tools.js.map +1 -1
- package/dist/tools/users.tools.d.ts +72 -0
- package/dist/tools/users.tools.d.ts.map +1 -1
- package/dist/tools/users.tools.js +175 -5
- package/dist/tools/users.tools.js.map +1 -1
- package/dist/tools/workflow.tools.d.ts +59 -1
- package/dist/tools/workflow.tools.d.ts.map +1 -1
- package/dist/tools/workflow.tools.js +294 -43
- package/dist/tools/workflow.tools.js.map +1 -1
- package/package.json +18 -4
- package/server.json +3 -3
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { esc } from "../dataverse/dataverse-client.utils.js";
|
|
3
3
|
import { formatData } from "./output.utils.js";
|
|
4
|
+
import { checkWriteGuardrails } from "./guardrails.js";
|
|
4
5
|
const ENV_VAR_TYPE_NAMES = {
|
|
5
6
|
100000000: "String",
|
|
6
7
|
100000001: "Number",
|
|
@@ -8,6 +9,12 @@ const ENV_VAR_TYPE_NAMES = {
|
|
|
8
9
|
100000003: "JSON",
|
|
9
10
|
100000004: "DataSource",
|
|
10
11
|
};
|
|
12
|
+
const ENV_VAR_TYPE_CODES = {
|
|
13
|
+
String: 100000000,
|
|
14
|
+
Integer: 100000001,
|
|
15
|
+
Boolean: 100000002,
|
|
16
|
+
JSON: 100000003,
|
|
17
|
+
};
|
|
11
18
|
export const environmentTools = [
|
|
12
19
|
{
|
|
13
20
|
name: "dataverse_get_environment_variable",
|
|
@@ -53,12 +60,67 @@ export const environmentTools = [
|
|
|
53
60
|
openWorldHint: true,
|
|
54
61
|
},
|
|
55
62
|
},
|
|
63
|
+
{
|
|
64
|
+
name: "dataverse_create_environment_variable",
|
|
65
|
+
description: "Creates a new Dataverse environment variable definition and sets its initial value. " +
|
|
66
|
+
"Use this when the variable does not yet exist — use dataverse_set_environment_variable to update an existing one. " +
|
|
67
|
+
"WHEN TO USE: Initial setup of configuration flags, feature toggles, or integration settings. " +
|
|
68
|
+
"BEST PRACTICES: Use a solution-prefixed schemaName (e.g. 'myprefix_MyConfig'); provide solutionUniqueName to register in a solution. WORKFLOW: manage_solution.",
|
|
69
|
+
inputSchema: {
|
|
70
|
+
type: "object",
|
|
71
|
+
properties: {
|
|
72
|
+
schemaName: {
|
|
73
|
+
type: "string",
|
|
74
|
+
description: "Schema name of the new variable (e.g. 'new_MyConfig'). Case-sensitive.",
|
|
75
|
+
},
|
|
76
|
+
displayName: {
|
|
77
|
+
type: "string",
|
|
78
|
+
description: "Human-readable display name",
|
|
79
|
+
},
|
|
80
|
+
type: {
|
|
81
|
+
type: "string",
|
|
82
|
+
enum: ["String", "Integer", "Boolean", "JSON"],
|
|
83
|
+
description: "Variable type",
|
|
84
|
+
},
|
|
85
|
+
value: { type: "string", description: "Initial value to set" },
|
|
86
|
+
description: { type: "string", description: "Optional description" },
|
|
87
|
+
defaultValue: {
|
|
88
|
+
type: "string",
|
|
89
|
+
description: "Optional default value (fallback when no override value is set)",
|
|
90
|
+
},
|
|
91
|
+
confirm: {
|
|
92
|
+
type: "boolean",
|
|
93
|
+
description: "Must be true — confirms intentional creation of a new environment variable definition",
|
|
94
|
+
},
|
|
95
|
+
},
|
|
96
|
+
required: ["schemaName", "displayName", "type", "value", "confirm"],
|
|
97
|
+
},
|
|
98
|
+
annotations: {
|
|
99
|
+
readOnlyHint: false,
|
|
100
|
+
destructiveHint: false,
|
|
101
|
+
idempotentHint: false,
|
|
102
|
+
openWorldHint: true,
|
|
103
|
+
},
|
|
104
|
+
},
|
|
56
105
|
];
|
|
57
106
|
const GetEnvVarInput = z.object({ schemaName: z.string().min(1) });
|
|
58
107
|
const SetEnvVarInput = z.object({
|
|
59
108
|
schemaName: z.string().min(1),
|
|
60
109
|
value: z.string(),
|
|
61
110
|
});
|
|
111
|
+
const CreateEnvVarInput = z.object({
|
|
112
|
+
schemaName: z.string().min(1),
|
|
113
|
+
displayName: z.string().min(1),
|
|
114
|
+
type: z.enum(["String", "Integer", "Boolean", "JSON"]),
|
|
115
|
+
value: z.string(),
|
|
116
|
+
description: z.string().optional(),
|
|
117
|
+
defaultValue: z.string().optional(),
|
|
118
|
+
confirm: z.literal(true, {
|
|
119
|
+
errorMap: () => ({
|
|
120
|
+
message: "Set confirm: true to create a new environment variable definition",
|
|
121
|
+
}),
|
|
122
|
+
}),
|
|
123
|
+
});
|
|
62
124
|
async function handleGetEnvironmentVariable(args, client) {
|
|
63
125
|
const { schemaName } = GetEnvVarInput.parse(args);
|
|
64
126
|
const defResult = await client.query("environmentvariabledefinitions", {
|
|
@@ -76,7 +138,10 @@ async function handleGetEnvironmentVariable(args, client) {
|
|
|
76
138
|
});
|
|
77
139
|
const defRecords = defResult.value;
|
|
78
140
|
if (defRecords.length === 0) {
|
|
79
|
-
throw new Error(`Environment variable '${schemaName}' not found`
|
|
141
|
+
throw new Error(`Environment variable '${schemaName}' not found. ` +
|
|
142
|
+
`Check the schema name (it is case-sensitive, e.g. 'new_MyConfig'). ` +
|
|
143
|
+
`To browse existing variables: Power Apps maker portal → Solutions → your solution → Environment Variables. ` +
|
|
144
|
+
`To create a new one: open a solution → New → More → Environment Variable.`);
|
|
80
145
|
}
|
|
81
146
|
const def = defRecords[0];
|
|
82
147
|
const defId = def["environmentvariabledefinitionid"];
|
|
@@ -117,7 +182,10 @@ async function handleSetEnvironmentVariable(args, client) {
|
|
|
117
182
|
});
|
|
118
183
|
const defRecords = defResult.value;
|
|
119
184
|
if (defRecords.length === 0) {
|
|
120
|
-
throw new Error(`Environment variable '${schemaName}' not found`
|
|
185
|
+
throw new Error(`Environment variable definition '${schemaName}' not found. ` +
|
|
186
|
+
`This tool can only update the value of an existing variable. ` +
|
|
187
|
+
`To create a new environment variable: Power Apps maker portal → Solutions → your solution → New → More → Environment variable. ` +
|
|
188
|
+
`Then call this tool to set its value.`);
|
|
121
189
|
}
|
|
122
190
|
const defId = defRecords[0]["environmentvariabledefinitionid"];
|
|
123
191
|
const valResult = await client.query("environmentvariablevalues", {
|
|
@@ -148,12 +216,57 @@ async function handleSetEnvironmentVariable(args, client) {
|
|
|
148
216
|
};
|
|
149
217
|
return formatData(`Environment variable '${schemaName}' set to new value`, response, ["Use dataverse_get_environment_variable to verify the update"]);
|
|
150
218
|
}
|
|
219
|
+
async function handleCreateEnvironmentVariable(args, client) {
|
|
220
|
+
const { schemaName, displayName, type, value, description, defaultValue } = CreateEnvVarInput.parse(args);
|
|
221
|
+
const writeWarnings = checkWriteGuardrails({
|
|
222
|
+
toolName: "dataverse_create_environment_variable",
|
|
223
|
+
}).map((w) => `[${w.severity.toUpperCase()}] ${w.code}: ${w.message}`);
|
|
224
|
+
const existing = await client.query("environmentvariabledefinitions", {
|
|
225
|
+
filter: `schemaname eq '${esc(schemaName)}'`,
|
|
226
|
+
select: ["environmentvariabledefinitionid"],
|
|
227
|
+
top: 1,
|
|
228
|
+
});
|
|
229
|
+
if (existing.value.length > 0) {
|
|
230
|
+
throw new Error(`Environment variable '${schemaName}' already exists. ` +
|
|
231
|
+
`Use dataverse_set_environment_variable to update its value.`);
|
|
232
|
+
}
|
|
233
|
+
const typeCode = ENV_VAR_TYPE_CODES[type] ?? 100000000;
|
|
234
|
+
const defBody = {
|
|
235
|
+
schemaname: schemaName,
|
|
236
|
+
displayname: displayName,
|
|
237
|
+
type: typeCode,
|
|
238
|
+
};
|
|
239
|
+
if (description)
|
|
240
|
+
defBody["description"] = description;
|
|
241
|
+
if (defaultValue !== undefined)
|
|
242
|
+
defBody["defaultvalue"] = defaultValue;
|
|
243
|
+
const defId = await client.createRecord("environmentvariabledefinitions", defBody);
|
|
244
|
+
const valId = await client.createRecord("environmentvariablevalues", {
|
|
245
|
+
value,
|
|
246
|
+
"EnvironmentVariableDefinitionId@odata.bind": `/environmentvariabledefinitions(${defId})`,
|
|
247
|
+
});
|
|
248
|
+
return formatData(`Environment variable '${schemaName}' created (type: ${type}, value: '${value}').`, {
|
|
249
|
+
schemaName,
|
|
250
|
+
displayName,
|
|
251
|
+
type,
|
|
252
|
+
typeCode,
|
|
253
|
+
definitionId: defId,
|
|
254
|
+
valueId: valId,
|
|
255
|
+
value,
|
|
256
|
+
...(writeWarnings.length > 0 && { warnings: writeWarnings }),
|
|
257
|
+
}, [
|
|
258
|
+
"Use dataverse_get_environment_variable to verify",
|
|
259
|
+
"Use dataverse_set_environment_variable to update the value later",
|
|
260
|
+
]);
|
|
261
|
+
}
|
|
151
262
|
export async function handleEnvironmentTool(name, args, client) {
|
|
152
263
|
switch (name) {
|
|
153
264
|
case "dataverse_get_environment_variable":
|
|
154
265
|
return handleGetEnvironmentVariable(args, client);
|
|
155
266
|
case "dataverse_set_environment_variable":
|
|
156
267
|
return handleSetEnvironmentVariable(args, client);
|
|
268
|
+
case "dataverse_create_environment_variable":
|
|
269
|
+
return handleCreateEnvironmentVariable(args, client);
|
|
157
270
|
default:
|
|
158
271
|
throw new Error(`Unknown environment tool: ${name}`);
|
|
159
272
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environment.tools.js","sourceRoot":"","sources":["../../src/tools/environment.tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,GAAG,EAAE,MAAM,wCAAwC,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"environment.tools.js","sourceRoot":"","sources":["../../src/tools/environment.tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guardrails.d.ts","sourceRoot":"","sources":["../../src/tools/guardrails.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;CACxC;
|
|
1
|
+
{"version":3,"file":"guardrails.d.ts","sourceRoot":"","sources":["../../src/tools/guardrails.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;CACxC;AAQD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GAAG,gBAAgB,EAAE,CA8BrB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GAAG,gBAAgB,EAAE,CAsBrB"}
|
package/dist/tools/guardrails.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guardrails.js","sourceRoot":"","sources":["../../src/tools/guardrails.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAQlF,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,kBAAkB;IAClB,uBAAuB;
|
|
1
|
+
{"version":3,"file":"guardrails.js","sourceRoot":"","sources":["../../src/tools/guardrails.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAQlF,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,kBAAkB;IAClB,uBAAuB;IACvB,yBAAyB;CAC1B,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAKpC;IACC,MAAM,QAAQ,GAAuB,EAAE,CAAC;IAExC,IAAI,MAAM,CAAC,GAAG,KAAK,SAAS,IAAI,MAAM,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC;QAClD,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,mCAAmC,MAAM,CAAC,GAAG,4CAA4C;YAClG,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjD,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,WAAW;YACjB,OAAO,EACL,8FAA8F;YAChG,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,WAAW;YACjB,OAAO,EACL,4EAA4E;YAC9E,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC;IACL,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAGpC;IACC,MAAM,QAAQ,GAAuB,EAAE,CAAC;IAExC,IAAI,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3C,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,gBAAgB;YACtB,OAAO,EACL,4FAA4F;YAC9F,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,yBAAyB,EAAE,CAAC;QAClD,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,UAAU;YAChB,OAAO,EACL,uEAAuE;YACzE,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC;IACL,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { DataverseAdvancedClient } from "../dataverse/dataverse-client-advanced.js";
|
|
2
2
|
export declare const metadataTools: ({
|
|
3
3
|
name: string;
|
|
4
4
|
description: string;
|
|
@@ -16,6 +16,11 @@ export declare const metadataTools: ({
|
|
|
16
16
|
tableName?: never;
|
|
17
17
|
entityLogicalName?: never;
|
|
18
18
|
attributeLogicalName?: never;
|
|
19
|
+
hasNotes?: never;
|
|
20
|
+
changeTrackingEnabled?: never;
|
|
21
|
+
isAuditEnabled?: never;
|
|
22
|
+
autoPublish?: never;
|
|
23
|
+
confirm?: never;
|
|
19
24
|
};
|
|
20
25
|
required: never[];
|
|
21
26
|
};
|
|
@@ -45,6 +50,11 @@ export declare const metadataTools: ({
|
|
|
45
50
|
tableName?: never;
|
|
46
51
|
entityLogicalName?: never;
|
|
47
52
|
attributeLogicalName?: never;
|
|
53
|
+
hasNotes?: never;
|
|
54
|
+
changeTrackingEnabled?: never;
|
|
55
|
+
isAuditEnabled?: never;
|
|
56
|
+
autoPublish?: never;
|
|
57
|
+
confirm?: never;
|
|
48
58
|
};
|
|
49
59
|
required: string[];
|
|
50
60
|
};
|
|
@@ -75,6 +85,11 @@ export declare const metadataTools: ({
|
|
|
75
85
|
tableName?: never;
|
|
76
86
|
entityLogicalName?: never;
|
|
77
87
|
attributeLogicalName?: never;
|
|
88
|
+
hasNotes?: never;
|
|
89
|
+
changeTrackingEnabled?: never;
|
|
90
|
+
isAuditEnabled?: never;
|
|
91
|
+
autoPublish?: never;
|
|
92
|
+
confirm?: never;
|
|
78
93
|
};
|
|
79
94
|
required: string[];
|
|
80
95
|
};
|
|
@@ -98,6 +113,11 @@ export declare const metadataTools: ({
|
|
|
98
113
|
tableName?: never;
|
|
99
114
|
entityLogicalName?: never;
|
|
100
115
|
attributeLogicalName?: never;
|
|
116
|
+
hasNotes?: never;
|
|
117
|
+
changeTrackingEnabled?: never;
|
|
118
|
+
isAuditEnabled?: never;
|
|
119
|
+
autoPublish?: never;
|
|
120
|
+
confirm?: never;
|
|
101
121
|
};
|
|
102
122
|
required: never[];
|
|
103
123
|
};
|
|
@@ -124,6 +144,11 @@ export declare const metadataTools: ({
|
|
|
124
144
|
tableName?: never;
|
|
125
145
|
entityLogicalName?: never;
|
|
126
146
|
attributeLogicalName?: never;
|
|
147
|
+
hasNotes?: never;
|
|
148
|
+
changeTrackingEnabled?: never;
|
|
149
|
+
isAuditEnabled?: never;
|
|
150
|
+
autoPublish?: never;
|
|
151
|
+
confirm?: never;
|
|
127
152
|
};
|
|
128
153
|
required: string[];
|
|
129
154
|
};
|
|
@@ -150,6 +175,11 @@ export declare const metadataTools: ({
|
|
|
150
175
|
name?: never;
|
|
151
176
|
entityLogicalName?: never;
|
|
152
177
|
attributeLogicalName?: never;
|
|
178
|
+
hasNotes?: never;
|
|
179
|
+
changeTrackingEnabled?: never;
|
|
180
|
+
isAuditEnabled?: never;
|
|
181
|
+
autoPublish?: never;
|
|
182
|
+
confirm?: never;
|
|
153
183
|
};
|
|
154
184
|
required: string[];
|
|
155
185
|
};
|
|
@@ -179,6 +209,57 @@ export declare const metadataTools: ({
|
|
|
179
209
|
relationshipType?: never;
|
|
180
210
|
name?: never;
|
|
181
211
|
tableName?: never;
|
|
212
|
+
hasNotes?: never;
|
|
213
|
+
changeTrackingEnabled?: never;
|
|
214
|
+
isAuditEnabled?: never;
|
|
215
|
+
autoPublish?: never;
|
|
216
|
+
confirm?: never;
|
|
217
|
+
};
|
|
218
|
+
required: string[];
|
|
219
|
+
};
|
|
220
|
+
annotations: {
|
|
221
|
+
readOnlyHint: boolean;
|
|
222
|
+
destructiveHint: boolean;
|
|
223
|
+
idempotentHint: boolean;
|
|
224
|
+
openWorldHint: boolean;
|
|
225
|
+
};
|
|
226
|
+
} | {
|
|
227
|
+
name: string;
|
|
228
|
+
description: string;
|
|
229
|
+
inputSchema: {
|
|
230
|
+
type: "object";
|
|
231
|
+
properties: {
|
|
232
|
+
entityLogicalName: {
|
|
233
|
+
type: string;
|
|
234
|
+
description: string;
|
|
235
|
+
};
|
|
236
|
+
hasNotes: {
|
|
237
|
+
type: string;
|
|
238
|
+
description: string;
|
|
239
|
+
};
|
|
240
|
+
changeTrackingEnabled: {
|
|
241
|
+
type: string;
|
|
242
|
+
description: string;
|
|
243
|
+
};
|
|
244
|
+
isAuditEnabled: {
|
|
245
|
+
type: string;
|
|
246
|
+
description: string;
|
|
247
|
+
};
|
|
248
|
+
autoPublish: {
|
|
249
|
+
type: string;
|
|
250
|
+
description: string;
|
|
251
|
+
};
|
|
252
|
+
confirm: {
|
|
253
|
+
type: string;
|
|
254
|
+
description: string;
|
|
255
|
+
};
|
|
256
|
+
includeSystemTables?: never;
|
|
257
|
+
logicalName?: never;
|
|
258
|
+
includeAttributes?: never;
|
|
259
|
+
relationshipType?: never;
|
|
260
|
+
name?: never;
|
|
261
|
+
tableName?: never;
|
|
262
|
+
attributeLogicalName?: never;
|
|
182
263
|
};
|
|
183
264
|
required: string[];
|
|
184
265
|
};
|
|
@@ -189,7 +270,7 @@ export declare const metadataTools: ({
|
|
|
189
270
|
openWorldHint: boolean;
|
|
190
271
|
};
|
|
191
272
|
})[];
|
|
192
|
-
export declare function handleMetadataTool(name: string, args: unknown, client:
|
|
273
|
+
export declare function handleMetadataTool(name: string, args: unknown, client: DataverseAdvancedClient): Promise<{
|
|
193
274
|
content: Array<{
|
|
194
275
|
type: "text";
|
|
195
276
|
text: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.tools.d.ts","sourceRoot":"","sources":["../../src/tools/metadata.tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"metadata.tools.d.ts","sourceRoot":"","sources":["../../src/tools/metadata.tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AAIzF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA+MzB,CAAC;AAyEF,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAwM7D"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { formatData, formatList } from "./output.utils.js";
|
|
3
|
+
import { checkWriteGuardrails } from "./guardrails.js";
|
|
3
4
|
export const metadataTools = [
|
|
4
5
|
{
|
|
5
6
|
name: "dataverse_list_tables",
|
|
@@ -149,6 +150,48 @@ export const metadataTools = [
|
|
|
149
150
|
openWorldHint: true,
|
|
150
151
|
},
|
|
151
152
|
},
|
|
153
|
+
{
|
|
154
|
+
name: "dataverse_update_entity",
|
|
155
|
+
description: "Updates configuration flags on an existing Dataverse entity definition — enables or disables Notes (HasNotes), Change Tracking, and Audit. " +
|
|
156
|
+
"Requires System Customizer or System Administrator privileges. WHEN TO USE: Enabling notes/attachments support, change tracking, or audit on a table. " +
|
|
157
|
+
"BEST PRACTICES: Set autoPublish=true (default) to make changes visible immediately. WORKFLOW: manage_solution.",
|
|
158
|
+
inputSchema: {
|
|
159
|
+
type: "object",
|
|
160
|
+
properties: {
|
|
161
|
+
entityLogicalName: {
|
|
162
|
+
type: "string",
|
|
163
|
+
description: "Logical name of the entity to update (e.g. 'account', 'new_mytable')",
|
|
164
|
+
},
|
|
165
|
+
hasNotes: {
|
|
166
|
+
type: "boolean",
|
|
167
|
+
description: "Enable or disable the Notes/Attachments feature for this entity",
|
|
168
|
+
},
|
|
169
|
+
changeTrackingEnabled: {
|
|
170
|
+
type: "boolean",
|
|
171
|
+
description: "Enable or disable change tracking (required for delta sync)",
|
|
172
|
+
},
|
|
173
|
+
isAuditEnabled: {
|
|
174
|
+
type: "boolean",
|
|
175
|
+
description: "Enable or disable auditing on this entity",
|
|
176
|
+
},
|
|
177
|
+
autoPublish: {
|
|
178
|
+
type: "boolean",
|
|
179
|
+
description: "Publish the customization after update (default: true). Set false to defer publishing.",
|
|
180
|
+
},
|
|
181
|
+
confirm: {
|
|
182
|
+
type: "boolean",
|
|
183
|
+
description: "Must be true — confirms intentional schema modification to Dataverse entity metadata",
|
|
184
|
+
},
|
|
185
|
+
},
|
|
186
|
+
required: ["entityLogicalName", "confirm"],
|
|
187
|
+
},
|
|
188
|
+
annotations: {
|
|
189
|
+
readOnlyHint: false,
|
|
190
|
+
destructiveHint: false,
|
|
191
|
+
idempotentHint: true,
|
|
192
|
+
openWorldHint: true,
|
|
193
|
+
},
|
|
194
|
+
},
|
|
152
195
|
];
|
|
153
196
|
const GetTableMetadataInput = z.object({
|
|
154
197
|
logicalName: z.string().min(1),
|
|
@@ -187,6 +230,27 @@ const GetAttributeOptionSetInput = z.object({
|
|
|
187
230
|
.min(1)
|
|
188
231
|
.regex(DV_NAME_RE, "Invalid Dataverse logical name"),
|
|
189
232
|
});
|
|
233
|
+
const UpdateEntityInput = z
|
|
234
|
+
.object({
|
|
235
|
+
entityLogicalName: z
|
|
236
|
+
.string()
|
|
237
|
+
.min(1)
|
|
238
|
+
.regex(/^[a-z_][a-z0-9_]*$/, "Invalid logical name"),
|
|
239
|
+
confirm: z.literal(true, {
|
|
240
|
+
errorMap: () => ({
|
|
241
|
+
message: "Set confirm: true to modify entity metadata",
|
|
242
|
+
}),
|
|
243
|
+
}),
|
|
244
|
+
hasNotes: z.boolean().optional(),
|
|
245
|
+
changeTrackingEnabled: z.boolean().optional(),
|
|
246
|
+
isAuditEnabled: z.boolean().optional(),
|
|
247
|
+
autoPublish: z.boolean().optional().default(true),
|
|
248
|
+
})
|
|
249
|
+
.refine((d) => d.hasNotes !== undefined ||
|
|
250
|
+
d.changeTrackingEnabled !== undefined ||
|
|
251
|
+
d.isAuditEnabled !== undefined, {
|
|
252
|
+
message: "At least one of hasNotes, changeTrackingEnabled, or isAuditEnabled must be provided",
|
|
253
|
+
});
|
|
190
254
|
export async function handleMetadataTool(name, args, client) {
|
|
191
255
|
switch (name) {
|
|
192
256
|
case "dataverse_list_tables": {
|
|
@@ -266,13 +330,69 @@ export async function handleMetadataTool(name, args, client) {
|
|
|
266
330
|
case "dataverse_get_attribute_option_set": {
|
|
267
331
|
const { entityLogicalName, attributeLogicalName } = GetAttributeOptionSetInput.parse(args);
|
|
268
332
|
const result = await client.getAttributeOptionSet(entityLogicalName, attributeLogicalName);
|
|
269
|
-
const options = Array.isArray(result?.
|
|
270
|
-
? result.
|
|
333
|
+
const options = Array.isArray(result?.options)
|
|
334
|
+
? result.options
|
|
271
335
|
: [];
|
|
272
336
|
return formatData(`Attribute '${attributeLogicalName}' on '${entityLogicalName}': ${options.length} options`, result, [
|
|
273
337
|
"Use these integer values in $filter or when creating/updating records",
|
|
274
338
|
]);
|
|
275
339
|
}
|
|
340
|
+
case "dataverse_update_entity": {
|
|
341
|
+
const { entityLogicalName, hasNotes, changeTrackingEnabled, isAuditEnabled, autoPublish, } = UpdateEntityInput.parse(args);
|
|
342
|
+
const writeWarnings = checkWriteGuardrails({
|
|
343
|
+
toolName: "dataverse_update_entity",
|
|
344
|
+
entitySetName: entityLogicalName,
|
|
345
|
+
}).map((w) => `[${w.severity.toUpperCase()}] ${w.code}: ${w.message}`);
|
|
346
|
+
const displayValues = {};
|
|
347
|
+
if (hasNotes !== undefined)
|
|
348
|
+
displayValues["HasNotes"] = hasNotes;
|
|
349
|
+
if (changeTrackingEnabled !== undefined)
|
|
350
|
+
displayValues["ChangeTrackingEnabled"] = changeTrackingEnabled;
|
|
351
|
+
if (isAuditEnabled !== undefined)
|
|
352
|
+
displayValues["IsAuditEnabled"] = isAuditEnabled;
|
|
353
|
+
const body = {
|
|
354
|
+
"@odata.type": "#Microsoft.Dynamics.CRM.EntityMetadata",
|
|
355
|
+
};
|
|
356
|
+
// HasNotes is Edm.Boolean (plain bool), NOT a BooleanManagedProperty
|
|
357
|
+
if (hasNotes !== undefined)
|
|
358
|
+
body["HasNotes"] = hasNotes;
|
|
359
|
+
if (changeTrackingEnabled !== undefined)
|
|
360
|
+
body["ChangeTrackingEnabled"] = changeTrackingEnabled;
|
|
361
|
+
// IsAuditEnabled is a BooleanManagedProperty — requires { Value: bool } wrapper
|
|
362
|
+
if (isAuditEnabled !== undefined)
|
|
363
|
+
body["IsAuditEnabled"] = { Value: isAuditEnabled };
|
|
364
|
+
try {
|
|
365
|
+
await client.updateEntityDefinition(entityLogicalName, body);
|
|
366
|
+
}
|
|
367
|
+
catch (err) {
|
|
368
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
369
|
+
if (msg.includes("0x80060888")) {
|
|
370
|
+
return formatData(`Cannot update entity '${entityLogicalName}': operation not supported by Dataverse.`, { error: "0x80060888", entityLogicalName, requestedChanges: displayValues }, [
|
|
371
|
+
"IsAuditEnabled requires organization-level auditing to be enabled first: Power Platform admin center > Settings > Audit and logs > Start Auditing",
|
|
372
|
+
"ChangeTrackingEnabled may be blocked if the entity is part of a managed solution",
|
|
373
|
+
"HasNotes=true/false should work for custom (unmanaged) entities",
|
|
374
|
+
]);
|
|
375
|
+
}
|
|
376
|
+
throw err;
|
|
377
|
+
}
|
|
378
|
+
const changes = Object.entries(displayValues)
|
|
379
|
+
.map(([k, v]) => `${k}=${String(v)}`)
|
|
380
|
+
.join(", ");
|
|
381
|
+
let publishStatus = "autoPublish=false (skipped)";
|
|
382
|
+
if (autoPublish) {
|
|
383
|
+
await client.publishCustomizations({ entities: [entityLogicalName] });
|
|
384
|
+
publishStatus = "published successfully";
|
|
385
|
+
}
|
|
386
|
+
return formatData(`Entity '${entityLogicalName}' updated: ${changes}. ${publishStatus}.`, {
|
|
387
|
+
entityLogicalName,
|
|
388
|
+
changes: displayValues,
|
|
389
|
+
published: autoPublish,
|
|
390
|
+
...(writeWarnings.length > 0 && { warnings: writeWarnings }),
|
|
391
|
+
}, [
|
|
392
|
+
"Use dataverse_get_table_metadata to verify the changes",
|
|
393
|
+
"Enable HasNotes=true before using dataverse_create_annotation",
|
|
394
|
+
]);
|
|
395
|
+
}
|
|
276
396
|
default:
|
|
277
397
|
throw new Error(`Unknown metadata tool: ${name}`);
|
|
278
398
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.tools.js","sourceRoot":"","sources":["../../src/tools/metadata.tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"metadata.tools.js","sourceRoot":"","sources":["../../src/tools/metadata.tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,38 @@
|
|
|
1
1
|
import type { ToolResult } from "./tool-registry.js";
|
|
2
|
+
/**
|
|
3
|
+
* Describes a missing environment-level prerequisite that prevents a tool from
|
|
4
|
+
* operating. Surface this to the agent so it can explain the required admin
|
|
5
|
+
* action to the user in a structured, parseable way.
|
|
6
|
+
*/
|
|
7
|
+
export interface EnvironmentPrerequisite {
|
|
8
|
+
/** Broad category of the limitation. */
|
|
9
|
+
type: "feature_disabled" | "permission_required" | "schema_missing";
|
|
10
|
+
/** Short display name of the missing feature/capability. */
|
|
11
|
+
feature: string;
|
|
12
|
+
/** One-sentence explanation of why the tool cannot proceed. */
|
|
13
|
+
cannotProceedBecause: string;
|
|
14
|
+
/** Primary portal where the fix must be applied. */
|
|
15
|
+
adminPortal: "Power Platform Admin Center" | "Power Apps Maker Portal" | "Azure AD" | "N/A";
|
|
16
|
+
/** Ordered navigation steps for the administrator. */
|
|
17
|
+
steps: string[];
|
|
18
|
+
/**
|
|
19
|
+
* Name of an MCP tool that can apply the fix programmatically,
|
|
20
|
+
* so the agent can offer to do it automatically instead of
|
|
21
|
+
* sending the user to the portal.
|
|
22
|
+
*/
|
|
23
|
+
fixableViaToolName?: string;
|
|
24
|
+
}
|
|
2
25
|
interface StructuredOutput {
|
|
3
26
|
summary: string;
|
|
4
27
|
data: unknown;
|
|
5
28
|
suggestions?: string[] | undefined;
|
|
29
|
+
warnings?: string[] | undefined;
|
|
30
|
+
/**
|
|
31
|
+
* Present when the tool is blocked by a missing environment-level
|
|
32
|
+
* prerequisite. The agent should read this field and present the
|
|
33
|
+
* steps to the user rather than treating the response as a data result.
|
|
34
|
+
*/
|
|
35
|
+
prerequisite?: EnvironmentPrerequisite | undefined;
|
|
6
36
|
}
|
|
7
37
|
/**
|
|
8
38
|
* Wraps a structured output into the MCP tool result format.
|
|
@@ -12,10 +42,22 @@ export declare function formatToolOutput(output: StructuredOutput): ToolResult;
|
|
|
12
42
|
/**
|
|
13
43
|
* Convenience: wrap raw data with a summary line and optional suggestions.
|
|
14
44
|
*/
|
|
15
|
-
export declare function formatData(summary: string, data: unknown, suggestions?: string[]): ToolResult;
|
|
45
|
+
export declare function formatData(summary: string, data: unknown, suggestions?: string[], warnings?: string[]): ToolResult;
|
|
16
46
|
/**
|
|
17
47
|
* Format a count-based result (list of items).
|
|
18
48
|
*/
|
|
19
49
|
export declare function formatList(label: string, items: unknown[], suggestions?: string[]): ToolResult;
|
|
50
|
+
/**
|
|
51
|
+
* Returns a structured "cannot proceed — environment prerequisite missing"
|
|
52
|
+
* response. The tool should RETURN this instead of throwing so that the
|
|
53
|
+
* agent receives a parseable JSON payload it can relay to the user.
|
|
54
|
+
*/
|
|
55
|
+
export declare function formatPrerequisiteError(prerequisite: EnvironmentPrerequisite): ToolResult;
|
|
56
|
+
/**
|
|
57
|
+
* Merges OData formatted-value annotations into each record.
|
|
58
|
+
* Transforms `{ statuscode: 1, "statuscode@OData.Community.Display.V1.FormattedValue": "Active" }`
|
|
59
|
+
* into `{ statuscode: { value: 1, label: "Active" } }`.
|
|
60
|
+
*/
|
|
61
|
+
export declare function mergeFormattedValues<T>(records: T[]): T[];
|
|
20
62
|
export {};
|
|
21
63
|
//# sourceMappingURL=output.utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.utils.d.ts","sourceRoot":"","sources":["../../src/tools/output.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIrD,UAAU,gBAAgB;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"output.utils.d.ts","sourceRoot":"","sources":["../../src/tools/output.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIrD;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,wCAAwC;IACxC,IAAI,EAAE,kBAAkB,GAAG,qBAAqB,GAAG,gBAAgB,CAAC;IACpE,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,oBAAoB,EAAE,MAAM,CAAC;IAC7B,oDAAoD;IACpD,WAAW,EACP,6BAA6B,GAC7B,yBAAyB,GACzB,UAAU,GACV,KAAK,CAAC;IACV,sDAAsD;IACtD,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAID,UAAU,gBAAgB;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAChC;;;;OAIG;IACH,YAAY,CAAC,EAAE,uBAAuB,GAAG,SAAS,CAAC;CACpD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,UAAU,CASrE;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,OAAO,EACb,WAAW,CAAC,EAAE,MAAM,EAAE,EACtB,QAAQ,CAAC,EAAE,MAAM,EAAE,GAClB,UAAU,CAEZ;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,OAAO,EAAE,EAChB,WAAW,CAAC,EAAE,MAAM,EAAE,GACrB,UAAU,CAMZ;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,uBAAuB,GACpC,UAAU,CAMZ;AAMD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAuBzD"}
|