@langwatch/mcp-server 0.9.0 → 0.10.1
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/CHANGELOG.md +27 -0
- package/dist/{archive-project-HZBRPR2S.js → archive-project-KAZFHR4A.js} +3 -3
- package/dist/{archive-scenario-P5RRITRM.js → archive-scenario-6M2IB7Y2.js} +3 -3
- package/dist/{archive-suite-NUUFD2EM.js → archive-suite-NXZ3YDS3.js} +3 -3
- package/dist/{assign-prompt-tag-FKCCZPML.js → assign-prompt-tag-WPUJO55U.js} +2 -2
- package/dist/{chunk-X2SEURT2.js → chunk-AGGE6NPR.js} +2 -2
- package/dist/{chunk-ADSJ2FDA.js → chunk-B6UV3JVI.js} +2 -2
- package/dist/{chunk-42ZHHHIJ.js → chunk-CAY57CKF.js} +3 -1
- package/dist/{chunk-BBJ5WAJB.js → chunk-COCNCXVJ.js} +2 -2
- package/dist/{chunk-BYWYM2RP.js → chunk-ESGZVPPC.js} +2 -2
- package/dist/{chunk-R7C7OUVG.js → chunk-GWEW5XON.js} +2 -2
- package/dist/{chunk-JVLJKQJG.js → chunk-HRFQAFPR.js} +204 -105
- package/dist/{chunk-TROIWSEQ.js → chunk-ITN2QGHF.js} +2 -2
- package/dist/{chunk-XC62KJIT.js → chunk-IUP5IHBD.js} +3 -3
- package/dist/{chunk-CCM4ZFGF.js → chunk-LTEJDL4V.js} +2 -2
- package/dist/{chunk-BB7EOKHR.js → chunk-RDUXCCFR.js} +2 -2
- package/dist/{chunk-JHOSVOHT.js → chunk-U2QIW2SW.js} +2 -2
- package/dist/{chunk-CHKCEZBP.js → chunk-UKRCZJJC.js} +2 -2
- package/dist/{chunk-HKY3GW45.js → chunk-XRQNXN2Z.js} +2 -2
- package/dist/{create-agent-K5Q7BFGZ.js → create-agent-BI7UTJ6A.js} +3 -3
- package/dist/{create-annotation-KN3GE3DK.js → create-annotation-SNM2J6S4.js} +3 -3
- package/dist/{create-api-key-OQI5PUNQ.js → create-api-key-23MXYC2L.js} +3 -3
- package/dist/{create-dashboard-G4QA5AXP.js → create-dashboard-CPOOOIKK.js} +3 -3
- package/dist/{create-dataset-WQSC37N7.js → create-dataset-BVXPVVY2.js} +3 -3
- package/dist/{create-dataset-records-B4RL3FLC.js → create-dataset-records-S7VFIIMR.js} +3 -3
- package/dist/{create-evaluator-YFFQIR7E.js → create-evaluator-WJAAQOUE.js} +3 -3
- package/dist/create-mcp-server.d.ts +3 -1
- package/dist/create-mcp-server.js +2 -2
- package/dist/{create-project-CUVQ67VN.js → create-project-BF7LMZH5.js} +3 -3
- package/dist/{create-prompt-NGXKSP4X.js → create-prompt-LZ3QHSU4.js} +2 -2
- package/dist/{create-prompt-tag-IUKYPVHH.js → create-prompt-tag-IF4J24QM.js} +2 -2
- package/dist/{create-scenario-FNBXALH3.js → create-scenario-BK4E5DEU.js} +3 -3
- package/dist/{create-suite-DJEPD4ZB.js → create-suite-HEQPNLND.js} +3 -3
- package/dist/{delete-agent-TJI5XBBM.js → delete-agent-Y4T2G5PT.js} +3 -3
- package/dist/{delete-annotation-KRP53TUU.js → delete-annotation-KYDMQTZG.js} +3 -3
- package/dist/{delete-dashboard-N5SZJIR3.js → delete-dashboard-3RW647WJ.js} +3 -3
- package/dist/{delete-dataset-KDUOHL2P.js → delete-dataset-SZAHFHHS.js} +3 -3
- package/dist/{delete-dataset-records-DM4W3PAW.js → delete-dataset-records-ISHKGEBH.js} +3 -3
- package/dist/{delete-evaluator-7ZATLJOA.js → delete-evaluator-VKIG5I3S.js} +3 -3
- package/dist/{delete-prompt-tag-I6HNMSVJ.js → delete-prompt-tag-VYYL4GTF.js} +2 -2
- package/dist/{delete-workflow-QEO74JQR.js → delete-workflow-SHNPYSWQ.js} +3 -3
- package/dist/{get-agent-3KDWCP5N.js → get-agent-IZSP7AR5.js} +3 -3
- package/dist/{get-analytics-GPVJX7SF.js → get-analytics-EDFAYYIQ.js} +2 -2
- package/dist/{get-dashboard-YPTIE5YY.js → get-dashboard-WSAO6IQ4.js} +3 -3
- package/dist/{get-dataset-6DQFYITM.js → get-dataset-BEVNXQNF.js} +3 -3
- package/dist/{get-evaluator-PCM6XQAU.js → get-evaluator-HCVXNPZR.js} +3 -3
- package/dist/{get-project-JCMWXVLU.js → get-project-H4V3GYRQ.js} +3 -3
- package/dist/{get-prompt-5XAGWWBG.js → get-prompt-EWRJVVGB.js} +2 -2
- package/dist/{get-scenario-7XBCDZWX.js → get-scenario-24YUJS5W.js} +3 -3
- package/dist/{get-simulation-run-AV24FJWI.js → get-simulation-run-UX2W6F6I.js} +3 -3
- package/dist/{get-suite-4DBVHFEM.js → get-suite-B65ZKZJA.js} +3 -3
- package/dist/{get-trace-MRBDS3HJ.js → get-trace-ZR7MIITH.js} +2 -2
- package/dist/{get-workflow-UR4Y6UFX.js → get-workflow-YROHUQJW.js} +3 -3
- package/dist/{http-server-DEGNV5EP.js → http-server-GXVEDA7G.js} +5 -4
- package/dist/index.js +2660 -1497
- package/dist/{langwatch-api-annotations-ZJDRB4JH.js → langwatch-api-annotations-OPEXNTPF.js} +3 -3
- package/dist/{langwatch-api-dashboards-WARLI6NF.js → langwatch-api-dashboards-NPQM6QJI.js} +3 -3
- package/dist/{langwatch-api-monitors-4XKXHYCG.js → langwatch-api-monitors-3L25OOOS.js} +2 -2
- package/dist/{langwatch-api-secrets-6SHK5G7Q.js → langwatch-api-secrets-ZFURUA62.js} +2 -2
- package/dist/{langwatch-api-triggers-5SX6R2WU.js → langwatch-api-triggers-XGXXT7DD.js} +2 -2
- package/dist/{langwatch-api-workflows-NLJENNXE.js → langwatch-api-workflows-CXCTTCXT.js} +3 -3
- package/dist/{list-agents-NECO7MPI.js → list-agents-6ZNOV7FK.js} +3 -3
- package/dist/{list-annotations-3OJEO774.js → list-annotations-6P3IWILH.js} +3 -3
- package/dist/{list-api-keys-AWW7ROLB.js → list-api-keys-JJI62KD2.js} +3 -3
- package/dist/{list-dashboards-DVPVVVKW.js → list-dashboards-G2WJOXWB.js} +3 -3
- package/dist/{list-dataset-records-I4BYORF5.js → list-dataset-records-GWWVOCII.js} +3 -3
- package/dist/{list-datasets-WUAE5HGX.js → list-datasets-HBTH33X4.js} +3 -3
- package/dist/{list-evaluators-B6OSVAM2.js → list-evaluators-K5OGB6TX.js} +3 -3
- package/dist/{list-model-providers-NL6IP4UZ.js → list-model-providers-JMOGZLSO.js} +3 -3
- package/dist/{list-projects-5FHMJ4PQ.js → list-projects-OXJC2NW5.js} +3 -3
- package/dist/{list-prompt-tags-Z2DD6FLQ.js → list-prompt-tags-J2HPHVAZ.js} +2 -2
- package/dist/{list-prompts-VNXKHK7T.js → list-prompts-C7GR72XL.js} +2 -2
- package/dist/{list-scenarios-CFZHXL76.js → list-scenarios-JEPGIIDO.js} +3 -3
- package/dist/{list-simulation-runs-AM2BXLBW.js → list-simulation-runs-DRSAGPEC.js} +3 -3
- package/dist/{list-suites-ZDOHAAXF.js → list-suites-POTZ3ZT6.js} +3 -3
- package/dist/{list-workflows-WBRBKLIT.js → list-workflows-QQZQIOHB.js} +3 -3
- package/dist/{rename-prompt-tag-A4RJUK7Z.js → rename-prompt-tag-4AAV2BS4.js} +2 -2
- package/dist/{revoke-api-key-ZSPSPF5G.js → revoke-api-key-TONB4ADQ.js} +3 -3
- package/dist/{run-agent-JFNDY7MR.js → run-agent-7QE3YEH7.js} +3 -3
- package/dist/{run-suite-TH7LO5TJ.js → run-suite-Q66OSPO4.js} +3 -3
- package/dist/{run-workflow-CK3JP5U2.js → run-workflow-RWX2D752.js} +3 -3
- package/dist/{search-traces-3BBVYPC3.js → search-traces-M5E5VB4X.js} +2 -2
- package/dist/{set-model-provider-WOC5FNMV.js → set-model-provider-XENT5D2P.js} +3 -3
- package/dist/{update-agent-YMEV5MTL.js → update-agent-GML25EE3.js} +3 -3
- package/dist/{update-dataset-EYT5POFM.js → update-dataset-R4MM6NNY.js} +3 -3
- package/dist/{update-dataset-record-VFF5JTX4.js → update-dataset-record-FN4BL5P4.js} +3 -3
- package/dist/{update-evaluator-6IJHFG2E.js → update-evaluator-LH2RDDB5.js} +3 -3
- package/dist/{update-project-OIT4WPFI.js → update-project-H53IHRBB.js} +3 -3
- package/dist/{update-prompt-ZU2DD6KM.js → update-prompt-M33OTTAJ.js} +2 -2
- package/dist/{update-scenario-3VUTPDRU.js → update-scenario-FKTQRAFQ.js} +3 -3
- package/dist/{update-suite-C6JFDQHL.js → update-suite-JJTNOTXN.js} +3 -3
- package/package.json +1 -1
- package/pnpm-workspace.yaml +13 -0
- package/src/__tests__/experiment-status.unit.test.ts +194 -0
- package/src/__tests__/get-experiment-results.unit.test.ts +96 -5
- package/src/create-mcp-server.d.ts +3 -1
- package/src/create-mcp-server.ts +8 -2
- package/src/http-server.ts +5 -0
- package/src/tools/experiment-run-status.ts +36 -0
- package/src/tools/get-experiment-results.ts +40 -7
- package/src/tools/run-experiment.ts +100 -5
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
LangWatchApiError,
|
|
3
3
|
makeRequest
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-CAY57CKF.js";
|
|
5
5
|
import {
|
|
6
6
|
requireApiKey
|
|
7
7
|
} from "./chunk-KOO5733S.js";
|
|
@@ -13,7 +13,7 @@ import { z as z2 } from "zod";
|
|
|
13
13
|
// package.json
|
|
14
14
|
var package_default = {
|
|
15
15
|
name: "@langwatch/mcp-server",
|
|
16
|
-
version: "0.
|
|
16
|
+
version: "0.10.1",
|
|
17
17
|
description: "An MCP server for Langwatch.",
|
|
18
18
|
type: "module",
|
|
19
19
|
main: "./dist/index.js",
|
|
@@ -88,13 +88,6 @@ var package_default = {
|
|
|
88
88
|
},
|
|
89
89
|
bin: {
|
|
90
90
|
"langwatch-mcp-server": "./dist/index.js"
|
|
91
|
-
},
|
|
92
|
-
pnpm: {
|
|
93
|
-
overrides: {
|
|
94
|
-
protobufjs: ">=7.5.6 <8.0.0 || >=8.0.2",
|
|
95
|
-
"langsmith@<0.6.0": "0.6.0",
|
|
96
|
-
"fast-uri@<3.1.2": "3.1.2"
|
|
97
|
-
}
|
|
98
91
|
}
|
|
99
92
|
};
|
|
100
93
|
|
|
@@ -124,6 +117,18 @@ var createDatasetSchema = z.object({
|
|
|
124
117
|
columnTypes: z.array(datasetColumnDefinitionSchema).optional().describe("Column definitions for the dataset")
|
|
125
118
|
});
|
|
126
119
|
|
|
120
|
+
// src/tools/experiment-run-status.ts
|
|
121
|
+
var INTERRUPTED_THRESHOLD_MS = 5 * 60 * 1e3;
|
|
122
|
+
var deriveRunStatus = (timestamps, now = Date.now()) => {
|
|
123
|
+
if (timestamps.stoppedAt != null) return "stopped";
|
|
124
|
+
if (timestamps.finishedAt != null) return "completed";
|
|
125
|
+
if (timestamps.updatedAt != null && now - timestamps.updatedAt > INTERRUPTED_THRESHOLD_MS) {
|
|
126
|
+
return "interrupted";
|
|
127
|
+
}
|
|
128
|
+
return "running";
|
|
129
|
+
};
|
|
130
|
+
var isTerminalStatus = (status) => status === "completed" || status === "stopped";
|
|
131
|
+
|
|
127
132
|
// src/tools/get-experiment-results.ts
|
|
128
133
|
var DEFAULT_ROW_CAP = 50;
|
|
129
134
|
var rowKey = (index, targetId) => `${index}:${targetId ?? ""}`;
|
|
@@ -164,24 +169,26 @@ async function handleExperimentResults(params) {
|
|
|
164
169
|
"",
|
|
165
170
|
"**Status**: not found",
|
|
166
171
|
"",
|
|
167
|
-
`Could not load results for run \`${params.runId}\`. The run may
|
|
172
|
+
`Could not load results for run \`${params.runId}\`. The run id may be incorrect, or its run state may have expired (Redis keeps it for 24h).`,
|
|
168
173
|
"",
|
|
169
|
-
">
|
|
174
|
+
"> Pass `experimentSlug` to load results for runs older than 24h. Discover the slug with `platform_experiment_list`, then `platform_experiment_list_runs` for the run ids."
|
|
170
175
|
].join("\n");
|
|
171
176
|
}
|
|
172
177
|
throw error;
|
|
173
178
|
}
|
|
174
|
-
if (!results
|
|
179
|
+
if (!results) {
|
|
175
180
|
return [
|
|
176
181
|
`# Evaluation Results: ${params.runId}`,
|
|
177
182
|
"",
|
|
178
|
-
"**Status**:
|
|
183
|
+
"**Status**: not found",
|
|
179
184
|
"",
|
|
180
|
-
`
|
|
185
|
+
`Could not load results for run \`${params.runId}\`.`,
|
|
181
186
|
"",
|
|
182
|
-
">
|
|
187
|
+
"> Pass `experimentSlug` if the run is older than 24h. Discover the slug with `platform_experiment_list`, then `platform_experiment_list_runs` to confirm the run id."
|
|
183
188
|
].join("\n");
|
|
184
189
|
}
|
|
190
|
+
const runStatus2 = deriveRunStatus(results.timestamps);
|
|
191
|
+
const partial = !isTerminalStatus(runStatus2);
|
|
185
192
|
const evaluationsByRow = /* @__PURE__ */ new Map();
|
|
186
193
|
for (const evaluation of results.evaluations) {
|
|
187
194
|
if (evaluatorFilter && evaluation.evaluator !== evaluatorFilter) continue;
|
|
@@ -232,6 +239,12 @@ async function handleExperimentResults(params) {
|
|
|
232
239
|
lines.push(`# Evaluation Results: ${results.runId}`);
|
|
233
240
|
lines.push("");
|
|
234
241
|
lines.push(`**Experiment**: ${results.experimentId}`);
|
|
242
|
+
lines.push(`**Status**: ${runStatus2}`);
|
|
243
|
+
if (typeof results.total === "number" && results.total > 0) {
|
|
244
|
+
lines.push(
|
|
245
|
+
`**Progress**: ${results.progress ?? results.dataset.length}/${results.total} rows`
|
|
246
|
+
);
|
|
247
|
+
}
|
|
235
248
|
lines.push(`**Total rows**: ${results.dataset.length}`);
|
|
236
249
|
lines.push(`**Total evaluations**: ${results.evaluations.length}`);
|
|
237
250
|
if (filter === "failed") {
|
|
@@ -240,6 +253,12 @@ async function handleExperimentResults(params) {
|
|
|
240
253
|
if (evaluatorFilter) {
|
|
241
254
|
lines.push(`**Evaluator filter**: ${evaluatorFilter}`);
|
|
242
255
|
}
|
|
256
|
+
if (partial) {
|
|
257
|
+
lines.push("");
|
|
258
|
+
lines.push(
|
|
259
|
+
runStatus2 === "interrupted" ? "> These are partial results. The run never sent a finished/stopped marker and has had no updates recently, so it likely was interrupted before completing. The rows below are everything recorded so far." : "> These are partial results. The run is still in progress, so more rows may appear on a later call."
|
|
260
|
+
);
|
|
261
|
+
}
|
|
243
262
|
lines.push("");
|
|
244
263
|
if (evaluatorAverages.size > 0) {
|
|
245
264
|
lines.push("## Evaluator Summary");
|
|
@@ -255,7 +274,17 @@ async function handleExperimentResults(params) {
|
|
|
255
274
|
lines.push("");
|
|
256
275
|
}
|
|
257
276
|
if (rows.length === 0) {
|
|
258
|
-
|
|
277
|
+
if (filter === "failed") {
|
|
278
|
+
lines.push("_No rows matched the filter._");
|
|
279
|
+
} else if (runStatus2 === "running") {
|
|
280
|
+
lines.push(
|
|
281
|
+
"_No rows recorded yet. The run is still in progress; call again shortly._"
|
|
282
|
+
);
|
|
283
|
+
} else if (runStatus2 === "interrupted") {
|
|
284
|
+
lines.push("_No rows were recorded before the run was interrupted._");
|
|
285
|
+
} else {
|
|
286
|
+
lines.push("_No rows recorded for this run._");
|
|
287
|
+
}
|
|
259
288
|
return lines.join("\n");
|
|
260
289
|
}
|
|
261
290
|
lines.push(
|
|
@@ -461,11 +490,78 @@ async function handleRunExperiment(params) {
|
|
|
461
490
|
);
|
|
462
491
|
return lines.join("\n");
|
|
463
492
|
}
|
|
464
|
-
async function
|
|
465
|
-
const
|
|
466
|
-
|
|
467
|
-
|
|
493
|
+
async function statusFromResults(params) {
|
|
494
|
+
const search = new URLSearchParams();
|
|
495
|
+
if (params.experimentSlug) search.set("experimentSlug", params.experimentSlug);
|
|
496
|
+
const qs = search.toString() ? `?${search.toString()}` : "";
|
|
497
|
+
let results;
|
|
498
|
+
try {
|
|
499
|
+
results = await makeRequest(
|
|
500
|
+
"GET",
|
|
501
|
+
`/api/experiments/runs/${encodeURIComponent(params.runId)}/results${qs}`
|
|
502
|
+
);
|
|
503
|
+
} catch (error) {
|
|
504
|
+
const code = error instanceof LangWatchApiError ? error.status : void 0;
|
|
505
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
506
|
+
if (code === 404 || code === void 0 && /404|not found/i.test(message)) {
|
|
507
|
+
return null;
|
|
508
|
+
}
|
|
509
|
+
throw error;
|
|
510
|
+
}
|
|
511
|
+
const status = deriveRunStatus(results.timestamps);
|
|
512
|
+
const total = results.total ?? results.dataset?.length ?? 0;
|
|
513
|
+
const progress = results.progress ?? results.dataset?.length ?? 0;
|
|
514
|
+
const lines = [];
|
|
515
|
+
lines.push(`# Evaluation Run ${params.runId}
|
|
516
|
+
`);
|
|
517
|
+
lines.push(`**Status**: ${status}`);
|
|
518
|
+
lines.push(`**Progress**: ${progress}/${total} cells`);
|
|
519
|
+
if (results.timestamps.createdAt) {
|
|
520
|
+
lines.push(
|
|
521
|
+
`**Started**: ${new Date(results.timestamps.createdAt).toISOString()}`
|
|
522
|
+
);
|
|
523
|
+
}
|
|
524
|
+
if (results.timestamps.finishedAt) {
|
|
525
|
+
lines.push(
|
|
526
|
+
`**Finished**: ${new Date(results.timestamps.finishedAt).toISOString()}`
|
|
527
|
+
);
|
|
528
|
+
}
|
|
529
|
+
if (results.timestamps.stoppedAt) {
|
|
530
|
+
lines.push(
|
|
531
|
+
`**Stopped**: ${new Date(results.timestamps.stoppedAt).toISOString()}`
|
|
532
|
+
);
|
|
533
|
+
}
|
|
534
|
+
lines.push("");
|
|
535
|
+
lines.push(
|
|
536
|
+
"> Use `platform_experiment_results` to fetch the per-row scores (partial results are available even while running)."
|
|
468
537
|
);
|
|
538
|
+
return lines.join("\n");
|
|
539
|
+
}
|
|
540
|
+
async function handleExperimentStatus(params) {
|
|
541
|
+
let status;
|
|
542
|
+
try {
|
|
543
|
+
status = await makeRequest(
|
|
544
|
+
"GET",
|
|
545
|
+
`/api/experiments/runs/${encodeURIComponent(params.runId)}`
|
|
546
|
+
);
|
|
547
|
+
} catch (error) {
|
|
548
|
+
const code = error instanceof LangWatchApiError ? error.status : void 0;
|
|
549
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
550
|
+
if (code === 404 || /404|not found/i.test(message)) {
|
|
551
|
+
const fallback = await statusFromResults(params);
|
|
552
|
+
if (fallback) return fallback;
|
|
553
|
+
return [
|
|
554
|
+
`# Evaluation Run ${params.runId}`,
|
|
555
|
+
"",
|
|
556
|
+
"**Status**: not found",
|
|
557
|
+
"",
|
|
558
|
+
`Could not find run \`${params.runId}\`. SDK-logged runs and runs older than 24h are not in the live run-state and must be resolved by experiment slug.`,
|
|
559
|
+
"",
|
|
560
|
+
"> Pass `experimentSlug`: discover it with `platform_experiment_list`, then use `platform_experiment_list_runs` for the run ids. Or fetch the rows directly with `platform_experiment_results`."
|
|
561
|
+
].join("\n");
|
|
562
|
+
}
|
|
563
|
+
throw error;
|
|
564
|
+
}
|
|
469
565
|
const lines = [];
|
|
470
566
|
lines.push(`# Evaluation Run ${status.runId}
|
|
471
567
|
`);
|
|
@@ -637,7 +733,7 @@ function registerTools(server) {
|
|
|
637
733
|
},
|
|
638
734
|
withToolLogging("search_traces", async (params) => {
|
|
639
735
|
requireApiKey();
|
|
640
|
-
const { handleSearchTraces } = await import("./search-traces-
|
|
736
|
+
const { handleSearchTraces } = await import("./search-traces-M5E5VB4X.js");
|
|
641
737
|
return {
|
|
642
738
|
content: [{ type: "text", text: await handleSearchTraces(params) }]
|
|
643
739
|
};
|
|
@@ -654,7 +750,7 @@ function registerTools(server) {
|
|
|
654
750
|
},
|
|
655
751
|
withToolLogging("get_trace", async (params) => {
|
|
656
752
|
requireApiKey();
|
|
657
|
-
const { handleGetTrace } = await import("./get-trace-
|
|
753
|
+
const { handleGetTrace } = await import("./get-trace-ZR7MIITH.js");
|
|
658
754
|
return {
|
|
659
755
|
content: [{ type: "text", text: await handleGetTrace(params) }]
|
|
660
756
|
};
|
|
@@ -680,7 +776,7 @@ function registerTools(server) {
|
|
|
680
776
|
},
|
|
681
777
|
withToolLogging("get_analytics", async (params) => {
|
|
682
778
|
requireApiKey();
|
|
683
|
-
const { handleGetAnalytics } = await import("./get-analytics-
|
|
779
|
+
const { handleGetAnalytics } = await import("./get-analytics-EDFAYYIQ.js");
|
|
684
780
|
return {
|
|
685
781
|
content: [{ type: "text", text: await handleGetAnalytics(params) }]
|
|
686
782
|
};
|
|
@@ -714,7 +810,7 @@ NOTE: Prompts can be managed two ways. Determine which approach the user needs:
|
|
|
714
810
|
},
|
|
715
811
|
withToolLogging("platform_create_prompt", async (params) => {
|
|
716
812
|
requireApiKey();
|
|
717
|
-
const { handleCreatePrompt } = await import("./create-prompt-
|
|
813
|
+
const { handleCreatePrompt } = await import("./create-prompt-LZ3QHSU4.js");
|
|
718
814
|
return {
|
|
719
815
|
content: [{ type: "text", text: await handleCreatePrompt(params) }]
|
|
720
816
|
};
|
|
@@ -726,7 +822,7 @@ NOTE: Prompts can be managed two ways. Determine which approach the user needs:
|
|
|
726
822
|
{},
|
|
727
823
|
withToolLogging("platform_list_prompts", async () => {
|
|
728
824
|
requireApiKey();
|
|
729
|
-
const { handleListPrompts } = await import("./list-prompts-
|
|
825
|
+
const { handleListPrompts } = await import("./list-prompts-C7GR72XL.js");
|
|
730
826
|
return {
|
|
731
827
|
content: [{ type: "text", text: await handleListPrompts() }]
|
|
732
828
|
};
|
|
@@ -750,7 +846,7 @@ NOTE: Prompts can be managed two ways. Determine which approach the user needs:
|
|
|
750
846
|
};
|
|
751
847
|
}
|
|
752
848
|
requireApiKey();
|
|
753
|
-
const { handleGetPrompt } = await import("./get-prompt-
|
|
849
|
+
const { handleGetPrompt } = await import("./get-prompt-EWRJVVGB.js");
|
|
754
850
|
return {
|
|
755
851
|
content: [{ type: "text", text: await handleGetPrompt(params) }]
|
|
756
852
|
};
|
|
@@ -775,7 +871,7 @@ NOTE: Prompts can be managed two ways. Determine which approach the user needs:
|
|
|
775
871
|
},
|
|
776
872
|
withToolLogging("platform_update_prompt", async (params) => {
|
|
777
873
|
requireApiKey();
|
|
778
|
-
const { handleUpdatePrompt } = await import("./update-prompt-
|
|
874
|
+
const { handleUpdatePrompt } = await import("./update-prompt-M33OTTAJ.js");
|
|
779
875
|
return {
|
|
780
876
|
content: [{ type: "text", text: await handleUpdatePrompt(params) }]
|
|
781
877
|
};
|
|
@@ -791,7 +887,7 @@ NOTE: Prompts can be managed two ways. Determine which approach the user needs:
|
|
|
791
887
|
},
|
|
792
888
|
withToolLogging("platform_assign_prompt_tag", async (params) => {
|
|
793
889
|
requireApiKey();
|
|
794
|
-
const { handleAssignPromptTag } = await import("./assign-prompt-tag-
|
|
890
|
+
const { handleAssignPromptTag } = await import("./assign-prompt-tag-WPUJO55U.js");
|
|
795
891
|
return {
|
|
796
892
|
content: [{ type: "text", text: await handleAssignPromptTag(params) }]
|
|
797
893
|
};
|
|
@@ -803,7 +899,7 @@ NOTE: Prompts can be managed two ways. Determine which approach the user needs:
|
|
|
803
899
|
{},
|
|
804
900
|
withToolLogging("platform_list_prompt_tags", async () => {
|
|
805
901
|
requireApiKey();
|
|
806
|
-
const { handleListPromptTags } = await import("./list-prompt-tags-
|
|
902
|
+
const { handleListPromptTags } = await import("./list-prompt-tags-J2HPHVAZ.js");
|
|
807
903
|
return {
|
|
808
904
|
content: [{ type: "text", text: await handleListPromptTags() }]
|
|
809
905
|
};
|
|
@@ -817,7 +913,7 @@ NOTE: Prompts can be managed two ways. Determine which approach the user needs:
|
|
|
817
913
|
},
|
|
818
914
|
withToolLogging("platform_create_prompt_tag", async (params) => {
|
|
819
915
|
requireApiKey();
|
|
820
|
-
const { handleCreatePromptTag } = await import("./create-prompt-tag-
|
|
916
|
+
const { handleCreatePromptTag } = await import("./create-prompt-tag-IF4J24QM.js");
|
|
821
917
|
return {
|
|
822
918
|
content: [{ type: "text", text: await handleCreatePromptTag(params) }]
|
|
823
919
|
};
|
|
@@ -832,7 +928,7 @@ NOTE: Prompts can be managed two ways. Determine which approach the user needs:
|
|
|
832
928
|
},
|
|
833
929
|
withToolLogging("platform_rename_prompt_tag", async (params) => {
|
|
834
930
|
requireApiKey();
|
|
835
|
-
const { handleRenamePromptTag } = await import("./rename-prompt-tag-
|
|
931
|
+
const { handleRenamePromptTag } = await import("./rename-prompt-tag-4AAV2BS4.js");
|
|
836
932
|
return {
|
|
837
933
|
content: [{ type: "text", text: await handleRenamePromptTag(params) }]
|
|
838
934
|
};
|
|
@@ -846,7 +942,7 @@ NOTE: Prompts can be managed two ways. Determine which approach the user needs:
|
|
|
846
942
|
},
|
|
847
943
|
withToolLogging("platform_delete_prompt_tag", async (params) => {
|
|
848
944
|
requireApiKey();
|
|
849
|
-
const { handleDeletePromptTag } = await import("./delete-prompt-tag-
|
|
945
|
+
const { handleDeletePromptTag } = await import("./delete-prompt-tag-VYYL4GTF.js");
|
|
850
946
|
return {
|
|
851
947
|
content: [{ type: "text", text: await handleDeletePromptTag(params) }]
|
|
852
948
|
};
|
|
@@ -874,7 +970,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
874
970
|
},
|
|
875
971
|
withToolLogging("platform_create_scenario", async (params) => {
|
|
876
972
|
requireApiKey();
|
|
877
|
-
const { handleCreateScenario } = await import("./create-scenario-
|
|
973
|
+
const { handleCreateScenario } = await import("./create-scenario-BK4E5DEU.js");
|
|
878
974
|
return {
|
|
879
975
|
content: [
|
|
880
976
|
{ type: "text", text: await handleCreateScenario(params) }
|
|
@@ -892,7 +988,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
892
988
|
},
|
|
893
989
|
withToolLogging("platform_list_scenarios", async (params) => {
|
|
894
990
|
requireApiKey();
|
|
895
|
-
const { handleListScenarios } = await import("./list-scenarios-
|
|
991
|
+
const { handleListScenarios } = await import("./list-scenarios-JEPGIIDO.js");
|
|
896
992
|
return {
|
|
897
993
|
content: [
|
|
898
994
|
{ type: "text", text: await handleListScenarios(params) }
|
|
@@ -911,7 +1007,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
911
1007
|
},
|
|
912
1008
|
withToolLogging("platform_get_scenario", async (params) => {
|
|
913
1009
|
requireApiKey();
|
|
914
|
-
const { handleGetScenario } = await import("./get-scenario-
|
|
1010
|
+
const { handleGetScenario } = await import("./get-scenario-24YUJS5W.js");
|
|
915
1011
|
return {
|
|
916
1012
|
content: [{ type: "text", text: await handleGetScenario(params) }]
|
|
917
1013
|
};
|
|
@@ -929,7 +1025,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
929
1025
|
},
|
|
930
1026
|
withToolLogging("platform_update_scenario", async (params) => {
|
|
931
1027
|
requireApiKey();
|
|
932
|
-
const { handleUpdateScenario } = await import("./update-scenario-
|
|
1028
|
+
const { handleUpdateScenario } = await import("./update-scenario-FKTQRAFQ.js");
|
|
933
1029
|
return {
|
|
934
1030
|
content: [
|
|
935
1031
|
{ type: "text", text: await handleUpdateScenario(params) }
|
|
@@ -945,7 +1041,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
945
1041
|
},
|
|
946
1042
|
withToolLogging("platform_archive_scenario", async (params) => {
|
|
947
1043
|
requireApiKey();
|
|
948
|
-
const { handleArchiveScenario } = await import("./archive-scenario-
|
|
1044
|
+
const { handleArchiveScenario } = await import("./archive-scenario-6M2IB7Y2.js");
|
|
949
1045
|
return {
|
|
950
1046
|
content: [
|
|
951
1047
|
{ type: "text", text: await handleArchiveScenario(params) }
|
|
@@ -961,7 +1057,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
961
1057
|
},
|
|
962
1058
|
withToolLogging("platform_list_suites", async (params) => {
|
|
963
1059
|
requireApiKey();
|
|
964
|
-
const { handleListSuites } = await import("./list-suites-
|
|
1060
|
+
const { handleListSuites } = await import("./list-suites-POTZ3ZT6.js");
|
|
965
1061
|
return {
|
|
966
1062
|
content: [{ type: "text", text: await handleListSuites(params) }]
|
|
967
1063
|
};
|
|
@@ -976,7 +1072,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
976
1072
|
},
|
|
977
1073
|
withToolLogging("platform_get_suite", async (params) => {
|
|
978
1074
|
requireApiKey();
|
|
979
|
-
const { handleGetSuite } = await import("./get-suite-
|
|
1075
|
+
const { handleGetSuite } = await import("./get-suite-B65ZKZJA.js");
|
|
980
1076
|
return {
|
|
981
1077
|
content: [{ type: "text", text: await handleGetSuite(params) }]
|
|
982
1078
|
};
|
|
@@ -995,7 +1091,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
995
1091
|
},
|
|
996
1092
|
withToolLogging("platform_create_suite", async (params) => {
|
|
997
1093
|
requireApiKey();
|
|
998
|
-
const { handleCreateSuite } = await import("./create-suite-
|
|
1094
|
+
const { handleCreateSuite } = await import("./create-suite-HEQPNLND.js");
|
|
999
1095
|
return {
|
|
1000
1096
|
content: [{ type: "text", text: await handleCreateSuite(params) }]
|
|
1001
1097
|
};
|
|
@@ -1015,7 +1111,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1015
1111
|
},
|
|
1016
1112
|
withToolLogging("platform_update_suite", async (params) => {
|
|
1017
1113
|
requireApiKey();
|
|
1018
|
-
const { handleUpdateSuite } = await import("./update-suite-
|
|
1114
|
+
const { handleUpdateSuite } = await import("./update-suite-JJTNOTXN.js");
|
|
1019
1115
|
return {
|
|
1020
1116
|
content: [{ type: "text", text: await handleUpdateSuite(params) }]
|
|
1021
1117
|
};
|
|
@@ -1029,7 +1125,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1029
1125
|
},
|
|
1030
1126
|
withToolLogging("platform_run_suite", async (params) => {
|
|
1031
1127
|
requireApiKey();
|
|
1032
|
-
const { handleRunSuite } = await import("./run-suite-
|
|
1128
|
+
const { handleRunSuite } = await import("./run-suite-Q66OSPO4.js");
|
|
1033
1129
|
return {
|
|
1034
1130
|
content: [{ type: "text", text: await handleRunSuite(params) }]
|
|
1035
1131
|
};
|
|
@@ -1043,7 +1139,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1043
1139
|
},
|
|
1044
1140
|
withToolLogging("platform_archive_suite", async (params) => {
|
|
1045
1141
|
requireApiKey();
|
|
1046
|
-
const { handleArchiveSuite } = await import("./archive-suite-
|
|
1142
|
+
const { handleArchiveSuite } = await import("./archive-suite-NXZ3YDS3.js");
|
|
1047
1143
|
return {
|
|
1048
1144
|
content: [{ type: "text", text: await handleArchiveSuite(params) }]
|
|
1049
1145
|
};
|
|
@@ -1060,7 +1156,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1060
1156
|
},
|
|
1061
1157
|
withToolLogging("platform_list_simulation_runs", async (params) => {
|
|
1062
1158
|
requireApiKey();
|
|
1063
|
-
const { handleListSimulationRuns } = await import("./list-simulation-runs-
|
|
1159
|
+
const { handleListSimulationRuns } = await import("./list-simulation-runs-DRSAGPEC.js");
|
|
1064
1160
|
return {
|
|
1065
1161
|
content: [{ type: "text", text: await handleListSimulationRuns(params) }]
|
|
1066
1162
|
};
|
|
@@ -1075,7 +1171,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1075
1171
|
},
|
|
1076
1172
|
withToolLogging("platform_get_simulation_run", async (params) => {
|
|
1077
1173
|
requireApiKey();
|
|
1078
|
-
const { handleGetSimulationRun } = await import("./get-simulation-run-
|
|
1174
|
+
const { handleGetSimulationRun } = await import("./get-simulation-run-UX2W6F6I.js");
|
|
1079
1175
|
return {
|
|
1080
1176
|
content: [{ type: "text", text: await handleGetSimulationRun(params) }]
|
|
1081
1177
|
};
|
|
@@ -1092,7 +1188,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1092
1188
|
},
|
|
1093
1189
|
withToolLogging("platform_create_evaluator", async (params) => {
|
|
1094
1190
|
requireApiKey();
|
|
1095
|
-
const { handleCreateEvaluator } = await import("./create-evaluator-
|
|
1191
|
+
const { handleCreateEvaluator } = await import("./create-evaluator-WJAAQOUE.js");
|
|
1096
1192
|
return {
|
|
1097
1193
|
content: [
|
|
1098
1194
|
{ type: "text", text: await handleCreateEvaluator(params) }
|
|
@@ -1106,7 +1202,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1106
1202
|
{},
|
|
1107
1203
|
withToolLogging("platform_list_evaluators", async () => {
|
|
1108
1204
|
requireApiKey();
|
|
1109
|
-
const { handleListEvaluators } = await import("./list-evaluators-
|
|
1205
|
+
const { handleListEvaluators } = await import("./list-evaluators-K5OGB6TX.js");
|
|
1110
1206
|
return {
|
|
1111
1207
|
content: [{ type: "text", text: await handleListEvaluators() }]
|
|
1112
1208
|
};
|
|
@@ -1120,7 +1216,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1120
1216
|
},
|
|
1121
1217
|
withToolLogging("platform_get_evaluator", async (params) => {
|
|
1122
1218
|
requireApiKey();
|
|
1123
|
-
const { handleGetEvaluator } = await import("./get-evaluator-
|
|
1219
|
+
const { handleGetEvaluator } = await import("./get-evaluator-HCVXNPZR.js");
|
|
1124
1220
|
return {
|
|
1125
1221
|
content: [{ type: "text", text: await handleGetEvaluator(params) }]
|
|
1126
1222
|
};
|
|
@@ -1138,7 +1234,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1138
1234
|
},
|
|
1139
1235
|
withToolLogging("platform_update_evaluator", async (params) => {
|
|
1140
1236
|
requireApiKey();
|
|
1141
|
-
const { handleUpdateEvaluator } = await import("./update-evaluator-
|
|
1237
|
+
const { handleUpdateEvaluator } = await import("./update-evaluator-LH2RDDB5.js");
|
|
1142
1238
|
return {
|
|
1143
1239
|
content: [
|
|
1144
1240
|
{ type: "text", text: await handleUpdateEvaluator(params) }
|
|
@@ -1154,7 +1250,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1154
1250
|
},
|
|
1155
1251
|
withToolLogging("platform_delete_evaluator", async (params) => {
|
|
1156
1252
|
requireApiKey();
|
|
1157
|
-
const { handleDeleteEvaluator } = await import("./delete-evaluator-
|
|
1253
|
+
const { handleDeleteEvaluator } = await import("./delete-evaluator-VKIG5I3S.js");
|
|
1158
1254
|
return {
|
|
1159
1255
|
content: [{ type: "text", text: await handleDeleteEvaluator(params) }]
|
|
1160
1256
|
};
|
|
@@ -1175,7 +1271,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1175
1271
|
},
|
|
1176
1272
|
withToolLogging("platform_set_model_provider", async (params) => {
|
|
1177
1273
|
requireApiKey();
|
|
1178
|
-
const { handleSetModelProvider } = await import("./set-model-provider-
|
|
1274
|
+
const { handleSetModelProvider } = await import("./set-model-provider-XENT5D2P.js");
|
|
1179
1275
|
return {
|
|
1180
1276
|
content: [
|
|
1181
1277
|
{ type: "text", text: await handleSetModelProvider(params) }
|
|
@@ -1189,7 +1285,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1189
1285
|
{},
|
|
1190
1286
|
withToolLogging("platform_list_model_providers", async () => {
|
|
1191
1287
|
requireApiKey();
|
|
1192
|
-
const { handleListModelProviders } = await import("./list-model-providers-
|
|
1288
|
+
const { handleListModelProviders } = await import("./list-model-providers-JMOGZLSO.js");
|
|
1193
1289
|
return {
|
|
1194
1290
|
content: [{ type: "text", text: await handleListModelProviders() }]
|
|
1195
1291
|
};
|
|
@@ -1201,7 +1297,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1201
1297
|
{},
|
|
1202
1298
|
withToolLogging("platform_list_agents", async () => {
|
|
1203
1299
|
requireApiKey();
|
|
1204
|
-
const { handleListAgents } = await import("./list-agents-
|
|
1300
|
+
const { handleListAgents } = await import("./list-agents-6ZNOV7FK.js");
|
|
1205
1301
|
return {
|
|
1206
1302
|
content: [{ type: "text", text: await handleListAgents() }]
|
|
1207
1303
|
};
|
|
@@ -1215,7 +1311,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1215
1311
|
},
|
|
1216
1312
|
withToolLogging("platform_get_agent", async (params) => {
|
|
1217
1313
|
requireApiKey();
|
|
1218
|
-
const { handleGetAgent } = await import("./get-agent-
|
|
1314
|
+
const { handleGetAgent } = await import("./get-agent-IZSP7AR5.js");
|
|
1219
1315
|
return {
|
|
1220
1316
|
content: [{ type: "text", text: await handleGetAgent(params) }]
|
|
1221
1317
|
};
|
|
@@ -1231,7 +1327,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1231
1327
|
},
|
|
1232
1328
|
withToolLogging("platform_create_agent", async (params) => {
|
|
1233
1329
|
requireApiKey();
|
|
1234
|
-
const { handleCreateAgent } = await import("./create-agent-
|
|
1330
|
+
const { handleCreateAgent } = await import("./create-agent-BI7UTJ6A.js");
|
|
1235
1331
|
const parsedConfig = params.config ? JSON.parse(params.config) : void 0;
|
|
1236
1332
|
return {
|
|
1237
1333
|
content: [{ type: "text", text: await handleCreateAgent({ ...params, config: parsedConfig }) }]
|
|
@@ -1249,7 +1345,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1249
1345
|
},
|
|
1250
1346
|
withToolLogging("platform_update_agent", async (params) => {
|
|
1251
1347
|
requireApiKey();
|
|
1252
|
-
const { handleUpdateAgent } = await import("./update-agent-
|
|
1348
|
+
const { handleUpdateAgent } = await import("./update-agent-GML25EE3.js");
|
|
1253
1349
|
const parsedConfig = params.config ? JSON.parse(params.config) : void 0;
|
|
1254
1350
|
return {
|
|
1255
1351
|
content: [{ type: "text", text: await handleUpdateAgent({ ...params, config: parsedConfig }) }]
|
|
@@ -1264,7 +1360,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1264
1360
|
},
|
|
1265
1361
|
withToolLogging("platform_delete_agent", async (params) => {
|
|
1266
1362
|
requireApiKey();
|
|
1267
|
-
const { handleDeleteAgent } = await import("./delete-agent-
|
|
1363
|
+
const { handleDeleteAgent } = await import("./delete-agent-Y4T2G5PT.js");
|
|
1268
1364
|
return {
|
|
1269
1365
|
content: [{ type: "text", text: await handleDeleteAgent(params) }]
|
|
1270
1366
|
};
|
|
@@ -1279,7 +1375,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1279
1375
|
},
|
|
1280
1376
|
withToolLogging("platform_run_agent", async (params) => {
|
|
1281
1377
|
requireApiKey();
|
|
1282
|
-
const { handleRunAgent } = await import("./run-agent-
|
|
1378
|
+
const { handleRunAgent } = await import("./run-agent-7QE3YEH7.js");
|
|
1283
1379
|
return {
|
|
1284
1380
|
content: [{ type: "text", text: await handleRunAgent(params) }]
|
|
1285
1381
|
};
|
|
@@ -1291,7 +1387,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1291
1387
|
{},
|
|
1292
1388
|
withToolLogging("platform_list_dashboards", async () => {
|
|
1293
1389
|
requireApiKey();
|
|
1294
|
-
const { handleListDashboards } = await import("./list-dashboards-
|
|
1390
|
+
const { handleListDashboards } = await import("./list-dashboards-G2WJOXWB.js");
|
|
1295
1391
|
return {
|
|
1296
1392
|
content: [{ type: "text", text: await handleListDashboards() }]
|
|
1297
1393
|
};
|
|
@@ -1305,7 +1401,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1305
1401
|
},
|
|
1306
1402
|
withToolLogging("platform_get_dashboard", async (params) => {
|
|
1307
1403
|
requireApiKey();
|
|
1308
|
-
const { handleGetDashboard } = await import("./get-dashboard-
|
|
1404
|
+
const { handleGetDashboard } = await import("./get-dashboard-WSAO6IQ4.js");
|
|
1309
1405
|
return {
|
|
1310
1406
|
content: [{ type: "text", text: await handleGetDashboard(params) }]
|
|
1311
1407
|
};
|
|
@@ -1319,7 +1415,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1319
1415
|
},
|
|
1320
1416
|
withToolLogging("platform_create_dashboard", async (params) => {
|
|
1321
1417
|
requireApiKey();
|
|
1322
|
-
const { handleCreateDashboard } = await import("./create-dashboard-
|
|
1418
|
+
const { handleCreateDashboard } = await import("./create-dashboard-CPOOOIKK.js");
|
|
1323
1419
|
return {
|
|
1324
1420
|
content: [{ type: "text", text: await handleCreateDashboard(params) }]
|
|
1325
1421
|
};
|
|
@@ -1333,7 +1429,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1333
1429
|
},
|
|
1334
1430
|
withToolLogging("platform_delete_dashboard", async (params) => {
|
|
1335
1431
|
requireApiKey();
|
|
1336
|
-
const { handleDeleteDashboard } = await import("./delete-dashboard-
|
|
1432
|
+
const { handleDeleteDashboard } = await import("./delete-dashboard-3RW647WJ.js");
|
|
1337
1433
|
return {
|
|
1338
1434
|
content: [{ type: "text", text: await handleDeleteDashboard(params) }]
|
|
1339
1435
|
};
|
|
@@ -1348,7 +1444,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1348
1444
|
},
|
|
1349
1445
|
withToolLogging("platform_rename_dashboard", async (params) => {
|
|
1350
1446
|
requireApiKey();
|
|
1351
|
-
const { renameDashboard } = await import("./langwatch-api-dashboards-
|
|
1447
|
+
const { renameDashboard } = await import("./langwatch-api-dashboards-NPQM6QJI.js");
|
|
1352
1448
|
const result = await renameDashboard(params.id, { name: params.name });
|
|
1353
1449
|
return {
|
|
1354
1450
|
content: [{ type: "text", text: `Dashboard "${result.name}" renamed successfully (ID: ${result.id}).` }]
|
|
@@ -1361,7 +1457,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1361
1457
|
{},
|
|
1362
1458
|
withToolLogging("platform_list_workflows", async () => {
|
|
1363
1459
|
requireApiKey();
|
|
1364
|
-
const { handleListWorkflows } = await import("./list-workflows-
|
|
1460
|
+
const { handleListWorkflows } = await import("./list-workflows-QQZQIOHB.js");
|
|
1365
1461
|
return {
|
|
1366
1462
|
content: [{ type: "text", text: await handleListWorkflows() }]
|
|
1367
1463
|
};
|
|
@@ -1375,7 +1471,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1375
1471
|
},
|
|
1376
1472
|
withToolLogging("platform_get_workflow", async (params) => {
|
|
1377
1473
|
requireApiKey();
|
|
1378
|
-
const { handleGetWorkflow } = await import("./get-workflow-
|
|
1474
|
+
const { handleGetWorkflow } = await import("./get-workflow-YROHUQJW.js");
|
|
1379
1475
|
return {
|
|
1380
1476
|
content: [{ type: "text", text: await handleGetWorkflow(params) }]
|
|
1381
1477
|
};
|
|
@@ -1389,7 +1485,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1389
1485
|
},
|
|
1390
1486
|
withToolLogging("platform_delete_workflow", async (params) => {
|
|
1391
1487
|
requireApiKey();
|
|
1392
|
-
const { handleDeleteWorkflow } = await import("./delete-workflow-
|
|
1488
|
+
const { handleDeleteWorkflow } = await import("./delete-workflow-SHNPYSWQ.js");
|
|
1393
1489
|
return {
|
|
1394
1490
|
content: [{ type: "text", text: await handleDeleteWorkflow(params) }]
|
|
1395
1491
|
};
|
|
@@ -1404,7 +1500,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1404
1500
|
},
|
|
1405
1501
|
withToolLogging("platform_run_workflow", async (params) => {
|
|
1406
1502
|
requireApiKey();
|
|
1407
|
-
const { handleRunWorkflow } = await import("./run-workflow-
|
|
1503
|
+
const { handleRunWorkflow } = await import("./run-workflow-RWX2D752.js");
|
|
1408
1504
|
return {
|
|
1409
1505
|
content: [{ type: "text", text: await handleRunWorkflow(params) }]
|
|
1410
1506
|
};
|
|
@@ -1418,7 +1514,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1418
1514
|
},
|
|
1419
1515
|
withToolLogging("platform_list_annotations", async (params) => {
|
|
1420
1516
|
requireApiKey();
|
|
1421
|
-
const { handleListAnnotations } = await import("./list-annotations-
|
|
1517
|
+
const { handleListAnnotations } = await import("./list-annotations-6P3IWILH.js");
|
|
1422
1518
|
return {
|
|
1423
1519
|
content: [{ type: "text", text: await handleListAnnotations(params) }]
|
|
1424
1520
|
};
|
|
@@ -1435,7 +1531,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1435
1531
|
},
|
|
1436
1532
|
withToolLogging("platform_create_annotation", async (params) => {
|
|
1437
1533
|
requireApiKey();
|
|
1438
|
-
const { handleCreateAnnotation } = await import("./create-annotation-
|
|
1534
|
+
const { handleCreateAnnotation } = await import("./create-annotation-SNM2J6S4.js");
|
|
1439
1535
|
return {
|
|
1440
1536
|
content: [{ type: "text", text: await handleCreateAnnotation(params) }]
|
|
1441
1537
|
};
|
|
@@ -1449,7 +1545,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1449
1545
|
},
|
|
1450
1546
|
withToolLogging("platform_delete_annotation", async (params) => {
|
|
1451
1547
|
requireApiKey();
|
|
1452
|
-
const { handleDeleteAnnotation } = await import("./delete-annotation-
|
|
1548
|
+
const { handleDeleteAnnotation } = await import("./delete-annotation-KYDMQTZG.js");
|
|
1453
1549
|
return {
|
|
1454
1550
|
content: [{ type: "text", text: await handleDeleteAnnotation(params) }]
|
|
1455
1551
|
};
|
|
@@ -1463,7 +1559,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1463
1559
|
},
|
|
1464
1560
|
withToolLogging("platform_get_annotation", async (params) => {
|
|
1465
1561
|
requireApiKey();
|
|
1466
|
-
const { getAnnotation } = await import("./langwatch-api-annotations-
|
|
1562
|
+
const { getAnnotation } = await import("./langwatch-api-annotations-OPEXNTPF.js");
|
|
1467
1563
|
const annotation = await getAnnotation(params.id);
|
|
1468
1564
|
const lines = [
|
|
1469
1565
|
`**ID**: ${annotation.id}`,
|
|
@@ -1485,7 +1581,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1485
1581
|
},
|
|
1486
1582
|
withToolLogging("platform_list_triggers", async (params) => {
|
|
1487
1583
|
requireApiKey();
|
|
1488
|
-
const { listTriggers } = await import("./langwatch-api-triggers-
|
|
1584
|
+
const { listTriggers } = await import("./langwatch-api-triggers-XGXXT7DD.js");
|
|
1489
1585
|
const triggers = await listTriggers();
|
|
1490
1586
|
if (params.format === "json") {
|
|
1491
1587
|
return { content: [{ type: "text", text: JSON.stringify(triggers, null, 2) }] };
|
|
@@ -1518,7 +1614,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1518
1614
|
},
|
|
1519
1615
|
withToolLogging("platform_create_trigger", async (params) => {
|
|
1520
1616
|
requireApiKey();
|
|
1521
|
-
const { createTrigger } = await import("./langwatch-api-triggers-
|
|
1617
|
+
const { createTrigger } = await import("./langwatch-api-triggers-XGXXT7DD.js");
|
|
1522
1618
|
let filters = {};
|
|
1523
1619
|
if (params.filters) {
|
|
1524
1620
|
try {
|
|
@@ -1549,7 +1645,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1549
1645
|
},
|
|
1550
1646
|
withToolLogging("platform_update_trigger", async (params) => {
|
|
1551
1647
|
requireApiKey();
|
|
1552
|
-
const { updateTrigger } = await import("./langwatch-api-triggers-
|
|
1648
|
+
const { updateTrigger } = await import("./langwatch-api-triggers-XGXXT7DD.js");
|
|
1553
1649
|
const trigger = await updateTrigger(params);
|
|
1554
1650
|
return { content: [{ type: "text", text: `Trigger "${trigger.name}" updated (active: ${trigger.active}).` }] };
|
|
1555
1651
|
})
|
|
@@ -1562,7 +1658,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1562
1658
|
},
|
|
1563
1659
|
withToolLogging("platform_delete_trigger", async (params) => {
|
|
1564
1660
|
requireApiKey();
|
|
1565
|
-
const { deleteTrigger } = await import("./langwatch-api-triggers-
|
|
1661
|
+
const { deleteTrigger } = await import("./langwatch-api-triggers-XGXXT7DD.js");
|
|
1566
1662
|
const result = await deleteTrigger(params.id);
|
|
1567
1663
|
return { content: [{ type: "text", text: `Trigger ${result.id} deleted.` }] };
|
|
1568
1664
|
})
|
|
@@ -1573,7 +1669,7 @@ NOTE: Scenarios can be created two ways. Determine which approach the user needs
|
|
|
1573
1669
|
{},
|
|
1574
1670
|
withToolLogging("platform_list_monitors", async () => {
|
|
1575
1671
|
requireApiKey();
|
|
1576
|
-
const { listMonitors } = await import("./langwatch-api-monitors-
|
|
1672
|
+
const { listMonitors } = await import("./langwatch-api-monitors-3L25OOOS.js");
|
|
1577
1673
|
const monitors = await listMonitors();
|
|
1578
1674
|
if (monitors.length === 0) {
|
|
1579
1675
|
return { content: [{ type: "text", text: "No monitors found." }] };
|
|
@@ -1600,7 +1696,7 @@ ${lines.join("\n")}`
|
|
|
1600
1696
|
},
|
|
1601
1697
|
withToolLogging("platform_get_monitor", async (params) => {
|
|
1602
1698
|
requireApiKey();
|
|
1603
|
-
const { getMonitor } = await import("./langwatch-api-monitors-
|
|
1699
|
+
const { getMonitor } = await import("./langwatch-api-monitors-3L25OOOS.js");
|
|
1604
1700
|
const m = await getMonitor(params.id);
|
|
1605
1701
|
const lines = [
|
|
1606
1702
|
`**${m.name}** (${m.id})`,
|
|
@@ -1627,7 +1723,7 @@ ${lines.join("\n")}`
|
|
|
1627
1723
|
},
|
|
1628
1724
|
withToolLogging("platform_create_monitor", async (params) => {
|
|
1629
1725
|
requireApiKey();
|
|
1630
|
-
const { createMonitor } = await import("./langwatch-api-monitors-
|
|
1726
|
+
const { createMonitor } = await import("./langwatch-api-monitors-3L25OOOS.js");
|
|
1631
1727
|
const monitor = await createMonitor(params);
|
|
1632
1728
|
return {
|
|
1633
1729
|
content: [
|
|
@@ -1651,7 +1747,7 @@ ${lines.join("\n")}`
|
|
|
1651
1747
|
},
|
|
1652
1748
|
withToolLogging("platform_update_monitor", async (params) => {
|
|
1653
1749
|
requireApiKey();
|
|
1654
|
-
const { updateMonitor } = await import("./langwatch-api-monitors-
|
|
1750
|
+
const { updateMonitor } = await import("./langwatch-api-monitors-3L25OOOS.js");
|
|
1655
1751
|
const monitor = await updateMonitor(params);
|
|
1656
1752
|
return {
|
|
1657
1753
|
content: [
|
|
@@ -1671,7 +1767,7 @@ ${lines.join("\n")}`
|
|
|
1671
1767
|
},
|
|
1672
1768
|
withToolLogging("platform_delete_monitor", async (params) => {
|
|
1673
1769
|
requireApiKey();
|
|
1674
|
-
const { deleteMonitor } = await import("./langwatch-api-monitors-
|
|
1770
|
+
const { deleteMonitor } = await import("./langwatch-api-monitors-3L25OOOS.js");
|
|
1675
1771
|
const result = await deleteMonitor(params.id);
|
|
1676
1772
|
return {
|
|
1677
1773
|
content: [
|
|
@@ -1686,7 +1782,7 @@ ${lines.join("\n")}`
|
|
|
1686
1782
|
{},
|
|
1687
1783
|
withToolLogging("platform_list_secrets", async () => {
|
|
1688
1784
|
requireApiKey();
|
|
1689
|
-
const { listSecrets } = await import("./langwatch-api-secrets-
|
|
1785
|
+
const { listSecrets } = await import("./langwatch-api-secrets-ZFURUA62.js");
|
|
1690
1786
|
const secrets = await listSecrets();
|
|
1691
1787
|
if (secrets.length === 0) {
|
|
1692
1788
|
return { content: [{ type: "text", text: "No secrets found." }] };
|
|
@@ -1714,7 +1810,7 @@ ${lines.join("\n")}`
|
|
|
1714
1810
|
},
|
|
1715
1811
|
withToolLogging("platform_create_secret", async (params) => {
|
|
1716
1812
|
requireApiKey();
|
|
1717
|
-
const { createSecret } = await import("./langwatch-api-secrets-
|
|
1813
|
+
const { createSecret } = await import("./langwatch-api-secrets-ZFURUA62.js");
|
|
1718
1814
|
const secret = await createSecret({ name: params.name, value: params.value });
|
|
1719
1815
|
return {
|
|
1720
1816
|
content: [
|
|
@@ -1735,7 +1831,7 @@ ${lines.join("\n")}`
|
|
|
1735
1831
|
},
|
|
1736
1832
|
withToolLogging("platform_update_secret", async (params) => {
|
|
1737
1833
|
requireApiKey();
|
|
1738
|
-
const { updateSecret } = await import("./langwatch-api-secrets-
|
|
1834
|
+
const { updateSecret } = await import("./langwatch-api-secrets-ZFURUA62.js");
|
|
1739
1835
|
const secret = await updateSecret({ id: params.id, value: params.value });
|
|
1740
1836
|
return {
|
|
1741
1837
|
content: [
|
|
@@ -1755,7 +1851,7 @@ ${lines.join("\n")}`
|
|
|
1755
1851
|
},
|
|
1756
1852
|
withToolLogging("platform_delete_secret", async (params) => {
|
|
1757
1853
|
requireApiKey();
|
|
1758
|
-
const { deleteSecret } = await import("./langwatch-api-secrets-
|
|
1854
|
+
const { deleteSecret } = await import("./langwatch-api-secrets-ZFURUA62.js");
|
|
1759
1855
|
const result = await deleteSecret(params.id);
|
|
1760
1856
|
return { content: [{ type: "text", text: `Secret ${result.id} deleted.` }] };
|
|
1761
1857
|
})
|
|
@@ -1775,9 +1871,12 @@ ${lines.join("\n")}`
|
|
|
1775
1871
|
);
|
|
1776
1872
|
server.tool(
|
|
1777
1873
|
"platform_experiment_status",
|
|
1778
|
-
"Check the status of an experiment run
|
|
1874
|
+
"Check the status of an experiment run (running, completed, stopped, or interrupted) plus its progress. Works for both platform-run and SDK-logged experiments; pass experimentSlug for SDK runs or runs older than 24h.",
|
|
1779
1875
|
{
|
|
1780
|
-
runId: z2.string().describe("The run ID returned from platform_run_experiment")
|
|
1876
|
+
runId: z2.string().describe("The run ID returned from platform_run_experiment"),
|
|
1877
|
+
experimentSlug: z2.string().optional().describe(
|
|
1878
|
+
"Experiment slug \u2014 required for SDK-logged runs and runs older than 24h (the Redis run-state they would otherwise be read from is absent/expired). Use platform_experiment_list_runs to find the slug."
|
|
1879
|
+
)
|
|
1781
1880
|
},
|
|
1782
1881
|
withToolLogging("platform_experiment_status", async (params) => {
|
|
1783
1882
|
requireApiKey();
|
|
@@ -1821,7 +1920,7 @@ ${lines.join("\n")}`
|
|
|
1821
1920
|
);
|
|
1822
1921
|
server.tool(
|
|
1823
1922
|
"platform_experiment_results",
|
|
1824
|
-
"Fetch per-row results for
|
|
1923
|
+
"Fetch per-row results for an experiment run so you can debug evaluator scores and missed rows. Serves partial results for runs that are still running or were interrupted (it does not require a completed run), with the run status noted in the output. Returns a markdown report: per-evaluator averages plus row-by-row scores and failure details. Output is capped at 50 rows to protect the agent's context window \u2014 narrow with `filter: 'failed'` or `evaluator` to see what matters.",
|
|
1825
1924
|
{
|
|
1826
1925
|
runId: z2.string().describe("The run ID returned from platform_run_experiment"),
|
|
1827
1926
|
experimentSlug: z2.string().optional().describe(
|
|
@@ -1855,7 +1954,7 @@ ${lines.join("\n")}`
|
|
|
1855
1954
|
async (params) => {
|
|
1856
1955
|
const { requireApiKey: requireApiKey2 } = await import("./config.js");
|
|
1857
1956
|
requireApiKey2();
|
|
1858
|
-
const { handleListDatasets } = await import("./list-datasets-
|
|
1957
|
+
const { handleListDatasets } = await import("./list-datasets-HBTH33X4.js");
|
|
1859
1958
|
return {
|
|
1860
1959
|
content: [{ type: "text", text: await handleListDatasets(params) }]
|
|
1861
1960
|
};
|
|
@@ -1873,7 +1972,7 @@ ${lines.join("\n")}`
|
|
|
1873
1972
|
async (params) => {
|
|
1874
1973
|
const { requireApiKey: requireApiKey2 } = await import("./config.js");
|
|
1875
1974
|
requireApiKey2();
|
|
1876
|
-
const { handleGetDataset } = await import("./get-dataset-
|
|
1975
|
+
const { handleGetDataset } = await import("./get-dataset-BEVNXQNF.js");
|
|
1877
1976
|
return {
|
|
1878
1977
|
content: [{ type: "text", text: await handleGetDataset(params) }]
|
|
1879
1978
|
};
|
|
@@ -1886,7 +1985,7 @@ ${lines.join("\n")}`
|
|
|
1886
1985
|
async (params) => {
|
|
1887
1986
|
const { requireApiKey: requireApiKey2 } = await import("./config.js");
|
|
1888
1987
|
requireApiKey2();
|
|
1889
|
-
const { handleCreateDataset } = await import("./create-dataset-
|
|
1988
|
+
const { handleCreateDataset } = await import("./create-dataset-BVXPVVY2.js");
|
|
1890
1989
|
return {
|
|
1891
1990
|
content: [{ type: "text", text: await handleCreateDataset(params) }]
|
|
1892
1991
|
};
|
|
@@ -1903,7 +2002,7 @@ ${lines.join("\n")}`
|
|
|
1903
2002
|
async (params) => {
|
|
1904
2003
|
const { requireApiKey: requireApiKey2 } = await import("./config.js");
|
|
1905
2004
|
requireApiKey2();
|
|
1906
|
-
const { handleUpdateDataset } = await import("./update-dataset-
|
|
2005
|
+
const { handleUpdateDataset } = await import("./update-dataset-R4MM6NNY.js");
|
|
1907
2006
|
return {
|
|
1908
2007
|
content: [{ type: "text", text: await handleUpdateDataset(params) }]
|
|
1909
2008
|
};
|
|
@@ -1918,7 +2017,7 @@ ${lines.join("\n")}`
|
|
|
1918
2017
|
async (params) => {
|
|
1919
2018
|
const { requireApiKey: requireApiKey2 } = await import("./config.js");
|
|
1920
2019
|
requireApiKey2();
|
|
1921
|
-
const { handleDeleteDataset } = await import("./delete-dataset-
|
|
2020
|
+
const { handleDeleteDataset } = await import("./delete-dataset-SZAHFHHS.js");
|
|
1922
2021
|
return {
|
|
1923
2022
|
content: [{ type: "text", text: await handleDeleteDataset(params) }]
|
|
1924
2023
|
};
|
|
@@ -1936,7 +2035,7 @@ ${lines.join("\n")}`
|
|
|
1936
2035
|
async (params) => {
|
|
1937
2036
|
const { requireApiKey: requireApiKey2 } = await import("./config.js");
|
|
1938
2037
|
requireApiKey2();
|
|
1939
|
-
const { handleListDatasetRecords } = await import("./list-dataset-records-
|
|
2038
|
+
const { handleListDatasetRecords } = await import("./list-dataset-records-GWWVOCII.js");
|
|
1940
2039
|
return {
|
|
1941
2040
|
content: [
|
|
1942
2041
|
{ type: "text", text: await handleListDatasetRecords(params) }
|
|
@@ -1954,7 +2053,7 @@ ${lines.join("\n")}`
|
|
|
1954
2053
|
async (params) => {
|
|
1955
2054
|
const { requireApiKey: requireApiKey2 } = await import("./config.js");
|
|
1956
2055
|
requireApiKey2();
|
|
1957
|
-
const { handleCreateDatasetRecords } = await import("./create-dataset-records-
|
|
2056
|
+
const { handleCreateDatasetRecords } = await import("./create-dataset-records-S7VFIIMR.js");
|
|
1958
2057
|
return {
|
|
1959
2058
|
content: [
|
|
1960
2059
|
{ type: "text", text: await handleCreateDatasetRecords(params) }
|
|
@@ -1973,7 +2072,7 @@ ${lines.join("\n")}`
|
|
|
1973
2072
|
async (params) => {
|
|
1974
2073
|
const { requireApiKey: requireApiKey2 } = await import("./config.js");
|
|
1975
2074
|
requireApiKey2();
|
|
1976
|
-
const { handleUpdateDatasetRecord } = await import("./update-dataset-record-
|
|
2075
|
+
const { handleUpdateDatasetRecord } = await import("./update-dataset-record-FN4BL5P4.js");
|
|
1977
2076
|
return {
|
|
1978
2077
|
content: [
|
|
1979
2078
|
{ type: "text", text: await handleUpdateDatasetRecord(params) }
|
|
@@ -1991,7 +2090,7 @@ ${lines.join("\n")}`
|
|
|
1991
2090
|
async (params) => {
|
|
1992
2091
|
const { requireApiKey: requireApiKey2 } = await import("./config.js");
|
|
1993
2092
|
requireApiKey2();
|
|
1994
|
-
const { handleDeleteDatasetRecords } = await import("./delete-dataset-records-
|
|
2093
|
+
const { handleDeleteDatasetRecords } = await import("./delete-dataset-records-ISHKGEBH.js");
|
|
1995
2094
|
return {
|
|
1996
2095
|
content: [
|
|
1997
2096
|
{ type: "text", text: await handleDeleteDatasetRecords(params) }
|
|
@@ -2008,7 +2107,7 @@ ${lines.join("\n")}`
|
|
|
2008
2107
|
},
|
|
2009
2108
|
withToolLogging("platform_list_projects", async (params) => {
|
|
2010
2109
|
requireApiKey();
|
|
2011
|
-
const { handleListProjects } = await import("./list-projects-
|
|
2110
|
+
const { handleListProjects } = await import("./list-projects-OXJC2NW5.js");
|
|
2012
2111
|
return {
|
|
2013
2112
|
content: [{ type: "text", text: await handleListProjects(params) }]
|
|
2014
2113
|
};
|
|
@@ -2022,7 +2121,7 @@ ${lines.join("\n")}`
|
|
|
2022
2121
|
},
|
|
2023
2122
|
withToolLogging("platform_get_project", async (params) => {
|
|
2024
2123
|
requireApiKey();
|
|
2025
|
-
const { handleGetProject } = await import("./get-project-
|
|
2124
|
+
const { handleGetProject } = await import("./get-project-H4V3GYRQ.js");
|
|
2026
2125
|
return {
|
|
2027
2126
|
content: [{ type: "text", text: await handleGetProject(params) }]
|
|
2028
2127
|
};
|
|
@@ -2042,7 +2141,7 @@ You must provide either teamId (to add the project to an existing team) or newTe
|
|
|
2042
2141
|
},
|
|
2043
2142
|
withToolLogging("platform_create_project", async (params) => {
|
|
2044
2143
|
requireApiKey();
|
|
2045
|
-
const { handleCreateProject } = await import("./create-project-
|
|
2144
|
+
const { handleCreateProject } = await import("./create-project-BF7LMZH5.js");
|
|
2046
2145
|
return {
|
|
2047
2146
|
content: [{ type: "text", text: await handleCreateProject(params) }]
|
|
2048
2147
|
};
|
|
@@ -2060,7 +2159,7 @@ You must provide either teamId (to add the project to an existing team) or newTe
|
|
|
2060
2159
|
},
|
|
2061
2160
|
withToolLogging("platform_update_project", async (params) => {
|
|
2062
2161
|
requireApiKey();
|
|
2063
|
-
const { handleUpdateProject } = await import("./update-project-
|
|
2162
|
+
const { handleUpdateProject } = await import("./update-project-H53IHRBB.js");
|
|
2064
2163
|
return {
|
|
2065
2164
|
content: [{ type: "text", text: await handleUpdateProject(params) }]
|
|
2066
2165
|
};
|
|
@@ -2074,7 +2173,7 @@ You must provide either teamId (to add the project to an existing team) or newTe
|
|
|
2074
2173
|
},
|
|
2075
2174
|
withToolLogging("platform_archive_project", async (params) => {
|
|
2076
2175
|
requireApiKey();
|
|
2077
|
-
const { handleArchiveProject } = await import("./archive-project-
|
|
2176
|
+
const { handleArchiveProject } = await import("./archive-project-KAZFHR4A.js");
|
|
2078
2177
|
return {
|
|
2079
2178
|
content: [{ type: "text", text: await handleArchiveProject(params) }]
|
|
2080
2179
|
};
|
|
@@ -2086,7 +2185,7 @@ You must provide either teamId (to add the project to an existing team) or newTe
|
|
|
2086
2185
|
{},
|
|
2087
2186
|
withToolLogging("platform_list_api_keys", async () => {
|
|
2088
2187
|
requireApiKey();
|
|
2089
|
-
const { handleListApiKeys } = await import("./list-api-keys-
|
|
2188
|
+
const { handleListApiKeys } = await import("./list-api-keys-JJI62KD2.js");
|
|
2090
2189
|
return {
|
|
2091
2190
|
content: [{ type: "text", text: await handleListApiKeys() }]
|
|
2092
2191
|
};
|
|
@@ -2114,7 +2213,7 @@ The token is returned once and cannot be retrieved again.`,
|
|
|
2114
2213
|
},
|
|
2115
2214
|
withToolLogging("platform_create_api_key", async (params) => {
|
|
2116
2215
|
requireApiKey();
|
|
2117
|
-
const { handleCreateApiKey } = await import("./create-api-key-
|
|
2216
|
+
const { handleCreateApiKey } = await import("./create-api-key-23MXYC2L.js");
|
|
2118
2217
|
return {
|
|
2119
2218
|
content: [{ type: "text", text: await handleCreateApiKey(params) }]
|
|
2120
2219
|
};
|
|
@@ -2128,7 +2227,7 @@ The token is returned once and cannot be retrieved again.`,
|
|
|
2128
2227
|
},
|
|
2129
2228
|
withToolLogging("platform_revoke_api_key", async (params) => {
|
|
2130
2229
|
requireApiKey();
|
|
2131
|
-
const { handleRevokeApiKey } = await import("./revoke-api-key-
|
|
2230
|
+
const { handleRevokeApiKey } = await import("./revoke-api-key-TONB4ADQ.js");
|
|
2132
2231
|
return {
|
|
2133
2232
|
content: [{ type: "text", text: await handleRevokeApiKey(params) }]
|
|
2134
2233
|
};
|
|
@@ -2139,4 +2238,4 @@ The token is returned once and cannot be retrieved again.`,
|
|
|
2139
2238
|
export {
|
|
2140
2239
|
createMcpServer
|
|
2141
2240
|
};
|
|
2142
|
-
//# sourceMappingURL=chunk-
|
|
2241
|
+
//# sourceMappingURL=chunk-HRFQAFPR.js.map
|