@sap-ux/fiori-mcp-server 0.0.4 → 0.0.6

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 (33) hide show
  1. package/dist/server.d.ts +4 -0
  2. package/dist/server.js +20 -4
  3. package/dist/telemetry/index.d.ts +68 -0
  4. package/dist/telemetry/index.js +146 -0
  5. package/dist/tools/execute-functionality.d.ts +2 -2
  6. package/dist/tools/functionalities/functionalities.d.ts +58 -1
  7. package/dist/tools/functionalities/generate-fiori-ui-app/command.d.ts +2 -2
  8. package/dist/tools/get-functionality-details.js +1 -1
  9. package/dist/tools/index.js +44 -10
  10. package/dist/tools/utils.d.ts +10 -0
  11. package/dist/tools/utils.js +49 -1
  12. package/dist/types/basic.d.ts +123 -0
  13. package/dist/types/basic.js +108 -0
  14. package/dist/types/index.d.ts +38 -0
  15. package/dist/{types.js → types/index.js} +1 -1
  16. package/dist/types/input.d.ts +29 -0
  17. package/dist/types/input.js +77 -0
  18. package/dist/types/output.d.ts +125 -0
  19. package/dist/types/output.js +97 -0
  20. package/package.json +11 -7
  21. package/dist/tools/input-schema/execute-functionality.json +0 -28
  22. package/dist/tools/input-schema/get-functionality-details.json +0 -24
  23. package/dist/tools/input-schema/index.d.ts +0 -5
  24. package/dist/tools/input-schema/index.js +0 -15
  25. package/dist/tools/input-schema/list-fiori-apps.json +0 -12
  26. package/dist/tools/input-schema/list-functionality.json +0 -10
  27. package/dist/tools/output-schema/execute-functionality.json +0 -39
  28. package/dist/tools/output-schema/get-functionality-details.json +0 -166
  29. package/dist/tools/output-schema/index.d.ts +0 -5
  30. package/dist/tools/output-schema/index.js +0 -15
  31. package/dist/tools/output-schema/list-fiori-apps.json +0 -41
  32. package/dist/tools/output-schema/list-functionality.json +0 -37
  33. package/dist/types.d.ts +0 -174
