@lyrra/mcp-server 1.1.2 → 1.1.5

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 (105) hide show
  1. package/README.md +59 -242
  2. package/dist/auth-session.js +160 -0
  3. package/dist/eduflow-block-docs.js +438 -0
  4. package/dist/index.js +179 -12
  5. package/dist/lyrra-http.js +80 -0
  6. package/dist/openapi-parse.js +61 -0
  7. package/dist/register-eduflow-block-tools.js +31 -0
  8. package/package.json +36 -13
  9. package/Dockerfile +0 -16
  10. package/dist/client.d.ts +0 -23
  11. package/dist/client.d.ts.map +0 -1
  12. package/dist/client.js +0 -92
  13. package/dist/client.js.map +0 -1
  14. package/dist/config.d.ts +0 -8
  15. package/dist/config.d.ts.map +0 -1
  16. package/dist/config.js +0 -8
  17. package/dist/config.js.map +0 -1
  18. package/dist/http-server.d.ts +0 -8
  19. package/dist/http-server.d.ts.map +0 -1
  20. package/dist/http-server.js +0 -476
  21. package/dist/http-server.js.map +0 -1
  22. package/dist/index.d.ts +0 -3
  23. package/dist/index.d.ts.map +0 -1
  24. package/dist/index.js.map +0 -1
  25. package/dist/resources/block-types.d.ts +0 -318
  26. package/dist/resources/block-types.d.ts.map +0 -1
  27. package/dist/resources/block-types.js +0 -297
  28. package/dist/resources/block-types.js.map +0 -1
  29. package/dist/resources/flow-schema.d.ts +0 -147
  30. package/dist/resources/flow-schema.d.ts.map +0 -1
  31. package/dist/resources/flow-schema.js +0 -143
  32. package/dist/resources/flow-schema.js.map +0 -1
  33. package/dist/server-factory.d.ts +0 -8
  34. package/dist/server-factory.d.ts.map +0 -1
  35. package/dist/server-factory.js +0 -82
  36. package/dist/server-factory.js.map +0 -1
  37. package/dist/tools/admin.d.ts +0 -265
  38. package/dist/tools/admin.d.ts.map +0 -1
  39. package/dist/tools/admin.js +0 -118
  40. package/dist/tools/admin.js.map +0 -1
  41. package/dist/tools/ai-designer.d.ts +0 -297
  42. package/dist/tools/ai-designer.d.ts.map +0 -1
  43. package/dist/tools/ai-designer.js +0 -89
  44. package/dist/tools/ai-designer.js.map +0 -1
  45. package/dist/tools/analytics.d.ts +0 -95
  46. package/dist/tools/analytics.d.ts.map +0 -1
  47. package/dist/tools/analytics.js +0 -44
  48. package/dist/tools/analytics.js.map +0 -1
  49. package/dist/tools/auth.d.ts +0 -61
  50. package/dist/tools/auth.d.ts.map +0 -1
  51. package/dist/tools/auth.js +0 -36
  52. package/dist/tools/auth.js.map +0 -1
  53. package/dist/tools/blocks.d.ts +0 -401
  54. package/dist/tools/blocks.d.ts.map +0 -1
  55. package/dist/tools/blocks.js +0 -167
  56. package/dist/tools/blocks.js.map +0 -1
  57. package/dist/tools/connections.d.ts +0 -173
  58. package/dist/tools/connections.d.ts.map +0 -1
  59. package/dist/tools/connections.js +0 -81
  60. package/dist/tools/connections.js.map +0 -1
  61. package/dist/tools/eduflow.d.ts +0 -409
  62. package/dist/tools/eduflow.d.ts.map +0 -1
  63. package/dist/tools/eduflow.js +0 -139
  64. package/dist/tools/eduflow.js.map +0 -1
  65. package/dist/tools/participants.d.ts +0 -221
  66. package/dist/tools/participants.d.ts.map +0 -1
  67. package/dist/tools/participants.js +0 -70
  68. package/dist/tools/participants.js.map +0 -1
  69. package/dist/tools/presentation.d.ts +0 -233
  70. package/dist/tools/presentation.d.ts.map +0 -1
  71. package/dist/tools/presentation.js +0 -57
  72. package/dist/tools/presentation.js.map +0 -1
  73. package/dist/tools/projects.d.ts +0 -131
  74. package/dist/tools/projects.d.ts.map +0 -1
  75. package/dist/tools/projects.js +0 -55
  76. package/dist/tools/projects.js.map +0 -1
  77. package/dist/tools/resources.d.ts +0 -93
  78. package/dist/tools/resources.d.ts.map +0 -1
  79. package/dist/tools/resources.js +0 -37
  80. package/dist/tools/resources.js.map +0 -1
  81. package/dist/tools/store.d.ts +0 -125
  82. package/dist/tools/store.d.ts.map +0 -1
  83. package/dist/tools/store.js +0 -66
  84. package/dist/tools/store.js.map +0 -1
  85. package/mcp-config.example.json +0 -14
  86. package/src/client.ts +0 -106
  87. package/src/config.ts +0 -7
  88. package/src/http-server.ts +0 -591
  89. package/src/index.ts +0 -23
  90. package/src/resources/block-types.ts +0 -298
  91. package/src/resources/flow-schema.ts +0 -148
  92. package/src/server-factory.ts +0 -109
  93. package/src/tools/admin.ts +0 -128
  94. package/src/tools/ai-designer.ts +0 -97
  95. package/src/tools/analytics.ts +0 -49
  96. package/src/tools/auth.ts +0 -39
  97. package/src/tools/blocks.ts +0 -180
  98. package/src/tools/connections.ts +0 -83
  99. package/src/tools/eduflow.ts +0 -150
  100. package/src/tools/participants.ts +0 -77
  101. package/src/tools/presentation.ts +0 -61
  102. package/src/tools/projects.ts +0 -61
  103. package/src/tools/resources.ts +0 -41
  104. package/src/tools/store.ts +0 -67
  105. package/tsconfig.json +0 -19
