@apex-inc/mcp-server 0.1.0

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.
@@ -0,0 +1,172 @@
1
+ import { apiGet } from "./api-client.js";
2
+ export const resourceDefinitions = {
3
+ beliefs: {
4
+ uri: "apex://beliefs",
5
+ name: "Assumptions",
6
+ description: "All tracked assumptions with certainty scores and test status",
7
+ mimeType: "application/json",
8
+ handler: async () => {
9
+ const beliefs = await apiGet("/api/beliefs");
10
+ return {
11
+ contents: [
12
+ {
13
+ uri: "apex://beliefs",
14
+ text: JSON.stringify(beliefs, null, 2),
15
+ mimeType: "application/json",
16
+ },
17
+ ],
18
+ };
19
+ },
20
+ },
21
+ activeExperiments: {
22
+ uri: "apex://experiments/active",
23
+ name: "Running Experiments",
24
+ description: "All currently running experiments with results and assumption linkages",
25
+ mimeType: "application/json",
26
+ handler: async () => {
27
+ const experiments = await apiGet("/api/experiments");
28
+ const active = experiments.filter((e) => e.status === "running");
29
+ return {
30
+ contents: [
31
+ {
32
+ uri: "apex://experiments/active",
33
+ text: JSON.stringify(active, null, 2),
34
+ mimeType: "application/json",
35
+ },
36
+ ],
37
+ };
38
+ },
39
+ },
40
+ ledger: {
41
+ uri: "apex://ledger",
42
+ name: "Learning Log",
43
+ description: "History of everything you've learned from experiments",
44
+ mimeType: "application/json",
45
+ handler: async () => {
46
+ const entries = await apiGet("/api/ledger");
47
+ return {
48
+ contents: [
49
+ {
50
+ uri: "apex://ledger",
51
+ text: JSON.stringify(entries, null, 2),
52
+ mimeType: "application/json",
53
+ },
54
+ ],
55
+ };
56
+ },
57
+ },
58
+ intelligenceScore: {
59
+ uri: "apex://intelligence-score",
60
+ name: "Learning Rate",
61
+ description: "Track record: how much of what you assume has been tested, and how fast you're learning",
62
+ mimeType: "application/json",
63
+ handler: async () => {
64
+ const [beliefs, experiments, ledger] = await Promise.all([
65
+ apiGet("/api/beliefs"),
66
+ apiGet("/api/experiments"),
67
+ apiGet("/api/ledger"),
68
+ ]);
69
+ const totalBeliefs = beliefs.length;
70
+ const testedBeliefs = beliefs.filter((b) => experiments.some((e) => e.beliefId === b.id)).length;
71
+ const completedExperiments = experiments.filter((e) => e.status === "completed").length;
72
+ const avgConfidence = beliefs.length > 0
73
+ ? beliefs.reduce((sum, b) => sum + b.confidence, 0) / beliefs.length
74
+ : 0;
75
+ const score = {
76
+ totalBeliefs,
77
+ testedBeliefs,
78
+ untestedBeliefs: totalBeliefs - testedBeliefs,
79
+ completedExperiments,
80
+ runningExperiments: experiments.filter((e) => e.status === "running").length,
81
+ totalDecisions: ledger.length,
82
+ averageBeliefConfidence: Math.round(avgConfidence * 100),
83
+ beliefTestingRate: totalBeliefs > 0
84
+ ? Math.round((testedBeliefs / totalBeliefs) * 100)
85
+ : 0,
86
+ learningVelocity: ledger.length > 0
87
+ ? `${ledger.length} updates from ${completedExperiments} experiments`
88
+ : "No experiments completed yet",
89
+ };
90
+ return {
91
+ contents: [
92
+ {
93
+ uri: "apex://intelligence-score",
94
+ text: JSON.stringify(score, null, 2),
95
+ mimeType: "application/json",
96
+ },
97
+ ],
98
+ };
99
+ },
100
+ },
101
+ intelligence: {
102
+ uri: "apex://intelligence",
103
+ name: "Growth Intelligence",
104
+ description: "Full intelligence metrics: score breakdown, revenue data, learning velocity, and organizational knowledge state",
105
+ mimeType: "application/json",
106
+ handler: async () => {
107
+ const metrics = await apiGet("/api/intelligence");
108
+ return {
109
+ contents: [
110
+ {
111
+ uri: "apex://intelligence",
112
+ text: JSON.stringify(metrics, null, 2),
113
+ mimeType: "application/json",
114
+ },
115
+ ],
116
+ };
117
+ },
118
+ },
119
+ calibration: {
120
+ uri: "apex://calibration",
121
+ name: "Prediction Calibration",
122
+ description: "Prediction accuracy and calibration data: how well your team's predictions match reality",
123
+ mimeType: "application/json",
124
+ handler: async () => {
125
+ const predictions = await apiGet("/api/predictions");
126
+ const evaluated = predictions.filter((p) => p.status === "evaluated");
127
+ const pending = predictions.filter((p) => p.status === "pending");
128
+ const accuracyScores = evaluated
129
+ .map((p) => p.accuracyScore)
130
+ .filter((s) => s !== undefined);
131
+ const avgAccuracy = accuracyScores.length > 0
132
+ ? accuracyScores.reduce((a, b) => a + b, 0) / accuracyScores.length
133
+ : null;
134
+ const overconfident = evaluated.filter((p) => p.confidence > 0.7 && (p.accuracyScore ?? 1) < 0.5).length;
135
+ const underconfident = evaluated.filter((p) => p.confidence < 0.4 && (p.accuracyScore ?? 0) > 0.7).length;
136
+ const calibration = {
137
+ totalPredictions: predictions.length,
138
+ evaluated: evaluated.length,
139
+ pending: pending.length,
140
+ averageAccuracy: avgAccuracy !== null ? Math.round(avgAccuracy * 100) : null,
141
+ overconfidentCount: overconfident,
142
+ underconfidentCount: underconfident,
143
+ calibrationScore: avgAccuracy !== null
144
+ ? Math.round((1 - Math.abs(avgAccuracy - evaluated.reduce((s, p) => s + p.confidence, 0) / evaluated.length)) * 100)
145
+ : null,
146
+ recentPredictions: predictions
147
+ .sort((a, b) => new Date(b.createdAt).getTime() - new Date(a.createdAt).getTime())
148
+ .slice(0, 10)
149
+ .map((p) => ({
150
+ id: p.id,
151
+ metric: p.metric,
152
+ expectedChange: p.expectedChange,
153
+ direction: p.direction,
154
+ confidence: p.confidence,
155
+ status: p.status,
156
+ actualChange: p.actualChange,
157
+ accuracyScore: p.accuracyScore,
158
+ })),
159
+ };
160
+ return {
161
+ contents: [
162
+ {
163
+ uri: "apex://calibration",
164
+ text: JSON.stringify(calibration, null, 2),
165
+ mimeType: "application/json",
166
+ },
167
+ ],
168
+ };
169
+ },
170
+ },
171
+ };
172
+ //# sourceMappingURL=resources.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resources.js","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,478 @@
1
+ import { z } from "zod";
2
+ export declare const toolDefinitions: {
3
+ plan_experiment: {
4
+ description: string;
5
+ schema: z.ZodObject<{
6
+ goal: z.ZodString;
7
+ targetUrl: z.ZodOptional<z.ZodString>;
8
+ }, "strip", z.ZodTypeAny, {
9
+ goal: string;
10
+ targetUrl?: string | undefined;
11
+ }, {
12
+ goal: string;
13
+ targetUrl?: string | undefined;
14
+ }>;
15
+ handler: ({ goal, targetUrl }: {
16
+ goal: string;
17
+ targetUrl?: string;
18
+ }) => Promise<{
19
+ content: {
20
+ type: "text";
21
+ text: string;
22
+ }[];
23
+ }>;
24
+ };
25
+ start_reasoning: {
26
+ description: string;
27
+ schema: z.ZodObject<{
28
+ decision: z.ZodString;
29
+ belief: z.ZodString;
30
+ confidence: z.ZodNumber;
31
+ }, "strip", z.ZodTypeAny, {
32
+ decision: string;
33
+ belief: string;
34
+ confidence: number;
35
+ }, {
36
+ decision: string;
37
+ belief: string;
38
+ confidence: number;
39
+ }>;
40
+ handler: ({ decision, belief, confidence }: {
41
+ decision: string;
42
+ belief: string;
43
+ confidence: number;
44
+ }) => Promise<{
45
+ content: {
46
+ type: "text";
47
+ text: string;
48
+ }[];
49
+ }>;
50
+ };
51
+ create_belief: {
52
+ description: string;
53
+ schema: z.ZodObject<{
54
+ statement: z.ZodString;
55
+ confidence: z.ZodNumber;
56
+ parentBeliefId: z.ZodOptional<z.ZodString>;
57
+ }, "strip", z.ZodTypeAny, {
58
+ confidence: number;
59
+ statement: string;
60
+ parentBeliefId?: string | undefined;
61
+ }, {
62
+ confidence: number;
63
+ statement: string;
64
+ parentBeliefId?: string | undefined;
65
+ }>;
66
+ handler: ({ statement, confidence, parentBeliefId }: {
67
+ statement: string;
68
+ confidence: number;
69
+ parentBeliefId?: string;
70
+ }) => Promise<{
71
+ content: {
72
+ type: "text";
73
+ text: string;
74
+ }[];
75
+ }>;
76
+ };
77
+ create_experiment: {
78
+ description: string;
79
+ schema: z.ZodObject<{
80
+ name: z.ZodString;
81
+ targetUrl: z.ZodString;
82
+ controlContent: z.ZodString;
83
+ variantContent: z.ZodString;
84
+ targetComponent: z.ZodOptional<z.ZodString>;
85
+ targetAnchor: z.ZodOptional<z.ZodString>;
86
+ trafficSplit: z.ZodOptional<z.ZodNumber>;
87
+ beliefId: z.ZodOptional<z.ZodString>;
88
+ hypothesisId: z.ZodOptional<z.ZodString>;
89
+ predictionId: z.ZodOptional<z.ZodString>;
90
+ mode: z.ZodOptional<z.ZodEnum<["sdk", "snippet"]>>;
91
+ preview: z.ZodOptional<z.ZodBoolean>;
92
+ }, "strip", z.ZodTypeAny, {
93
+ targetUrl: string;
94
+ name: string;
95
+ controlContent: string;
96
+ variantContent: string;
97
+ targetComponent?: string | undefined;
98
+ targetAnchor?: string | undefined;
99
+ trafficSplit?: number | undefined;
100
+ beliefId?: string | undefined;
101
+ hypothesisId?: string | undefined;
102
+ predictionId?: string | undefined;
103
+ mode?: "sdk" | "snippet" | undefined;
104
+ preview?: boolean | undefined;
105
+ }, {
106
+ targetUrl: string;
107
+ name: string;
108
+ controlContent: string;
109
+ variantContent: string;
110
+ targetComponent?: string | undefined;
111
+ targetAnchor?: string | undefined;
112
+ trafficSplit?: number | undefined;
113
+ beliefId?: string | undefined;
114
+ hypothesisId?: string | undefined;
115
+ predictionId?: string | undefined;
116
+ mode?: "sdk" | "snippet" | undefined;
117
+ preview?: boolean | undefined;
118
+ }>;
119
+ handler: (args: {
120
+ name: string;
121
+ targetUrl: string;
122
+ controlContent: string;
123
+ variantContent: string;
124
+ targetComponent?: string;
125
+ targetAnchor?: string;
126
+ trafficSplit?: number;
127
+ beliefId?: string;
128
+ hypothesisId?: string;
129
+ predictionId?: string;
130
+ mode?: "sdk" | "snippet";
131
+ preview?: boolean;
132
+ }) => Promise<{
133
+ content: {
134
+ type: "text";
135
+ text: string;
136
+ }[];
137
+ }>;
138
+ };
139
+ activate_experiment: {
140
+ description: string;
141
+ schema: z.ZodObject<{
142
+ experimentId: z.ZodString;
143
+ }, "strip", z.ZodTypeAny, {
144
+ experimentId: string;
145
+ }, {
146
+ experimentId: string;
147
+ }>;
148
+ handler: ({ experimentId }: {
149
+ experimentId: string;
150
+ }) => Promise<{
151
+ content: {
152
+ type: "text";
153
+ text: string;
154
+ }[];
155
+ }>;
156
+ };
157
+ pause_experiment: {
158
+ description: string;
159
+ schema: z.ZodObject<{
160
+ experimentId: z.ZodString;
161
+ }, "strip", z.ZodTypeAny, {
162
+ experimentId: string;
163
+ }, {
164
+ experimentId: string;
165
+ }>;
166
+ handler: ({ experimentId }: {
167
+ experimentId: string;
168
+ }) => Promise<{
169
+ content: {
170
+ type: "text";
171
+ text: string;
172
+ }[];
173
+ }>;
174
+ };
175
+ track_deployment: {
176
+ description: string;
177
+ schema: z.ZodObject<{
178
+ experimentId: z.ZodString;
179
+ commitSha: z.ZodString;
180
+ branch: z.ZodOptional<z.ZodString>;
181
+ }, "strip", z.ZodTypeAny, {
182
+ experimentId: string;
183
+ commitSha: string;
184
+ branch?: string | undefined;
185
+ }, {
186
+ experimentId: string;
187
+ commitSha: string;
188
+ branch?: string | undefined;
189
+ }>;
190
+ handler: ({ experimentId, commitSha, branch }: {
191
+ experimentId: string;
192
+ commitSha: string;
193
+ branch?: string;
194
+ }) => Promise<{
195
+ content: {
196
+ type: "text";
197
+ text: string;
198
+ }[];
199
+ }>;
200
+ };
201
+ check_deployment: {
202
+ description: string;
203
+ schema: z.ZodObject<{
204
+ experimentId: z.ZodString;
205
+ }, "strip", z.ZodTypeAny, {
206
+ experimentId: string;
207
+ }, {
208
+ experimentId: string;
209
+ }>;
210
+ handler: ({ experimentId }: {
211
+ experimentId: string;
212
+ }) => Promise<{
213
+ content: {
214
+ type: "text";
215
+ text: string;
216
+ }[];
217
+ }>;
218
+ };
219
+ archive_experiment: {
220
+ description: string;
221
+ schema: z.ZodObject<{
222
+ experimentId: z.ZodString;
223
+ }, "strip", z.ZodTypeAny, {
224
+ experimentId: string;
225
+ }, {
226
+ experimentId: string;
227
+ }>;
228
+ handler: ({ experimentId }: {
229
+ experimentId: string;
230
+ }) => Promise<{
231
+ content: {
232
+ type: "text";
233
+ text: string;
234
+ }[];
235
+ }>;
236
+ };
237
+ list_experiments: {
238
+ description: string;
239
+ schema: z.ZodObject<{
240
+ status: z.ZodOptional<z.ZodEnum<["all", "running", "completed", "draft", "paused", "archived"]>>;
241
+ }, "strip", z.ZodTypeAny, {
242
+ status?: "all" | "running" | "completed" | "draft" | "paused" | "archived" | undefined;
243
+ }, {
244
+ status?: "all" | "running" | "completed" | "draft" | "paused" | "archived" | undefined;
245
+ }>;
246
+ handler: ({ status }: {
247
+ status?: string;
248
+ }) => Promise<{
249
+ content: {
250
+ type: "text";
251
+ text: string;
252
+ }[];
253
+ }>;
254
+ };
255
+ get_results: {
256
+ description: string;
257
+ schema: z.ZodObject<{
258
+ experimentId: z.ZodString;
259
+ }, "strip", z.ZodTypeAny, {
260
+ experimentId: string;
261
+ }, {
262
+ experimentId: string;
263
+ }>;
264
+ handler: ({ experimentId }: {
265
+ experimentId: string;
266
+ }) => Promise<{
267
+ content: {
268
+ type: "text";
269
+ text: string;
270
+ }[];
271
+ }>;
272
+ };
273
+ suggest_experiment: {
274
+ description: string;
275
+ schema: z.ZodObject<{
276
+ context: z.ZodOptional<z.ZodString>;
277
+ }, "strip", z.ZodTypeAny, {
278
+ context?: string | undefined;
279
+ }, {
280
+ context?: string | undefined;
281
+ }>;
282
+ handler: ({ context }: {
283
+ context?: string;
284
+ }) => Promise<{
285
+ content: {
286
+ type: "text";
287
+ text: string;
288
+ }[];
289
+ }>;
290
+ };
291
+ promote_winner: {
292
+ description: string;
293
+ schema: z.ZodObject<{
294
+ experimentId: z.ZodString;
295
+ winner: z.ZodEnum<["control", "variant_b"]>;
296
+ }, "strip", z.ZodTypeAny, {
297
+ experimentId: string;
298
+ winner: "control" | "variant_b";
299
+ }, {
300
+ experimentId: string;
301
+ winner: "control" | "variant_b";
302
+ }>;
303
+ handler: ({ experimentId, winner }: {
304
+ experimentId: string;
305
+ winner: string;
306
+ }) => Promise<{
307
+ content: {
308
+ type: "text";
309
+ text: string;
310
+ }[];
311
+ }>;
312
+ };
313
+ record_outcome: {
314
+ description: string;
315
+ schema: z.ZodObject<{
316
+ experimentId: z.ZodString;
317
+ beliefId: z.ZodString;
318
+ outcome: z.ZodEnum<["confirmed", "contradicted", "inconclusive"]>;
319
+ metricDelta: z.ZodNumber;
320
+ notes: z.ZodOptional<z.ZodString>;
321
+ }, "strip", z.ZodTypeAny, {
322
+ beliefId: string;
323
+ experimentId: string;
324
+ outcome: "confirmed" | "contradicted" | "inconclusive";
325
+ metricDelta: number;
326
+ notes?: string | undefined;
327
+ }, {
328
+ beliefId: string;
329
+ experimentId: string;
330
+ outcome: "confirmed" | "contradicted" | "inconclusive";
331
+ metricDelta: number;
332
+ notes?: string | undefined;
333
+ }>;
334
+ handler: (args: {
335
+ experimentId: string;
336
+ beliefId: string;
337
+ outcome: string;
338
+ metricDelta: number;
339
+ notes?: string;
340
+ }) => Promise<{
341
+ content: {
342
+ type: "text";
343
+ text: string;
344
+ }[];
345
+ }>;
346
+ };
347
+ predict_impact: {
348
+ description: string;
349
+ schema: z.ZodObject<{
350
+ description: z.ZodString;
351
+ }, "strip", z.ZodTypeAny, {
352
+ description: string;
353
+ }, {
354
+ description: string;
355
+ }>;
356
+ handler: ({ description }: {
357
+ description: string;
358
+ }) => Promise<{
359
+ content: {
360
+ type: "text";
361
+ text: string;
362
+ }[];
363
+ }>;
364
+ };
365
+ evaluate_feature: {
366
+ description: string;
367
+ schema: z.ZodObject<{
368
+ feature: z.ZodString;
369
+ targetMetric: z.ZodOptional<z.ZodString>;
370
+ }, "strip", z.ZodTypeAny, {
371
+ feature: string;
372
+ targetMetric?: string | undefined;
373
+ }, {
374
+ feature: string;
375
+ targetMetric?: string | undefined;
376
+ }>;
377
+ handler: ({ feature, targetMetric }: {
378
+ feature: string;
379
+ targetMetric?: string;
380
+ }) => Promise<{
381
+ content: {
382
+ type: "text";
383
+ text: string;
384
+ }[];
385
+ }>;
386
+ };
387
+ track_event: {
388
+ description: string;
389
+ schema: z.ZodObject<{
390
+ event: z.ZodString;
391
+ properties: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
392
+ }, "strip", z.ZodTypeAny, {
393
+ event: string;
394
+ properties?: Record<string, unknown> | undefined;
395
+ }, {
396
+ event: string;
397
+ properties?: Record<string, unknown> | undefined;
398
+ }>;
399
+ handler: ({ event, properties }: {
400
+ event: string;
401
+ properties?: Record<string, unknown>;
402
+ }) => Promise<{
403
+ content: {
404
+ type: "text";
405
+ text: string;
406
+ }[];
407
+ }>;
408
+ };
409
+ identify_user: {
410
+ description: string;
411
+ schema: z.ZodObject<{
412
+ email: z.ZodString;
413
+ name: z.ZodOptional<z.ZodString>;
414
+ company: z.ZodOptional<z.ZodString>;
415
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
416
+ }, "strip", z.ZodTypeAny, {
417
+ email: string;
418
+ name?: string | undefined;
419
+ company?: string | undefined;
420
+ metadata?: Record<string, unknown> | undefined;
421
+ }, {
422
+ email: string;
423
+ name?: string | undefined;
424
+ company?: string | undefined;
425
+ metadata?: Record<string, unknown> | undefined;
426
+ }>;
427
+ handler: ({ email, name, company, metadata }: {
428
+ email: string;
429
+ name?: string;
430
+ company?: string;
431
+ metadata?: Record<string, unknown>;
432
+ }) => Promise<{
433
+ content: {
434
+ type: "text";
435
+ text: string;
436
+ }[];
437
+ }>;
438
+ };
439
+ log_prediction: {
440
+ description: string;
441
+ schema: z.ZodObject<{
442
+ metric: z.ZodString;
443
+ expectedChange: z.ZodNumber;
444
+ confidence: z.ZodNumber;
445
+ timeHorizon: z.ZodOptional<z.ZodNumber>;
446
+ hypothesisId: z.ZodOptional<z.ZodString>;
447
+ beliefId: z.ZodOptional<z.ZodString>;
448
+ }, "strip", z.ZodTypeAny, {
449
+ confidence: number;
450
+ metric: string;
451
+ expectedChange: number;
452
+ beliefId?: string | undefined;
453
+ hypothesisId?: string | undefined;
454
+ timeHorizon?: number | undefined;
455
+ }, {
456
+ confidence: number;
457
+ metric: string;
458
+ expectedChange: number;
459
+ beliefId?: string | undefined;
460
+ hypothesisId?: string | undefined;
461
+ timeHorizon?: number | undefined;
462
+ }>;
463
+ handler: (args: {
464
+ metric: string;
465
+ expectedChange: number;
466
+ confidence: number;
467
+ timeHorizon?: number;
468
+ hypothesisId?: string;
469
+ beliefId?: string;
470
+ }) => Promise<{
471
+ content: {
472
+ type: "text";
473
+ text: string;
474
+ }[];
475
+ }>;
476
+ };
477
+ };
478
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}