@@ -0,0 +1,123 @@
1
+ import * as zod from 'zod';
2
+ /**
3
+ * Interface representing a Fiori application
4
+ */
5
+ export declare const FioriAppSchema: zod.ZodObject<{
6
+ name: zod.ZodString;
7
+ appPath: zod.ZodString;
8
+ projectPath: zod.ZodString;
9
+ projectType: zod.ZodEnum<{
10
+ EDMXBackend: "EDMXBackend";
11
+ CAPJava: "CAPJava";
12
+ CAPNodejs: "CAPNodejs";
13
+ }>;
14
+ odataVersion: zod.ZodString;
15
+ }, zod.z.core.$strip>;
16
+ /**
17
+ * Type for functionality id
18
+ */
19
+ export declare const FunctionalityIdSchema: zod.ZodUnion<readonly [zod.ZodString, zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber]>>]>;
20
+ export type Test = zod.infer<typeof FunctionalityIdSchema>;
21
+ /**
22
+ * Schema representing a functionality
23
+ */
24
+ export declare const FunctionalitySchema: zod.ZodObject<{
25
+ functionalityId: zod.ZodUnion<readonly [zod.ZodString, zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber]>>]>;
26
+ description: zod.ZodString;
27
+ }, zod.z.core.$strip>;
28
+ /**
29
+ * Schema for a Parameter
30
+ */
31
+ declare const BaseParameterSchema: zod.ZodObject<{
32
+ id: zod.ZodString;
33
+ name: zod.ZodOptional<zod.ZodString>;
34
+ type: zod.ZodEnum<{
35
+ string: "string";
36
+ number: "number";
37
+ boolean: "boolean";
38
+ object: "object";
39
+ array: "array";
40
+ }>;
41
+ required: zod.ZodOptional<zod.ZodBoolean>;
42
+ description: zod.ZodOptional<zod.ZodString>;
43
+ defaultValue: zod.ZodOptional<zod.ZodUnknown>;
44
+ options: zod.ZodOptional<zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber, zod.ZodBoolean, zod.ZodNull]>>>;
45
+ currentValue: zod.ZodOptional<zod.ZodUnknown>;
46
+ examples: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
47
+ pattern: zod.ZodOptional<zod.ZodString>;
48
+ }, zod.z.core.$strip>;
49
+ export declare const ParameterSchema: zod.ZodObject<{
50
+ id: zod.ZodString;
51
+ name: zod.ZodOptional<zod.ZodString>;
52
+ type: zod.ZodEnum<{
53
+ string: "string";
54
+ number: "number";
55
+ boolean: "boolean";
56
+ object: "object";
57
+ array: "array";
58
+ }>;
59
+ required: zod.ZodOptional<zod.ZodBoolean>;
60
+ description: zod.ZodOptional<zod.ZodString>;
61
+ defaultValue: zod.ZodOptional<zod.ZodUnknown>;
62
+ options: zod.ZodOptional<zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber, zod.ZodBoolean, zod.ZodNull]>>>;
63
+ currentValue: zod.ZodOptional<zod.ZodUnknown>;
64
+ examples: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
65
+ pattern: zod.ZodOptional<zod.ZodString>;
66
+ parameters: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
67
+ id: zod.ZodString;
68
+ name: zod.ZodOptional<zod.ZodString>;
69
+ type: zod.ZodEnum<{
70
+ string: "string";
71
+ number: "number";
72
+ boolean: "boolean";
73
+ object: "object";
74
+ array: "array";
75
+ }>;
76
+ required: zod.ZodOptional<zod.ZodBoolean>;
77
+ description: zod.ZodOptional<zod.ZodString>;
78
+ defaultValue: zod.ZodOptional<zod.ZodUnknown>;
79
+ options: zod.ZodOptional<zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber, zod.ZodBoolean, zod.ZodNull]>>>;
80
+ currentValue: zod.ZodOptional<zod.ZodUnknown>;
81
+ examples: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
82
+ pattern: zod.ZodOptional<zod.ZodString>;
83
+ parameters: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
84
+ id: zod.ZodString;
85
+ name: zod.ZodOptional<zod.ZodString>;
86
+ type: zod.ZodEnum<{
87
+ string: "string";
88
+ number: "number";
89
+ boolean: "boolean";
90
+ object: "object";
91
+ array: "array";
92
+ }>;
93
+ required: zod.ZodOptional<zod.ZodBoolean>;
94
+ description: zod.ZodOptional<zod.ZodString>;
95
+ defaultValue: zod.ZodOptional<zod.ZodUnknown>;
96
+ options: zod.ZodOptional<zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber, zod.ZodBoolean, zod.ZodNull]>>>;
97
+ currentValue: zod.ZodOptional<zod.ZodUnknown>;
98
+ examples: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
99
+ pattern: zod.ZodOptional<zod.ZodString>;
100
+ parameters: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
101
+ id: zod.ZodString;
102
+ name: zod.ZodOptional<zod.ZodString>;
103
+ type: zod.ZodEnum<{
104
+ string: "string";
105
+ number: "number";
106
+ boolean: "boolean";
107
+ object: "object";
108
+ array: "array";
109
+ }>;
110
+ required: zod.ZodOptional<zod.ZodBoolean>;
111
+ description: zod.ZodOptional<zod.ZodString>;
112
+ defaultValue: zod.ZodOptional<zod.ZodUnknown>;
113
+ options: zod.ZodOptional<zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber, zod.ZodBoolean, zod.ZodNull]>>>;
114
+ currentValue: zod.ZodOptional<zod.ZodUnknown>;
115
+ examples: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
116
+ pattern: zod.ZodOptional<zod.ZodString>;
117
+ }, zod.z.core.$strip>>>;
118
+ }, zod.z.core.$strip>>>;
119
+ }, zod.z.core.$strip>>>;
120
+ }, zod.z.core.$strip>;
121
+ export type Parameter = zod.infer<typeof BaseParameterSchema>;
122
+ export {};
123
+ //# sourceMappingURL=basic.d.ts.map
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.ParameterSchema = exports.FunctionalitySchema = exports.FunctionalityIdSchema = exports.FioriAppSchema = void 0;
37
+ const zod = __importStar(require("zod"));
38
+ /**
39
+ * Interface representing a Fiori application
40
+ */
41
+ exports.FioriAppSchema = zod.object({
42
+ /** Name of the Fiori application */
43
+ name: zod
44
+ .string()
45
+ .describe("Name of the Fiori application. Usually derived from the `sap.app/id` field in the application's manifest.json."),
46
+ /** Path to the Fiori application */
47
+ appPath: zod.string().describe("Absolute path to the Fiori application's root directory."),
48
+ /** Path to project */
49
+ projectPath: zod
50
+ .string()
51
+ .describe('Absolute path to the root directory of the project containing this Fiori application. For EDMXBackend (standalone) projects, this is the same as `appPath`. For CAP projects, this points to the CAP project root, which may contain multiple Fiori applications.'),
52
+ /** Type of the Fiori project */
53
+ projectType: zod
54
+ .enum(['EDMXBackend', 'CAPJava', 'CAPNodejs'])
55
+ .describe('Type of project the application belongs to.'),
56
+ /** OData version of the Fiori application */
57
+ odataVersion: zod.string().describe("OData protocol version used by the application's main service.")
58
+ });
59
+ /**
60
+ * Type for functionality id
61
+ */
62
+ exports.FunctionalityIdSchema = zod.union([zod.string(), zod.array(zod.union([zod.string(), zod.number()]))]);
63
+ /**
64
+ * Schema representing a functionality
65
+ */
66
+ exports.FunctionalitySchema = zod.object({
67
+ functionalityId: exports.FunctionalityIdSchema.describe('Identifier to pass as the `functionalityId` parameter when calling `get-functionality-details` or `execute-functionality`'),
68
+ description: zod.string()
69
+ });
70
+ /**
71
+ * Schema for a Parameter
72
+ */
73
+ const BaseParameterSchema = zod.object({
74
+ /** ID of the parameter */
75
+ id: zod.string(),
76
+ /** Name of the parameter */
77
+ name: zod.string().optional(),
78
+ /** Type of the parameter */
79
+ type: zod.enum(['string', 'number', 'boolean', 'array', 'object']),
80
+ /** Whether the parameter is required */
81
+ required: zod.boolean().optional(),
82
+ /** Description of the parameter */
83
+ description: zod.string().optional(),
84
+ /** Default value of the parameter */
85
+ defaultValue: zod.unknown().optional(),
86
+ /** Possible options for the parameter */
87
+ options: zod.array(zod.union([zod.string(), zod.number(), zod.boolean(), zod.null()])).optional(),
88
+ /** Current value of the parameter */
89
+ currentValue: zod.unknown().optional(),
90
+ /** Examples for the parameter */
91
+ examples: zod.array(zod.string()).optional(),
92
+ /** Regex pattern to validate the value of this parameter */
93
+ pattern: zod.string().optional()
94
+ });
95
+ /**
96
+ * Parameters with nesting
97
+ */
98
+ const NestedParameterSchema = BaseParameterSchema.extend({
99
+ parameters: zod
100
+ .array(BaseParameterSchema.extend({
101
+ parameters: zod.array(BaseParameterSchema).optional()
102
+ }))
103
+ .optional()
104
+ });
105
+ exports.ParameterSchema = BaseParameterSchema.extend({
106
+ parameters: zod.array(NestedParameterSchema).optional()
107
+ });
108
+ //# sourceMappingURL=basic.js.map
@@ -0,0 +1,38 @@
1
+ import type * as zod from 'zod';
2
+ import type { ApplicationAccess } from '@sap-ux/project-access';
3
+ import type { FioriAppSchema, FunctionalityIdSchema, FunctionalitySchema, ParameterSchema } from './basic';
4
+ import type { ExecuteFunctionalityInputSchema, GetFunctionalityDetailsInputSchema, ListFioriAppsInputSchema, ListFunctionalitiesInputSchema } from './input';
5
+ import type { ExecuteFunctionalityOutputSchema, GetFunctionalityDetailsOutputSchema, ListFioriAppsOutputSchema, ListFunctionalitiesOutputSchema } from './output';
6
+ export type FioriApp = zod.infer<typeof FioriAppSchema>;
7
+ export type FunctionalityId = zod.infer<typeof FunctionalityIdSchema>;
8
+ export type Parameter = zod.infer<typeof ParameterSchema>;
9
+ export type Functionality = zod.infer<typeof FunctionalitySchema>;
10
+ export type ListFioriAppsInput = zod.infer<typeof ListFioriAppsInputSchema>;
11
+ export type ListFioriAppsOutput = zod.infer<typeof ListFioriAppsOutputSchema>;
12
+ export type ListFunctionalitiesInput = zod.infer<typeof ListFunctionalitiesInputSchema>;
13
+ export type ListFunctionalitiesOutput = zod.infer<typeof ListFunctionalitiesOutputSchema>;
14
+ export type GetFunctionalityDetailsInput = zod.infer<typeof GetFunctionalityDetailsInputSchema>;
15
+ export type GetFunctionalityDetailsOutput = zod.infer<typeof GetFunctionalityDetailsOutputSchema>;
16
+ export type ExecuteFunctionalityInput = zod.infer<typeof ExecuteFunctionalityInputSchema>;
17
+ export type ExecuteFunctionalityOutput = zod.infer<typeof ExecuteFunctionalityOutputSchema>;
18
+ /**
19
+ * Interface for functionality handlers
20
+ */
21
+ export interface FunctionalityHandlers {
22
+ /** Handler for getting functionality details */
23
+ getFunctionalityDetails: (params: GetFunctionalityDetailsInput) => Promise<GetFunctionalityDetailsOutput>;
24
+ /** Handler for executing functionality */
25
+ executeFunctionality: (params: ExecuteFunctionalityInput) => Promise<ExecuteFunctionalityOutput>;
26
+ }
27
+ /**
28
+ * Interface representing application details
29
+ */
30
+ export interface Appdetails {
31
+ /** Root path of the application */
32
+ root: string;
33
+ /** ID of the application */
34
+ appId: string;
35
+ /** Access details for the application */
36
+ applicationAccess?: ApplicationAccess;
37
+ }
38
+ //# sourceMappingURL=index.d.ts.map
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,29 @@
1
+ import * as zod from 'zod';
2
+ /**
3
+ * Input interface for the 'list-fiori-apps' functionality
4
+ */
5
+ export declare const ListFioriAppsInputSchema: zod.ZodObject<{
6
+ searchPath: zod.ZodArray<zod.ZodString>;
7
+ }, zod.z.core.$strip>;
8
+ /**
9
+ * Input interface for the 'list-functionality' functionality
10
+ */
11
+ export declare const ListFunctionalitiesInputSchema: zod.ZodObject<{
12
+ appPath: zod.ZodString;
13
+ }, zod.z.core.$strip>;
14
+ /**
15
+ * Input interface for the 'get-functionality-details' functionality
16
+ */
17
+ export declare const GetFunctionalityDetailsInputSchema: zod.ZodObject<{
18
+ appPath: zod.ZodString;
19
+ functionalityId: zod.ZodUnion<readonly [zod.ZodString, zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber]>>]>;
20
+ }, zod.z.core.$strip>;
21
+ /**
22
+ * Input interface for the 'execute-functionality' functionality
23
+ */
24
+ export declare const ExecuteFunctionalityInputSchema: zod.ZodObject<{
25
+ functionalityId: zod.ZodUnion<readonly [zod.ZodString, zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber]>>]>;
26
+ parameters: zod.ZodRecord<zod.ZodString, zod.ZodUnknown>;
27
+ appPath: zod.ZodString;
28
+ }, zod.z.core.$strip>;
29
+ //# sourceMappingURL=input.d.ts.map
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.ExecuteFunctionalityInputSchema = exports.GetFunctionalityDetailsInputSchema = exports.ListFunctionalitiesInputSchema = exports.ListFioriAppsInputSchema = void 0;
37
+ const zod = __importStar(require("zod"));
38
+ const basic_1 = require("./basic");
39
+ /**
40
+ * Input interface for the 'list-fiori-apps' functionality
41
+ */
42
+ exports.ListFioriAppsInputSchema = zod.object({
43
+ /** Array of paths to search for Fiori applications */
44
+ searchPath: zod
45
+ .array(zod.string())
46
+ .describe('Path to search for Fiori applications (defaults to current directory). If VSCode - list of VS Code workspace folder paths(`workspace.workspaceFolders`)')
47
+ });
48
+ /**
49
+ * Input interface for the 'list-functionality' functionality
50
+ */
51
+ exports.ListFunctionalitiesInputSchema = zod.object({
52
+ /** Path to the Fiori application */
53
+ appPath: zod
54
+ .string()
55
+ .describe('Path to the root folder of the Fiori application (where package.json and ui5.yaml reside). Path should be an absolute path.')
56
+ });
57
+ /**
58
+ * Input interface for the 'get-functionality-details' functionality
59
+ */
60
+ exports.GetFunctionalityDetailsInputSchema = zod.object({
61
+ /** Path to the Fiori application */
62
+ appPath: zod.string().describe('Path to the Fiori application. Path should be an absolute path.'),
63
+ /** ID or array of IDs of the functionality(ies) */
64
+ functionalityId: basic_1.FunctionalityIdSchema.describe('The ID of the functionality to get details for')
65
+ });
66
+ /**
67
+ * Input interface for the 'execute-functionality' functionality
68
+ */
69
+ exports.ExecuteFunctionalityInputSchema = zod.object({
70
+ /** ID or array of IDs of the functionality(ies) to execute */
71
+ functionalityId: basic_1.FunctionalityIdSchema.describe('The ID of the functionality to execute'),
72
+ /** Parameters for the functionality execution */
73
+ parameters: zod.record(zod.string(), zod.unknown()).describe('Parameters for the functionality execution'),
74
+ /** Path to the Fiori application */
75
+ appPath: zod.string().describe('Path to the Fiori application. Path should be an absolute path.')
76
+ });
77
+ //# sourceMappingURL=input.js.map
@@ -0,0 +1,125 @@
1
+ import * as zod from 'zod';
2
+ /**
3
+ * Output interface for the 'list-fiori-apps' functionality
4
+ */
5
+ export declare const ListFioriAppsOutputSchema: zod.ZodObject<{
6
+ applications: zod.ZodArray<zod.ZodObject<{
7
+ name: zod.ZodString;
8
+ appPath: zod.ZodString;
9
+ projectPath: zod.ZodString;
10
+ projectType: zod.ZodEnum<{
11
+ EDMXBackend: "EDMXBackend";
12
+ CAPJava: "CAPJava";
13
+ CAPNodejs: "CAPNodejs";
14
+ }>;
15
+ odataVersion: zod.ZodString;
16
+ }, zod.z.core.$strip>>;
17
+ }, zod.z.core.$strip>;
18
+ /**
19
+ * Output interface for the 'list-functionality' functionality
20
+ */
21
+ export declare const ListFunctionalitiesOutputSchema: zod.ZodObject<{
22
+ applicationPath: zod.ZodString;
23
+ functionalities: zod.ZodArray<zod.ZodObject<{
24
+ functionalityId: zod.ZodUnion<readonly [zod.ZodString, zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber]>>]>;
25
+ description: zod.ZodString;
26
+ }, zod.z.core.$strip>>;
27
+ }, zod.z.core.$strip>;
28
+ /**
29
+ * Output interface for the 'get-functionality-details' functionality
30
+ */
31
+ export declare const GetFunctionalityDetailsOutputSchema: zod.ZodObject<{
32
+ functionalityId: zod.ZodUnion<readonly [zod.ZodString, zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber]>>]>;
33
+ name: zod.ZodString;
34
+ description: zod.ZodString;
35
+ technicalDescription: zod.ZodOptional<zod.ZodString>;
36
+ parameters: zod.ZodArray<zod.ZodObject<{
37
+ id: zod.ZodString;
38
+ name: zod.ZodOptional<zod.ZodString>;
39
+ type: zod.ZodEnum<{
40
+ string: "string";
41
+ number: "number";
42
+ boolean: "boolean";
43
+ object: "object";
44
+ array: "array";
45
+ }>;
46
+ required: zod.ZodOptional<zod.ZodBoolean>;
47
+ description: zod.ZodOptional<zod.ZodString>;
48
+ defaultValue: zod.ZodOptional<zod.ZodUnknown>;
49
+ options: zod.ZodOptional<zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber, zod.ZodBoolean, zod.ZodNull]>>>;
50
+ currentValue: zod.ZodOptional<zod.ZodUnknown>;
51
+ examples: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
52
+ pattern: zod.ZodOptional<zod.ZodString>;
53
+ parameters: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
54
+ id: zod.ZodString;
55
+ name: zod.ZodOptional<zod.ZodString>;
56
+ type: zod.ZodEnum<{
57
+ string: "string";
58
+ number: "number";
59
+ boolean: "boolean";
60
+ object: "object";
61
+ array: "array";
62
+ }>;
63
+ required: zod.ZodOptional<zod.ZodBoolean>;
64
+ description: zod.ZodOptional<zod.ZodString>;
65
+ defaultValue: zod.ZodOptional<zod.ZodUnknown>;
66
+ options: zod.ZodOptional<zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber, zod.ZodBoolean, zod.ZodNull]>>>;
67
+ currentValue: zod.ZodOptional<zod.ZodUnknown>;
68
+ examples: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
69
+ pattern: zod.ZodOptional<zod.ZodString>;
70
+ parameters: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
71
+ id: zod.ZodString;
72
+ name: zod.ZodOptional<zod.ZodString>;
73
+ type: zod.ZodEnum<{
74
+ string: "string";
75
+ number: "number";
76
+ boolean: "boolean";
77
+ object: "object";
78
+ array: "array";
79
+ }>;
80
+ required: zod.ZodOptional<zod.ZodBoolean>;
81
+ description: zod.ZodOptional<zod.ZodString>;
82
+ defaultValue: zod.ZodOptional<zod.ZodUnknown>;
83
+ options: zod.ZodOptional<zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber, zod.ZodBoolean, zod.ZodNull]>>>;
84
+ currentValue: zod.ZodOptional<zod.ZodUnknown>;
85
+ examples: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
86
+ pattern: zod.ZodOptional<zod.ZodString>;
87
+ parameters: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
88
+ id: zod.ZodString;
89
+ name: zod.ZodOptional<zod.ZodString>;
90
+ type: zod.ZodEnum<{
91
+ string: "string";
92
+ number: "number";
93
+ boolean: "boolean";
94
+ object: "object";
95
+ array: "array";
96
+ }>;
97
+ required: zod.ZodOptional<zod.ZodBoolean>;
98
+ description: zod.ZodOptional<zod.ZodString>;
99
+ defaultValue: zod.ZodOptional<zod.ZodUnknown>;
100
+ options: zod.ZodOptional<zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber, zod.ZodBoolean, zod.ZodNull]>>>;
101
+ currentValue: zod.ZodOptional<zod.ZodUnknown>;
102
+ examples: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
103
+ pattern: zod.ZodOptional<zod.ZodString>;
104
+ }, zod.z.core.$strip>>>;
105
+ }, zod.z.core.$strip>>>;
106
+ }, zod.z.core.$strip>>>;
107
+ }, zod.z.core.$strip>>;
108
+ prerequisites: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
109
+ impact: zod.ZodOptional<zod.ZodString>;
110
+ examples: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
111
+ pageName: zod.ZodOptional<zod.ZodString>;
112
+ }, zod.z.core.$strip>;
113
+ /**
114
+ * Output interface for the 'execute-functionality' functionality
115
+ */
116
+ export declare const ExecuteFunctionalityOutputSchema: zod.ZodObject<{
117
+ functionalityId: zod.ZodUnion<readonly [zod.ZodString, zod.ZodArray<zod.ZodUnion<readonly [zod.ZodString, zod.ZodNumber]>>]>;
118
+ status: zod.ZodString;
119
+ message: zod.ZodString;
120
+ parameters: zod.ZodUnknown;
121
+ appPath: zod.ZodString;
122
+ changes: zod.ZodArray<zod.ZodString>;
123
+ timestamp: zod.ZodString;
124
+ }, zod.z.core.$strip>;
125
+ //# sourceMappingURL=output.d.ts.map
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.ExecuteFunctionalityOutputSchema = exports.GetFunctionalityDetailsOutputSchema = exports.ListFunctionalitiesOutputSchema = exports.ListFioriAppsOutputSchema = void 0;
37
+ const zod = __importStar(require("zod"));
38
+ const basic_1 = require("./basic");
39
+ /**
40
+ * Output interface for the 'list-fiori-apps' functionality
41
+ */
42
+ exports.ListFioriAppsOutputSchema = zod.object({
43
+ /** Array of found Fiori applications */
44
+ applications: zod.array(basic_1.FioriAppSchema)
45
+ });
46
+ /**
47
+ * Output interface for the 'list-functionality' functionality
48
+ */
49
+ exports.ListFunctionalitiesOutputSchema = zod.object({
50
+ /** Path to the Fiori application */
51
+ applicationPath: zod.string(),
52
+ /** Array of available functionalities */
53
+ functionalities: zod.array(basic_1.FunctionalitySchema)
54
+ });
55
+ /**
56
+ * Output interface for the 'get-functionality-details' functionality
57
+ */
58
+ exports.GetFunctionalityDetailsOutputSchema = zod.object({
59
+ /** ID of the functionality */
60
+ functionalityId: basic_1.FunctionalityIdSchema.describe('Identifier to pass as the `functionalityId` parameter when calling `get-functionality-details` or `execute-functionality`'),
61
+ /** Name of the functionality */
62
+ name: zod.string(),
63
+ /** Description of the functionality */
64
+ description: zod.string(),
65
+ /** Technical description of the functionality */
66
+ technicalDescription: zod.string().optional(),
67
+ /** Array of parameters for the functionality */
68
+ parameters: zod.array(basic_1.ParameterSchema),
69
+ /** Array of prerequisites for the functionality */
70
+ prerequisites: zod.array(zod.string()).optional(),
71
+ /** Impact of the functionality */
72
+ impact: zod.string().optional(),
73
+ /** Array of examples for the functionality */
74
+ examples: zod.array(zod.string()).optional(),
75
+ /** Name of the page associated with the functionality */
76
+ pageName: zod.string().optional()
77
+ });
78
+ /**
79
+ * Output interface for the 'execute-functionality' functionality
80
+ */
81
+ exports.ExecuteFunctionalityOutputSchema = zod.object({
82
+ /** ID or array of IDs of the executed functionality(ies) */
83
+ functionalityId: basic_1.FunctionalityIdSchema,
84
+ /** Status of the execution */
85
+ status: zod.string(),
86
+ /** Message describing the execution result */
87
+ message: zod.string(),
88
+ /** Parameters used in the execution */
89
+ parameters: zod.unknown(),
90
+ /** Path to the Fiori application */
91
+ appPath: zod.string(),
92
+ /** Array of changes made during the execution */
93
+ changes: zod.array(zod.string()),
94
+ /** Timestamp of the execution */
95
+ timestamp: zod.string()
96
+ });
97
+ //# sourceMappingURL=output.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sap-ux/fiori-mcp-server",
3
3
  "description": "SAP Fiori - Model Context Protocol (MCP) server",