@@ -1,118 +0,0 @@
1
- import { z } from 'zod';
2
- import { client as defaultClient } from '../client.js';
3
- export function createAdminTools(c) {
4
- return {
5
- // --- Versions ---
6
- version_list: {
7
- description: 'Lister toutes les versions d\'un parcours EduFlow.',
8
- inputSchema: z.object({
9
- flowId: z.string().uuid().describe('ID du parcours'),
10
- }),
11
- handler: async ({ flowId }) => {
12
- return c.get(`/flows/${flowId}/versions`, 'eduflow');
13
- },
14
- },
15
- version_create: {
16
- description: 'Créer une nouvelle version (snapshot) du parcours. Permet de revenir en arrière si besoin.',
17
- inputSchema: z.object({
18
- flowId: z.string().uuid().describe('ID du parcours'),
19
- versionLabel: z.string().optional().describe('Label de la version (ex: "v2.0 - Ajout quiz")'),
20
- }),
21
- handler: async ({ flowId, versionLabel }) => {
22
- return c.post(`/flows/${flowId}/versions`, { versionLabel }, 'eduflow');
23
- },
24
- },
25
- version_activate: {
26
- description: 'Activer une version spécifique comme version publique du parcours.',
27
- inputSchema: z.object({
28
- flowId: z.string().uuid().describe('ID du parcours'),
29
- versionId: z.string().uuid().describe('ID de la version à activer'),
30
- }),
31
- handler: async ({ flowId, versionId }) => {
32
- return c.post(`/flows/${flowId}/versions/${versionId}/activate`, {}, 'eduflow');
33
- },
34
- },
35
- // --- Gamification ---
36
- gamification_stats: {
37
- description: 'Récupérer les statistiques de gamification de l\'utilisateur (niveau, streak, badges, missions).',
38
- inputSchema: z.object({}),
39
- handler: async () => {
40
- return c.get('/gamification/stats');
41
- },
42
- },
43
- gamification_objectives: {
44
- description: 'Récupérer les prochains objectifs de gamification à atteindre.',
45
- inputSchema: z.object({}),
46
- handler: async () => {
47
- return c.get('/gamification/objectives');
48
- },
49
- },
50
- // --- Activity ---
51
- activity_history: {
52
- description: 'Récupérer l\'historique d\'activité de l\'utilisateur avec pagination.',
53
- inputSchema: z.object({
54
- page: z.number().optional().describe('Page (défaut: 1)'),
55
- limit: z.number().optional().describe('Nombre par page (défaut: 20)'),
56
- }),
57
- handler: async ({ page, limit }) => {
58
- const params = new URLSearchParams();
59
- if (page)
60
- params.set('page', String(page));
61
- if (limit)
62
- params.set('limit', String(limit));
63
- const query = params.toString() ? `?${params}` : '';
64
- return c.get(`/activity${query}`);
65
- },
66
- },
67
- activity_stats: {
68
- description: 'Statistiques d\'utilisation par période (jour/semaine/mois).',
69
- inputSchema: z.object({
70
- period: z.enum(['day', 'week', 'month']).optional().describe('Période (défaut: week)'),
71
- }),
72
- handler: async ({ period }) => {
73
- const query = period ? `?period=${period}` : '';
74
- return c.get(`/activity/stats${query}`);
75
- },
76
- },
77
- // --- Webhooks ---
78
- webhook_list: {
79
- description: 'Lister les webhooks configurés pour recevoir des événements (block.completed, flow.completed, etc.).',
80
- inputSchema: z.object({}),
81
- handler: async () => {
82
- return c.get('/webhooks');
83
- },
84
- },
85
- webhook_create: {
86
- description: 'Créer un webhook pour recevoir des notifications en temps réel sur des événements.',
87
- inputSchema: z.object({
88
- url: z.string().url().describe('URL du webhook (doit être accessible publiquement)'),
89
- events: z.array(z.string()).describe('Événements à écouter (ex: ["block.completed", "flow.completed"])'),
90
- name: z.string().optional().describe('Nom du webhook'),
91
- }),
92
- handler: async (data) => {
93
- return c.post('/webhooks', data);
94
- },
95
- },
96
- webhook_delete: {
97
- description: 'Supprimer un webhook.',
98
- inputSchema: z.object({
99
- webhookId: z.string().uuid().describe('ID du webhook'),
100
- }),
101
- handler: async ({ webhookId }) => {
102
- return c.delete(`/webhooks/${webhookId}`);
103
- },
104
- },
105
- webhook_test: {
106
- description: 'Tester un webhook en envoyant un événement de test.',
107
- inputSchema: z.object({
108
- webhookId: z.string().uuid().describe('ID du webhook à tester'),
109
- }),
110
- handler: async ({ webhookId }) => {
111
- return c.post(`/webhooks/${webhookId}/test`, {});
112
- },
113
- },
114
- };
115
- }
116
- // Backward compatibility for stdio mode
117
- export const adminTools = createAdminTools(defaultClient);
118
- //# sourceMappingURL=admin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"admin.js","sourceRoot":"","sources":["../../src/tools/admin.ts"],"names":[],"mappings":"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"}
@@ -1,297 +0,0 @@
1
- import { z } from 'zod';
2
- import { LyrraClient } from '../client.js';
3
- export declare function createAiDesignerTools(c: LyrraClient): {
4
- ai_generate_plan: {
5
- description: string;
6
- inputSchema: z.ZodObject<{
7
- flowId: z.ZodString;
8
- topic: z.ZodString;
9
- targetAudience: z.ZodOptional<z.ZodString>;
10
- objectives: z.ZodOptional<z.ZodString>;
11
- duration: z.ZodOptional<z.ZodString>;
12
- context: z.ZodOptional<z.ZodString>;
13
- }, "strip", z.ZodTypeAny, {
14
- flowId: string;
15
- topic: string;
16
- objectives?: string | undefined;
17
- targetAudience?: string | undefined;
18
- duration?: string | undefined;
19
- context?: string | undefined;
20
- }, {
21
- flowId: string;
22
- topic: string;
23
- objectives?: string | undefined;
24
- targetAudience?: string | undefined;
25
- duration?: string | undefined;
26
- context?: string | undefined;
27
- }>;
28
- handler: ({ flowId, ...data }: any) => Promise<any>;
29
- };
30
- ai_generate_block: {
31
- description: string;
32
- inputSchema: z.ZodObject<{
33
- flowId: z.ZodString;
34
- blockType: z.ZodString;
35
- instructions: z.ZodString;
36
- context: z.ZodOptional<z.ZodString>;
37
- }, "strip", z.ZodTypeAny, {
38
- flowId: string;
39
- blockType: string;
40
- instructions: string;
41
- context?: string | undefined;
42
- }, {
43
- flowId: string;
44
- blockType: string;
45
- instructions: string;
46
- context?: string | undefined;
47
- }>;
48
- handler: ({ flowId, ...data }: any) => Promise<any>;
49
- };
50
- ai_generate_presentation: {
51
- description: string;
52
- inputSchema: z.ZodObject<{
53
- flowId: z.ZodString;
54
- style: z.ZodOptional<z.ZodString>;
55
- }, "strip", z.ZodTypeAny, {
56
- flowId: string;
57
- style?: string | undefined;
58
- }, {
59
- flowId: string;
60
- style?: string | undefined;
61
- }>;
62
- handler: ({ flowId, ...data }: any) => Promise<any>;
63
- };
64
- ai_generate_objectives: {
65
- description: string;
66
- inputSchema: z.ZodObject<{
67
- flowId: z.ZodString;
68
- }, "strip", z.ZodTypeAny, {
69
- flowId: string;
70
- }, {
71
- flowId: string;
72
- }>;
73
- handler: ({ flowId }: {
74
- flowId: string;
75
- }) => Promise<any>;
76
- };
77
- ai_save_objectives: {
78
- description: string;
79
- inputSchema: z.ZodObject<{
80
- flowId: z.ZodString;
81
- globalObjective: z.ZodString;
82
- steps: z.ZodArray<z.ZodObject<{
83
- id: z.ZodString;
84
- title: z.ZodString;
85
- description: z.ZodOptional<z.ZodString>;
86
- blockId: z.ZodOptional<z.ZodString>;
87
- }, "strip", z.ZodTypeAny, {
88
- title: string;
89
- id: string;
90
- description?: string | undefined;
91
- blockId?: string | undefined;
92
- }, {
93
- title: string;
94
- id: string;
95
- description?: string | undefined;
96
- blockId?: string | undefined;
97
- }>, "many">;
98
- }, "strip", z.ZodTypeAny, {
99
- flowId: string;
100
- globalObjective: string;
101
- steps: {
102
- title: string;
103
- id: string;
104
- description?: string | undefined;
105
- blockId?: string | undefined;
106
- }[];
107
- }, {
108
- flowId: string;
109
- globalObjective: string;
110
- steps: {
111
- title: string;
112
- id: string;
113
- description?: string | undefined;
114
- blockId?: string | undefined;
115
- }[];
116
- }>;
117
- handler: ({ flowId, ...objectives }: any) => Promise<any>;
118
- };
119
- ai_chat_message: {
120
- description: string;
121
- inputSchema: z.ZodObject<{
122
- flowId: z.ZodString;
123
- message: z.ZodString;
124
- }, "strip", z.ZodTypeAny, {
125
- message: string;
126
- flowId: string;
127
- }, {
128
- message: string;
129
- flowId: string;
130
- }>;
131
- handler: ({ flowId, message }: {
132
- flowId: string;
133
- message: string;
134
- }) => Promise<any>;
135
- };
136
- ai_get_conversation: {
137
- description: string;
138
- inputSchema: z.ZodObject<{
139
- flowId: z.ZodString;
140
- }, "strip", z.ZodTypeAny, {
141
- flowId: string;
142
- }, {
143
- flowId: string;
144
- }>;
145
- handler: ({ flowId }: {
146
- flowId: string;
147
- }) => Promise<any>;
148
- };
149
- };
150
- export declare const aiDesignerTools: {
151
- ai_generate_plan: {
152
- description: string;
153
- inputSchema: z.ZodObject<{
154
- flowId: z.ZodString;
155
- topic: z.ZodString;
156
- targetAudience: z.ZodOptional<z.ZodString>;
157
- objectives: z.ZodOptional<z.ZodString>;
158
- duration: z.ZodOptional<z.ZodString>;
159
- context: z.ZodOptional<z.ZodString>;
160
- }, "strip", z.ZodTypeAny, {
161
- flowId: string;
162
- topic: string;
163
- objectives?: string | undefined;
164
- targetAudience?: string | undefined;
165
- duration?: string | undefined;
166
- context?: string | undefined;
167
- }, {
168
- flowId: string;
169
- topic: string;
170
- objectives?: string | undefined;
171
- targetAudience?: string | undefined;
172
- duration?: string | undefined;
173
- context?: string | undefined;
174
- }>;
175
- handler: ({ flowId, ...data }: any) => Promise<any>;
176
- };
177
- ai_generate_block: {
178
- description: string;
179
- inputSchema: z.ZodObject<{
180
- flowId: z.ZodString;
181
- blockType: z.ZodString;
182
- instructions: z.ZodString;
183
- context: z.ZodOptional<z.ZodString>;
184
- }, "strip", z.ZodTypeAny, {
185
- flowId: string;
186
- blockType: string;
187
- instructions: string;
188
- context?: string | undefined;
189
- }, {
190
- flowId: string;
191
- blockType: string;
192
- instructions: string;
193
- context?: string | undefined;
194
- }>;
195
- handler: ({ flowId, ...data }: any) => Promise<any>;
196
- };
197
- ai_generate_presentation: {
198
- description: string;
199
- inputSchema: z.ZodObject<{
200
- flowId: z.ZodString;
201
- style: z.ZodOptional<z.ZodString>;
202
- }, "strip", z.ZodTypeAny, {
203
- flowId: string;
204
- style?: string | undefined;
205
- }, {
206
- flowId: string;
207
- style?: string | undefined;
208
- }>;
209
- handler: ({ flowId, ...data }: any) => Promise<any>;
210
- };
211
- ai_generate_objectives: {
212
- description: string;
213
- inputSchema: z.ZodObject<{
214
- flowId: z.ZodString;
215
- }, "strip", z.ZodTypeAny, {
216
- flowId: string;
217
- }, {
218
- flowId: string;
219
- }>;
220
- handler: ({ flowId }: {
221
- flowId: string;
222
- }) => Promise<any>;
223
- };
224
- ai_save_objectives: {
225
- description: string;
226
- inputSchema: z.ZodObject<{
227
- flowId: z.ZodString;
228
- globalObjective: z.ZodString;
229
- steps: z.ZodArray<z.ZodObject<{
230
- id: z.ZodString;
231
- title: z.ZodString;
232
- description: z.ZodOptional<z.ZodString>;
233
- blockId: z.ZodOptional<z.ZodString>;
234
- }, "strip", z.ZodTypeAny, {
235
- title: string;
236
- id: string;
237
- description?: string | undefined;
238
- blockId?: string | undefined;
239
- }, {
240
- title: string;
241
- id: string;
242
- description?: string | undefined;
243
- blockId?: string | undefined;
244
- }>, "many">;
245
- }, "strip", z.ZodTypeAny, {
246
- flowId: string;
247
- globalObjective: string;
248
- steps: {
249
- title: string;
250
- id: string;
251
- description?: string | undefined;
252
- blockId?: string | undefined;
253
- }[];
254
- }, {
255
- flowId: string;
256
- globalObjective: string;
257
- steps: {
258
- title: string;
259
- id: string;
260
- description?: string | undefined;
261
- blockId?: string | undefined;
262
- }[];
263
- }>;
264
- handler: ({ flowId, ...objectives }: any) => Promise<any>;
265
- };
266
- ai_chat_message: {
267
- description: string;
268
- inputSchema: z.ZodObject<{
269
- flowId: z.ZodString;
270
- message: z.ZodString;
271
- }, "strip", z.ZodTypeAny, {
272
- message: string;
273
- flowId: string;
274
- }, {
275
- message: string;
276
- flowId: string;
277
- }>;
278
- handler: ({ flowId, message }: {
279
- flowId: string;
280
- message: string;
281
- }) => Promise<any>;
282
- };
283
- ai_get_conversation: {
284
- description: string;
285
- inputSchema: z.ZodObject<{
286
- flowId: z.ZodString;
287
- }, "strip", z.ZodTypeAny, {
288
- flowId: string;
289
- }, {
290
- flowId: string;
291
- }>;
292
- handler: ({ flowId }: {
293
- flowId: string;
294
- }) => Promise<any>;
295
- };
296
- };
297
- //# sourceMappingURL=ai-designer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai-designer.d.ts","sourceRoot":"","sources":["../../src/tools/ai-designer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;uCAYX,GAAG;;;;;;;;;;;;;;;;;;;;uCAaH,GAAG;;;;;;;;;;;;;;uCAWH,GAAG;;;;;;;;;;;8BAUZ;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAiBH,GAAG;;;;;;;;;;;;;;uCAWT;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;8BAU5C;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE;;EAKjD;AAGD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;uCAhFa,GAAG;;;;;;;;;;;;;;;;;;;;uCAaH,GAAG;;;;;;;;;;;;;;uCAWH,GAAG;;;;;;;;;;;8BAUZ;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAiBH,GAAG;;;;;;;;;;;;;;uCAWT;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;8BAU5C;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE;;CAQiB,CAAC"}
@@ -1,89 +0,0 @@
1
- import { z } from 'zod';
2
- import { client as defaultClient } from '../client.js';
3
- export function createAiDesignerTools(c) {
4
- return {
5
- ai_generate_plan: {
6
- description: 'Générer automatiquement un plan/structure de parcours pédagogique à partir d\'un sujet et d\'objectifs. L\'IA propose une liste de blocs organisés.',
7
- inputSchema: z.object({
8
- flowId: z.string().uuid().describe('ID du parcours'),
9
- topic: z.string().describe('Sujet du parcours (ex: "Les fractions en CM2")'),
10
- targetAudience: z.string().optional().describe('Public cible (ex: "Élèves de CM2, 9-10 ans")'),
11
- objectives: z.string().optional().describe('Objectifs pédagogiques souhaités'),
12
- duration: z.string().optional().describe('Durée estimée (ex: "30 minutes")'),
13
- context: z.string().optional().describe('Contexte additionnel pour l\'IA'),
14
- }),
15
- handler: async ({ flowId, ...data }) => {
16
- return c.post(`/flows/${flowId}/chatbot/generate-plan`, data, 'eduflow');
17
- },
18
- },
19
- ai_generate_block: {
20
- description: 'Générer le contenu d\'un bloc spécifique avec l\'IA. Peut créer du texte enrichi, des quiz, des évaluations, des graphiques, etc.',
21
- inputSchema: z.object({
22
- flowId: z.string().uuid().describe('ID du parcours'),
23
- blockType: z.string().describe('Type de bloc à générer (text, quiz, evaluation, chart, timeline, etc.)'),
24
- instructions: z.string().describe('Instructions pour le contenu du bloc (ex: "Créer un quiz de 5 questions sur les fractions")'),
25
- context: z.string().optional().describe('Contexte du parcours pour l\'IA'),
26
- }),
27
- handler: async ({ flowId, ...data }) => {
28
- return c.post(`/flows/${flowId}/chatbot/generate-block`, data, 'eduflow');
29
- },
30
- },
31
- ai_generate_presentation: {
32
- description: 'Générer automatiquement la page de présentation du parcours (description, objectifs affichés, image, structure visible).',
33
- inputSchema: z.object({
34
- flowId: z.string().uuid().describe('ID du parcours'),
35
- style: z.string().optional().describe('Style de présentation souhaité'),
36
- }),
37
- handler: async ({ flowId, ...data }) => {
38
- return c.post(`/flows/${flowId}/chatbot/generate-presentation`, data, 'eduflow');
39
- },
40
- },
41
- ai_generate_objectives: {
42
- description: 'Générer automatiquement les objectifs pédagogiques du parcours à partir du contenu existant.',
43
- inputSchema: z.object({
44
- flowId: z.string().uuid().describe('ID du parcours'),
45
- }),
46
- handler: async ({ flowId }) => {
47
- return c.post(`/flows/${flowId}/chatbot/generate-objectives`, {}, 'eduflow');
48
- },
49
- },
50
- ai_save_objectives: {
51
- description: 'Sauvegarder les objectifs pédagogiques (globaux et par étape) sur le parcours.',
52
- inputSchema: z.object({
53
- flowId: z.string().uuid().describe('ID du parcours'),
54
- globalObjective: z.string().describe('Objectif global du parcours'),
55
- steps: z.array(z.object({
56
- id: z.string().describe('ID de l\'étape'),
57
- title: z.string().describe('Titre de l\'objectif'),
58
- description: z.string().optional().describe('Description détaillée'),
59
- blockId: z.string().optional().describe('Bloc associé à cet objectif'),
60
- })).describe('Liste des objectifs par étape'),
61
- }),
62
- handler: async ({ flowId, ...objectives }) => {
63
- return c.post(`/flows/${flowId}/chatbot/save-objectives`, objectives, 'eduflow');
64
- },
65
- },
66
- ai_chat_message: {
67
- description: 'Envoyer un message au designer IA pour discuter de la conception du parcours, poser des questions, demander des modifications.',
68
- inputSchema: z.object({
69
- flowId: z.string().uuid().describe('ID du parcours'),
70
- message: z.string().describe('Message à envoyer à l\'IA designer'),
71
- }),
72
- handler: async ({ flowId, message }) => {
73
- return c.post(`/flows/${flowId}/chatbot/message`, { message }, 'eduflow');
74
- },
75
- },
76
- ai_get_conversation: {
77
- description: 'Récupérer l\'historique de conversation avec le designer IA pour un parcours.',
78
- inputSchema: z.object({
79
- flowId: z.string().uuid().describe('ID du parcours'),
80
- }),
81
- handler: async ({ flowId }) => {
82
- return c.get(`/flows/${flowId}/chatbot/conversation`, 'eduflow');
83
- },
84
- },
85
- };
86
- }
87
- // Backward compatibility for stdio mode
88
- export const aiDesignerTools = createAiDesignerTools(defaultClient);
89
- //# sourceMappingURL=ai-designer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai-designer.js","sourceRoot":"","sources":["../../src/tools/ai-designer.ts"],"names":[],"mappings":"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"}
@@ -1,95 +0,0 @@
1
- import { z } from 'zod';
2
- import { LyrraClient } from '../client.js';
3
- export declare function createAnalyticsTools(c: LyrraClient): {
4
- analytics_overview: {
5
- description: string;
6
- inputSchema: z.ZodObject<{
7
- period: z.ZodOptional<z.ZodEnum<["day", "week", "month", "semester", "year"]>>;
8
- }, "strip", z.ZodTypeAny, {
9
- period?: "day" | "week" | "month" | "semester" | "year" | undefined;
10
- }, {
11
- period?: "day" | "week" | "month" | "semester" | "year" | undefined;
12
- }>;
13
- handler: ({ period }: {
14
- period?: string;
15
- }) => Promise<any>;
16
- };
17
- analytics_flow_learners: {
18
- description: string;
19
- inputSchema: z.ZodObject<{
20
- flowId: z.ZodString;
21
- }, "strip", z.ZodTypeAny, {
22
- flowId: string;
23
- }, {
24
- flowId: string;
25
- }>;
26
- handler: ({ flowId }: {
27
- flowId: string;
28
- }) => Promise<any>;
29
- };
30
- analytics_flow_dashboard: {
31
- description: string;
32
- inputSchema: z.ZodObject<{
33
- flowId: z.ZodString;
34
- }, "strip", z.ZodTypeAny, {
35
- flowId: string;
36
- }, {
37
- flowId: string;
38
- }>;
39
- handler: ({ flowId }: {
40
- flowId: string;
41
- }) => Promise<any>;
42
- };
43
- analytics_my_stats: {
44
- description: string;
45
- inputSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
46
- handler: () => Promise<any>;
47
- };
48
- };
49
- export declare const analyticsTools: {
50
- analytics_overview: {
51
- description: string;
52
- inputSchema: z.ZodObject<{
53
- period: z.ZodOptional<z.ZodEnum<["day", "week", "month", "semester", "year"]>>;
54
- }, "strip", z.ZodTypeAny, {
55
- period?: "day" | "week" | "month" | "semester" | "year" | undefined;
56
- }, {
57
- period?: "day" | "week" | "month" | "semester" | "year" | undefined;
58
- }>;
59
- handler: ({ period }: {
60
- period?: string;
61
- }) => Promise<any>;
62
- };
63
- analytics_flow_learners: {
64
- description: string;
65
- inputSchema: z.ZodObject<{
66
- flowId: z.ZodString;
67
- }, "strip", z.ZodTypeAny, {
68
- flowId: string;
69
- }, {
70
- flowId: string;
71
- }>;
72
- handler: ({ flowId }: {
73
- flowId: string;
74
- }) => Promise<any>;
75
- };
76
- analytics_flow_dashboard: {
77
- description: string;
78
- inputSchema: z.ZodObject<{
79
- flowId: z.ZodString;
80
- }, "strip", z.ZodTypeAny, {
81
- flowId: string;
82
- }, {
83
- flowId: string;
84
- }>;
85
- handler: ({ flowId }: {
86
- flowId: string;
87
- }) => Promise<any>;
88
- };
89
- analytics_my_stats: {
90
- description: string;
91
- inputSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
92
- handler: () => Promise<any>;
93
- };
94
- };
95
- //# sourceMappingURL=analytics.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/tools/analytics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,WAAW;;;;;;;;;;8BAOnB;YAAE,MAAM,CAAC,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;8BAWnB;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;8BAUlB;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE;;;;;;;EAajD;AAGD,eAAO,MAAM,cAAc;;;;;;;;;;8BArCK;YAAE,MAAM,CAAC,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;8BAWnB;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;8BAUlB;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE;;;;;;;CAgBe,CAAC"}
@@ -1,44 +0,0 @@
1
- import { z } from 'zod';
2
- import { client as defaultClient } from '../client.js';
3
- export function createAnalyticsTools(c) {
4
- return {
5
- analytics_overview: {
6
- description: 'Tableau de bord global : nombre de projets, parcours EduFlow, apprenants, crédits utilisés, avec évolution par période.',
7
- inputSchema: z.object({
8
- period: z.enum(['day', 'week', 'month', 'semester', 'year']).optional().describe('Période d\'analyse (défaut: month)'),
9
- }),
10
- handler: async ({ period }) => {
11
- const query = period ? `?period=${period}` : '';
12
- return c.get(`/analytics/overview${query}`);
13
- },
14
- },
15
- analytics_flow_learners: {
16
- description: 'Statistiques des apprenants pour un parcours spécifique : progression, scores, temps passé par apprenant.',
17
- inputSchema: z.object({
18
- flowId: z.string().uuid().describe('ID du parcours'),
19
- }),
20
- handler: async ({ flowId }) => {
21
- return c.get(`/analytics/flow/${flowId}/learners`);
22
- },
23
- },
24
- analytics_flow_dashboard: {
25
- description: 'Dashboard analytics complet d\'un parcours : vue d\'ensemble, taux de complétion, blocs les plus/moins visités.',
26
- inputSchema: z.object({
27
- flowId: z.string().uuid().describe('ID du parcours'),
28
- }),
29
- handler: async ({ flowId }) => {
30
- return c.get(`/flows/${flowId}/analytics`, 'eduflow');
31
- },
32
- },
33
- analytics_my_stats: {
34
- description: 'Mes statistiques personnelles : projets créés, parcours créés, temps total, crédits utilisés.',
35
- inputSchema: z.object({}),
36
- handler: async () => {
37
- return c.get('/analytics/my-stats');
38
- },
39
- },
40
- };
41
- }
42
- // Backward compatibility for stdio mode
43
- export const analyticsTools = createAnalyticsTools(defaultClient);
44
- //# sourceMappingURL=analytics.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../src/tools/analytics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,cAAc,CAAC;AAEvD,MAAM,UAAU,oBAAoB,CAAC,CAAc;IACjD,OAAO;QACP,kBAAkB,EAAE;YAClB,WAAW,EAAE,yHAAyH;YACtI,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;aACvH,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAuB,EAAE,EAAE;gBACjD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,WAAW,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChD,OAAO,CAAC,CAAC,GAAG,CAAC,sBAAsB,KAAK,EAAE,CAAC,CAAC;YAC9C,CAAC;SACF;QAED,uBAAuB,EAAE;YACvB,WAAW,EAAE,2GAA2G;YACxH,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;aACrD,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAsB,EAAE,EAAE;gBAChD,OAAO,CAAC,CAAC,GAAG,CAAC,mBAAmB,MAAM,WAAW,CAAC,CAAC;YACrD,CAAC;SACF;QAED,wBAAwB,EAAE;YACxB,WAAW,EAAE,iHAAiH;YAC9H,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;aACrD,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAsB,EAAE,EAAE;gBAChD,OAAO,CAAC,CAAC,GAAG,CAAC,UAAU,MAAM,YAAY,EAAE,SAAS,CAAC,CAAC;YACxD,CAAC;SACF;QAED,kBAAkB,EAAE;YAClB,WAAW,EAAE,+FAA+F;YAC5G,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;YACzB,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,OAAO,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YACtC,CAAC;SACF;KACA,CAAC;AACJ,CAAC;AAED,wCAAwC;AACxC,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC"}