4
- "version": "0.0.4",
4
+ "version": "0.0.6",
5
5
  "keywords": [
6
6
  "SAP Fiori tools",
7
7
  "SAP Fiori elements",
@@ -30,20 +30,24 @@
30
30
  "devDependencies": {
31
31
  "@types/json-schema": "7.0.5",
32
32
  "@types/mem-fs": "1.1.2",
33
- "@sap-ux/text-document-utils": "0.3.1",
34
- "@sap-ux/odata-entity-model": "0.3.1",
33
+ "@sap-ux/i18n": "0.3.3",
35
34
  "@sap-ux/odata-annotation-core-types": "0.4.5",
36
- "@sap-ux/i18n": "0.3.3"
35
+ "@sap-ux/odata-entity-model": "0.3.1",
36
+ "@sap-ux/text-document-utils": "0.3.1"
37
37
  },
38
38
  "dependencies": {
39
39
  "@modelcontextprotocol/sdk": "1.17.4",
40
- "@sap/ux-specification": "1.136.4",
41
40
  "@sap-ux/annotation-converter": "0.10.3",
41
+ "@sap/ux-specification": "1.136.4",
42
42
  "i18next": "25.3.0",
43
+ "os-name": "4.0.1",
43
44
  "zod": "4.1.5",
44
- "@sap-ux/project-access": "1.30.13",
45
+ "@sap-ux/btp-utils": "1.1.1",
45
46
  "@sap-ux/fiori-annotation-api": "0.6.17",
46
- "@sap-ux/nodejs-utils": "0.2.3"
47
+ "@sap-ux/nodejs-utils": "0.2.3",
48
+ "@sap-ux/project-access": "1.30.13",
49
+ "@sap-ux/feature-toggle": "0.3.1",
50
+ "@sap-ux/telemetry": "0.6.19"
47
51
  },
48
52
  "engines": {
49
53
  "node": ">=20.x"