@langwatch/mcp-server 0.6.0 → 0.7.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.
- package/CHANGELOG.md +30 -0
- package/Dockerfile +22 -0
- package/README.md +51 -8
- package/dist/{archive-scenario-YFD5THOR.js → archive-scenario-WJ2A7ETN.js} +4 -4
- package/dist/archive-suite-4JOM4SSL.js +15 -0
- package/dist/archive-suite-4JOM4SSL.js.map +1 -0
- package/dist/assign-prompt-tag-GL7EAAF3.js +19 -0
- package/dist/assign-prompt-tag-GL7EAAF3.js.map +1 -0
- package/dist/{chunk-6U4TCGFC.js → chunk-2GT7IFWK.js} +2 -2
- package/dist/{chunk-LLRQIF52.js → chunk-2WPLXEKF.js} +49 -5
- package/dist/chunk-2WPLXEKF.js.map +1 -0
- package/dist/chunk-4AUB2BIA.js +71 -0
- package/dist/chunk-4AUB2BIA.js.map +1 -0
- package/dist/chunk-BWWY5KEF.js +71 -0
- package/dist/chunk-BWWY5KEF.js.map +1 -0
- package/dist/{chunk-IX6QJKAD.js → chunk-CCWCIJJ3.js} +2 -2
- package/dist/chunk-E5JYYU3J.js +1567 -0
- package/dist/chunk-E5JYYU3J.js.map +1 -0
- package/dist/chunk-EGH5RPXM.js +25 -0
- package/dist/chunk-EGH5RPXM.js.map +1 -0
- package/dist/chunk-EUQDVOSU.js +39 -0
- package/dist/chunk-EUQDVOSU.js.map +1 -0
- package/dist/{chunk-5UOPNRXW.js → chunk-HYMIWO3U.js} +10 -3
- package/dist/{chunk-5UOPNRXW.js.map → chunk-HYMIWO3U.js.map} +1 -1
- package/dist/chunk-IE4M5OGE.js +42 -0
- package/dist/chunk-IE4M5OGE.js.map +1 -0
- package/dist/chunk-LUMEZEHL.js +48 -0
- package/dist/chunk-LUMEZEHL.js.map +1 -0
- package/dist/chunk-NUFPTHKU.js +9 -0
- package/dist/chunk-NUFPTHKU.js.map +1 -0
- package/dist/chunk-WQG2DFHX.js +86 -0
- package/dist/chunk-WQG2DFHX.js.map +1 -0
- package/dist/chunk-WVI5CJ6S.js +21 -0
- package/dist/chunk-WVI5CJ6S.js.map +1 -0
- package/dist/chunk-ZVS4UKN2.js +35 -0
- package/dist/chunk-ZVS4UKN2.js.map +1 -0
- package/dist/config.d.ts +17 -0
- package/dist/config.js +13 -0
- package/dist/create-agent-MBOOT3XK.js +23 -0
- package/dist/create-agent-MBOOT3XK.js.map +1 -0
- package/dist/create-annotation-XMV6A7ED.js +24 -0
- package/dist/create-annotation-XMV6A7ED.js.map +1 -0
- package/dist/create-dashboard-VRKLFVZJ.js +18 -0
- package/dist/create-dashboard-VRKLFVZJ.js.map +1 -0
- package/dist/create-dataset-7HQPZCRE.js +22 -0
- package/dist/create-dataset-7HQPZCRE.js.map +1 -0
- package/dist/create-dataset-records-2NIVFYTV.js +22 -0
- package/dist/create-dataset-records-2NIVFYTV.js.map +1 -0
- package/dist/{create-evaluator-E5X5ZP3B.js → create-evaluator-WYFRFLRC.js} +4 -4
- package/dist/create-mcp-server.d.ts +8 -0
- package/dist/create-mcp-server.js +8 -0
- package/dist/create-mcp-server.js.map +1 -0
- package/dist/{create-prompt-7Z35MIL6.js → create-prompt-IEN7O6JT.js} +7 -4
- package/dist/create-prompt-IEN7O6JT.js.map +1 -0
- package/dist/create-prompt-tag-CAEZ45VO.js +17 -0
- package/dist/create-prompt-tag-CAEZ45VO.js.map +1 -0
- package/dist/{create-scenario-DIMPJRPY.js → create-scenario-6YHSMGLP.js} +4 -4
- package/dist/create-suite-H5XOFDE5.js +38 -0
- package/dist/create-suite-H5XOFDE5.js.map +1 -0
- package/dist/delete-agent-JKTNBWAA.js +18 -0
- package/dist/delete-agent-JKTNBWAA.js.map +1 -0
- package/dist/delete-annotation-ACMDV6QO.js +17 -0
- package/dist/delete-annotation-ACMDV6QO.js.map +1 -0
- package/dist/delete-dashboard-VJSR7CRU.js +18 -0
- package/dist/delete-dashboard-VJSR7CRU.js.map +1 -0
- package/dist/delete-dataset-RTTTWP4D.js +20 -0
- package/dist/delete-dataset-RTTTWP4D.js.map +1 -0
- package/dist/delete-dataset-records-KNQTIPQK.js +21 -0
- package/dist/delete-dataset-records-KNQTIPQK.js.map +1 -0
- package/dist/delete-evaluator-7FVC5WM4.js +15 -0
- package/dist/delete-evaluator-7FVC5WM4.js.map +1 -0
- package/dist/delete-prompt-tag-ZMZUAGFW.js +17 -0
- package/dist/delete-prompt-tag-ZMZUAGFW.js.map +1 -0
- package/dist/delete-workflow-EYQ3T4RQ.js +17 -0
- package/dist/delete-workflow-EYQ3T4RQ.js.map +1 -0
- package/dist/get-agent-E3QSTVKG.js +28 -0
- package/dist/get-agent-E3QSTVKG.js.map +1 -0
- package/dist/{get-analytics-4YJW4S5L.js → get-analytics-2OHV763I.js} +22 -5
- package/dist/get-analytics-2OHV763I.js.map +1 -0
- package/dist/get-dashboard-PC7JDHH6.js +29 -0
- package/dist/get-dashboard-PC7JDHH6.js.map +1 -0
- package/dist/get-dataset-H5IK5FVU.js +48 -0
- package/dist/get-dataset-H5IK5FVU.js.map +1 -0
- package/dist/{get-evaluator-WDEH2F7M.js → get-evaluator-UWVUPYTM.js} +4 -4
- package/dist/{get-prompt-F6PDVC76.js → get-prompt-WZUOLLQC.js} +4 -4
- package/dist/get-prompt-WZUOLLQC.js.map +1 -0
- package/dist/{get-scenario-H24ZYNT5.js → get-scenario-Q6LCNUYN.js} +4 -4
- package/dist/get-simulation-run-Z2XKO256.js +56 -0
- package/dist/get-simulation-run-Z2XKO256.js.map +1 -0
- package/dist/get-suite-BXK5TN7P.js +44 -0
- package/dist/get-suite-BXK5TN7P.js.map +1 -0
- package/dist/{get-trace-27USKGO7.js → get-trace-4EJAYVBG.js} +3 -3
- package/dist/get-workflow-O34QJLHD.js +25 -0
- package/dist/get-workflow-O34QJLHD.js.map +1 -0
- package/dist/http-server-ISHF7NJX.js +224 -0
- package/dist/http-server-ISHF7NJX.js.map +1 -0
- package/dist/index.js +61109 -31519
- package/dist/index.js.map +1 -1
- package/dist/langwatch-api-annotations-ERBG27RF.js +17 -0
- package/dist/langwatch-api-annotations-ERBG27RF.js.map +1 -0
- package/dist/langwatch-api-dashboards-G6TR7VVO.js +17 -0
- package/dist/langwatch-api-dashboards-G6TR7VVO.js.map +1 -0
- package/dist/langwatch-api-monitors-WSXZLS2B.js +52 -0
- package/dist/langwatch-api-monitors-WSXZLS2B.js.map +1 -0
- package/dist/langwatch-api-secrets-RR5DKG2X.js +40 -0
- package/dist/langwatch-api-secrets-RR5DKG2X.js.map +1 -0
- package/dist/langwatch-api-triggers-2RTNSWQY.js +30 -0
- package/dist/langwatch-api-triggers-2RTNSWQY.js.map +1 -0
- package/dist/langwatch-api-workflows-VJRIIDZ7.js +15 -0
- package/dist/langwatch-api-workflows-VJRIIDZ7.js.map +1 -0
- package/dist/list-agents-AW3P6FJV.js +32 -0
- package/dist/list-agents-AW3P6FJV.js.map +1 -0
- package/dist/list-annotations-QNCGWPQ3.js +33 -0
- package/dist/list-annotations-QNCGWPQ3.js.map +1 -0
- package/dist/list-dashboards-R7RK2IXL.js +32 -0
- package/dist/list-dashboards-R7RK2IXL.js.map +1 -0
- package/dist/list-dataset-records-WVCSQP7P.js +39 -0
- package/dist/list-dataset-records-WVCSQP7P.js.map +1 -0
- package/dist/list-datasets-KEXRLDEU.js +60 -0
- package/dist/list-datasets-KEXRLDEU.js.map +1 -0
- package/dist/{list-evaluators-KRGI72EH.js → list-evaluators-7R2LB4JH.js} +4 -4
- package/dist/{list-model-providers-A5YCFTPI.js → list-model-providers-OBYJCKBX.js} +4 -4
- package/dist/list-prompt-tags-6LY3ZPYI.js +23 -0
- package/dist/list-prompt-tags-6LY3ZPYI.js.map +1 -0
- package/dist/{list-prompts-LKJSE7XN.js → list-prompts-VWEZ4CDE.js} +3 -3
- package/dist/{list-scenarios-ZK5CMGC4.js → list-scenarios-TXD4W2ZJ.js} +4 -4
- package/dist/list-simulation-runs-RHPOLMFI.js +43 -0
- package/dist/list-simulation-runs-RHPOLMFI.js.map +1 -0
- package/dist/list-suites-FSGBX27Z.js +42 -0
- package/dist/list-suites-FSGBX27Z.js.map +1 -0
- package/dist/list-workflows-VRGEZ3EN.js +35 -0
- package/dist/list-workflows-VRGEZ3EN.js.map +1 -0
- package/dist/rename-prompt-tag-VOJJLX4M.js +18 -0
- package/dist/rename-prompt-tag-VOJJLX4M.js.map +1 -0
- package/dist/run-agent-KTCC7TB7.js +36 -0
- package/dist/run-agent-KTCC7TB7.js.map +1 -0
- package/dist/run-evaluation-2X3V3Q6L.js +64 -0
- package/dist/run-evaluation-2X3V3Q6L.js.map +1 -0
- package/dist/run-suite-BTMHGI2D.js +29 -0
- package/dist/run-suite-BTMHGI2D.js.map +1 -0
- package/dist/run-workflow-IGAYGKJL.js +36 -0
- package/dist/run-workflow-IGAYGKJL.js.map +1 -0
- package/dist/{search-traces-SOKAAMAR.js → search-traces-VYFUIMXH.js} +3 -3
- package/dist/{set-model-provider-7MGULZDH.js → set-model-provider-W5IUI326.js} +4 -4
- package/dist/update-agent-4BB7EYLR.js +20 -0
- package/dist/update-agent-4BB7EYLR.js.map +1 -0
- package/dist/update-dataset-CXBKZ4W3.js +22 -0
- package/dist/update-dataset-CXBKZ4W3.js.map +1 -0
- package/dist/update-dataset-record-HOHAMHXG.js +19 -0
- package/dist/update-dataset-record-HOHAMHXG.js.map +1 -0
- package/dist/{update-evaluator-A3XINFLJ.js → update-evaluator-IVOR6FTR.js} +4 -4
- package/dist/{update-prompt-IW7X2UQM.js → update-prompt-OWQAKE7K.js} +5 -3
- package/dist/update-prompt-OWQAKE7K.js.map +1 -0
- package/dist/{update-scenario-ZT7TOBFR.js → update-scenario-GDFVILPN.js} +4 -4
- package/dist/update-suite-BXYUYSPT.js +39 -0
- package/dist/update-suite-BXYUYSPT.js.map +1 -0
- package/package.json +17 -3
- package/src/__tests__/all-tools.integration.test.ts +344 -0
- package/src/__tests__/config.unit.test.ts +81 -1
- package/src/__tests__/datasets.integration.test.ts +603 -0
- package/src/__tests__/datasets.unit.test.ts +240 -0
- package/src/__tests__/docker.integration.test.ts +234 -0
- package/src/__tests__/http-transport.integration.test.ts +397 -0
- package/src/__tests__/langwatch-api.unit.test.ts +174 -0
- package/src/__tests__/tools.unit.test.ts +177 -0
- package/src/config.d.ts +15 -0
- package/src/config.ts +83 -7
- package/src/create-mcp-server.d.ts +6 -0
- package/src/create-mcp-server.ts +1799 -0
- package/src/http-server.ts +329 -0
- package/src/index.ts +22 -593
- package/src/langwatch-api-agents.ts +108 -0
- package/src/langwatch-api-annotations.ts +49 -0
- package/src/langwatch-api-dashboards.ts +48 -0
- package/src/langwatch-api-datasets.ts +191 -0
- package/src/langwatch-api-evaluators.ts +10 -0
- package/src/langwatch-api-monitors.ts +82 -0
- package/src/langwatch-api-secrets.ts +48 -0
- package/src/langwatch-api-simulation-runs.ts +51 -0
- package/src/langwatch-api-suites.ts +118 -0
- package/src/langwatch-api-triggers.ts +48 -0
- package/src/langwatch-api-workflows.ts +41 -0
- package/src/langwatch-api.ts +60 -2
- package/src/schemas/create-dataset.ts +48 -0
- package/src/schemas/index.ts +1 -0
- package/src/tools/archive-suite.ts +12 -0
- package/src/tools/assign-prompt-tag.ts +16 -0
- package/src/tools/create-agent.ts +15 -0
- package/src/tools/create-annotation.ts +18 -0
- package/src/tools/create-dashboard.ts +7 -0
- package/src/tools/create-dataset-records.ts +23 -0
- package/src/tools/create-dataset.ts +22 -0
- package/src/tools/create-prompt-tag.ts +12 -0
- package/src/tools/create-prompt.ts +4 -0
- package/src/tools/create-suite.ts +42 -0
- package/src/tools/delete-agent.ts +7 -0
- package/src/tools/delete-annotation.ts +7 -0
- package/src/tools/delete-dashboard.ts +7 -0
- package/src/tools/delete-dataset-records.ts +22 -0
- package/src/tools/delete-dataset.ts +20 -0
- package/src/tools/delete-evaluator.ts +12 -0
- package/src/tools/delete-prompt-tag.ts +12 -0
- package/src/tools/delete-workflow.ts +7 -0
- package/src/tools/format-dataset-mutation.ts +25 -0
- package/src/tools/get-agent.ts +21 -0
- package/src/tools/get-analytics.ts +30 -3
- package/src/tools/get-dashboard.ts +22 -0
- package/src/tools/get-dataset.ts +63 -0
- package/src/tools/get-prompt.ts +2 -1
- package/src/tools/get-simulation-run.ts +60 -0
- package/src/tools/get-suite.ts +47 -0
- package/src/tools/get-workflow.ts +17 -0
- package/src/tools/list-agents.ts +27 -0
- package/src/tools/list-annotations.ts +33 -0
- package/src/tools/list-dashboards.ts +27 -0
- package/src/tools/list-dataset-records.ts +46 -0
- package/src/tools/list-datasets.ts +80 -0
- package/src/tools/list-prompt-tags.ts +21 -0
- package/src/tools/list-simulation-runs.ts +49 -0
- package/src/tools/list-suites.ts +43 -0
- package/src/tools/list-workflows.ts +31 -0
- package/src/tools/rename-prompt-tag.ts +14 -0
- package/src/tools/run-agent.ts +36 -0
- package/src/tools/run-evaluation.ts +87 -0
- package/src/tools/run-suite.ts +28 -0
- package/src/tools/run-workflow.ts +36 -0
- package/src/tools/update-agent.ts +13 -0
- package/src/tools/update-dataset-record.ts +21 -0
- package/src/tools/update-dataset.ts +23 -0
- package/src/tools/update-prompt.ts +3 -0
- package/src/tools/update-suite.ts +44 -0
- package/src/utils/escape-markdown.ts +12 -0
- package/tsup.config.ts +5 -1
- package/dist/chunk-AAQNA53E.js +0 -28
- package/dist/chunk-AAQNA53E.js.map +0 -1
- package/dist/chunk-LLRQIF52.js.map +0 -1
- package/dist/config-FIQWQRUB.js +0 -11
- package/dist/create-prompt-7Z35MIL6.js.map +0 -1
- package/dist/get-analytics-4YJW4S5L.js.map +0 -1
- package/dist/get-prompt-F6PDVC76.js.map +0 -1
- package/dist/update-prompt-IW7X2UQM.js.map +0 -1
- /package/dist/{archive-scenario-YFD5THOR.js.map → archive-scenario-WJ2A7ETN.js.map} +0 -0
- /package/dist/{chunk-6U4TCGFC.js.map → chunk-2GT7IFWK.js.map} +0 -0
- /package/dist/{chunk-IX6QJKAD.js.map → chunk-CCWCIJJ3.js.map} +0 -0
- /package/dist/{config-FIQWQRUB.js.map → config.js.map} +0 -0
- /package/dist/{create-evaluator-E5X5ZP3B.js.map → create-evaluator-WYFRFLRC.js.map} +0 -0
- /package/dist/{create-scenario-DIMPJRPY.js.map → create-scenario-6YHSMGLP.js.map} +0 -0
- /package/dist/{get-evaluator-WDEH2F7M.js.map → get-evaluator-UWVUPYTM.js.map} +0 -0
- /package/dist/{get-scenario-H24ZYNT5.js.map → get-scenario-Q6LCNUYN.js.map} +0 -0
- /package/dist/{get-trace-27USKGO7.js.map → get-trace-4EJAYVBG.js.map} +0 -0
- /package/dist/{list-evaluators-KRGI72EH.js.map → list-evaluators-7R2LB4JH.js.map} +0 -0
- /package/dist/{list-model-providers-A5YCFTPI.js.map → list-model-providers-OBYJCKBX.js.map} +0 -0
- /package/dist/{list-prompts-LKJSE7XN.js.map → list-prompts-VWEZ4CDE.js.map} +0 -0
- /package/dist/{list-scenarios-ZK5CMGC4.js.map → list-scenarios-TXD4W2ZJ.js.map} +0 -0
- /package/dist/{search-traces-SOKAAMAR.js.map → search-traces-VYFUIMXH.js.map} +0 -0
- /package/dist/{set-model-provider-7MGULZDH.js.map → set-model-provider-W5IUI326.js.map} +0 -0
- /package/dist/{update-evaluator-A3XINFLJ.js.map → update-evaluator-IVOR6FTR.js.map} +0 -0
- /package/dist/{update-scenario-ZT7TOBFR.js.map → update-scenario-GDFVILPN.js.map} +0 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import {
|
|
2
|
+
escapeMarkdown
|
|
3
|
+
} from "./chunk-NUFPTHKU.js";
|
|
4
|
+
|
|
5
|
+
// src/tools/format-dataset-mutation.ts
|
|
6
|
+
function formatDatasetMutationDetails(result) {
|
|
7
|
+
const lines = [];
|
|
8
|
+
lines.push(`**Name**: ${escapeMarkdown(result.name)}`);
|
|
9
|
+
lines.push(`**Slug**: ${escapeMarkdown(result.slug)}`);
|
|
10
|
+
lines.push(`**ID**: ${escapeMarkdown(result.id)}`);
|
|
11
|
+
if (Array.isArray(result.columnTypes) && result.columnTypes.length > 0) {
|
|
12
|
+
const colNames = result.columnTypes.map((c) => `${escapeMarkdown(c.name)} (${escapeMarkdown(c.type)})`).join(", ");
|
|
13
|
+
lines.push(`**Columns**: ${colNames}`);
|
|
14
|
+
}
|
|
15
|
+
return lines;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export {
|
|
19
|
+
formatDatasetMutationDetails
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=chunk-WVI5CJ6S.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/format-dataset-mutation.ts"],"sourcesContent":["import type { DatasetMutationResponse } from \"../langwatch-api-datasets.js\";\nimport { escapeMarkdown } from \"../utils/escape-markdown.js\";\n\n/**\n * Formats the common detail lines for a dataset mutation response\n * (name, slug, id, and column types).\n *\n * Used by both create-dataset and update-dataset handlers to avoid\n * duplicating the formatting logic.\n */\nexport function formatDatasetMutationDetails(\n result: DatasetMutationResponse,\n): string[] {\n const lines: string[] = [];\n lines.push(`**Name**: ${escapeMarkdown(result.name)}`);\n lines.push(`**Slug**: ${escapeMarkdown(result.slug)}`);\n lines.push(`**ID**: ${escapeMarkdown(result.id)}`);\n if (Array.isArray(result.columnTypes) && result.columnTypes.length > 0) {\n const colNames = result.columnTypes\n .map((c) => `${escapeMarkdown(c.name)} (${escapeMarkdown(c.type)})`)\n .join(\", \");\n lines.push(`**Columns**: ${colNames}`);\n }\n return lines;\n}\n"],"mappings":";;;;;AAUO,SAAS,6BACd,QACU;AACV,QAAM,QAAkB,CAAC;AACzB,QAAM,KAAK,aAAa,eAAe,OAAO,IAAI,CAAC,EAAE;AACrD,QAAM,KAAK,aAAa,eAAe,OAAO,IAAI,CAAC,EAAE;AACrD,QAAM,KAAK,WAAW,eAAe,OAAO,EAAE,CAAC,EAAE;AACjD,MAAI,MAAM,QAAQ,OAAO,WAAW,KAAK,OAAO,YAAY,SAAS,GAAG;AACtE,UAAM,WAAW,OAAO,YACrB,IAAI,CAAC,MAAM,GAAG,eAAe,EAAE,IAAI,CAAC,KAAK,eAAe,EAAE,IAAI,CAAC,GAAG,EAClE,KAAK,IAAI;AACZ,UAAM,KAAK,gBAAgB,QAAQ,EAAE;AAAA,EACvC;AACA,SAAO;AACT;","names":[]}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import {
|
|
2
|
+
makeRequest
|
|
3
|
+
} from "./chunk-2WPLXEKF.js";
|
|
4
|
+
|
|
5
|
+
// src/langwatch-api-workflows.ts
|
|
6
|
+
async function listWorkflows() {
|
|
7
|
+
return makeRequest("GET", "/api/workflows");
|
|
8
|
+
}
|
|
9
|
+
async function getWorkflow(id) {
|
|
10
|
+
return makeRequest(
|
|
11
|
+
"GET",
|
|
12
|
+
`/api/workflows/${encodeURIComponent(id)}`
|
|
13
|
+
);
|
|
14
|
+
}
|
|
15
|
+
async function runWorkflow(id, input) {
|
|
16
|
+
return makeRequest(
|
|
17
|
+
"POST",
|
|
18
|
+
`/api/workflows/${encodeURIComponent(id)}/run`,
|
|
19
|
+
input ?? {}
|
|
20
|
+
);
|
|
21
|
+
}
|
|
22
|
+
async function deleteWorkflow(id) {
|
|
23
|
+
return makeRequest(
|
|
24
|
+
"DELETE",
|
|
25
|
+
`/api/workflows/${encodeURIComponent(id)}`
|
|
26
|
+
);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export {
|
|
30
|
+
listWorkflows,
|
|
31
|
+
getWorkflow,
|
|
32
|
+
runWorkflow,
|
|
33
|
+
deleteWorkflow
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=chunk-ZVS4UKN2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/langwatch-api-workflows.ts"],"sourcesContent":["import { makeRequest } from \"./langwatch-api.js\";\n\nexport interface WorkflowSummary {\n id: string;\n name: string;\n icon: string | null;\n description: string | null;\n isEvaluator: boolean;\n isComponent: boolean;\n createdAt: string;\n updatedAt: string;\n}\n\nexport async function listWorkflows(): Promise<WorkflowSummary[]> {\n return makeRequest(\"GET\", \"/api/workflows\") as Promise<WorkflowSummary[]>;\n}\n\nexport async function getWorkflow(id: string): Promise<WorkflowSummary> {\n return makeRequest(\n \"GET\",\n `/api/workflows/${encodeURIComponent(id)}`,\n ) as Promise<WorkflowSummary>;\n}\n\nexport async function runWorkflow(\n id: string,\n input?: Record<string, unknown>\n): Promise<Record<string, unknown>> {\n return makeRequest(\n \"POST\",\n `/api/workflows/${encodeURIComponent(id)}/run`,\n input ?? {},\n ) as Promise<Record<string, unknown>>;\n}\n\nexport async function deleteWorkflow(id: string): Promise<{ id: string; archived: boolean }> {\n return makeRequest(\n \"DELETE\",\n `/api/workflows/${encodeURIComponent(id)}`,\n ) as Promise<{ id: string; archived: boolean }>;\n}\n"],"mappings":";;;;;AAaA,eAAsB,gBAA4C;AAChE,SAAO,YAAY,OAAO,gBAAgB;AAC5C;AAEA,eAAsB,YAAY,IAAsC;AACtE,SAAO;AAAA,IACL;AAAA,IACA,kBAAkB,mBAAmB,EAAE,CAAC;AAAA,EAC1C;AACF;AAEA,eAAsB,YACpB,IACA,OACkC;AAClC,SAAO;AAAA,IACL;AAAA,IACA,kBAAkB,mBAAmB,EAAE,CAAC;AAAA,IACxC,SAAS,CAAC;AAAA,EACZ;AACF;AAEA,eAAsB,eAAe,IAAwD;AAC3F,SAAO;AAAA,IACL;AAAA,IACA,kBAAkB,mBAAmB,EAAE,CAAC;AAAA,EAC1C;AACF;","names":[]}
|
package/dist/config.d.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
interface McpConfig {
|
|
2
|
+
apiKey: string | undefined;
|
|
3
|
+
endpoint: string;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
declare function initConfig(args: {
|
|
7
|
+
apiKey?: string;
|
|
8
|
+
endpoint?: string;
|
|
9
|
+
}): void;
|
|
10
|
+
|
|
11
|
+
declare function getConfig(): McpConfig;
|
|
12
|
+
|
|
13
|
+
declare function requireApiKey(): string;
|
|
14
|
+
|
|
15
|
+
declare function runWithConfig<T>(config: McpConfig, fn: () => T): T;
|
|
16
|
+
|
|
17
|
+
export { type McpConfig, getConfig, initConfig, requireApiKey, runWithConfig };
|
package/dist/config.js
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createAgent
|
|
3
|
+
} from "./chunk-4AUB2BIA.js";
|
|
4
|
+
import "./chunk-2WPLXEKF.js";
|
|
5
|
+
import "./chunk-BWWY5KEF.js";
|
|
6
|
+
|
|
7
|
+
// src/tools/create-agent.ts
|
|
8
|
+
async function handleCreateAgent(params) {
|
|
9
|
+
const agent = await createAgent({
|
|
10
|
+
name: params.name,
|
|
11
|
+
type: params.type,
|
|
12
|
+
config: params.config ?? {}
|
|
13
|
+
});
|
|
14
|
+
return `Agent created successfully!
|
|
15
|
+
|
|
16
|
+
**Name**: ${agent.name}
|
|
17
|
+
**ID**: ${agent.id}
|
|
18
|
+
**Type**: ${agent.type}`;
|
|
19
|
+
}
|
|
20
|
+
export {
|
|
21
|
+
handleCreateAgent
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=create-agent-MBOOT3XK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/create-agent.ts"],"sourcesContent":["import { createAgent as apiCreateAgent } from \"../langwatch-api-agents.js\";\n\nexport async function handleCreateAgent(params: {\n name: string;\n type: string;\n config?: Record<string, unknown>;\n}): Promise<string> {\n const agent = await apiCreateAgent({\n name: params.name,\n type: params.type,\n config: params.config ?? {},\n });\n\n return `Agent created successfully!\\n\\n**Name**: ${agent.name}\\n**ID**: ${agent.id}\\n**Type**: ${agent.type}`;\n}\n"],"mappings":";;;;;;;AAEA,eAAsB,kBAAkB,QAIpB;AAClB,QAAM,QAAQ,MAAM,YAAe;AAAA,IACjC,MAAM,OAAO;AAAA,IACb,MAAM,OAAO;AAAA,IACb,QAAQ,OAAO,UAAU,CAAC;AAAA,EAC5B,CAAC;AAED,SAAO;AAAA;AAAA,YAA4C,MAAM,IAAI;AAAA,UAAa,MAAM,EAAE;AAAA,YAAe,MAAM,IAAI;AAC7G;","names":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createAnnotation
|
|
3
|
+
} from "./chunk-IE4M5OGE.js";
|
|
4
|
+
import "./chunk-2WPLXEKF.js";
|
|
5
|
+
import "./chunk-BWWY5KEF.js";
|
|
6
|
+
|
|
7
|
+
// src/tools/create-annotation.ts
|
|
8
|
+
async function handleCreateAnnotation(params) {
|
|
9
|
+
const annotation = await createAnnotation(params.traceId, {
|
|
10
|
+
comment: params.comment,
|
|
11
|
+
isThumbsUp: params.isThumbsUp,
|
|
12
|
+
email: params.email
|
|
13
|
+
});
|
|
14
|
+
const rating = params.isThumbsUp === true ? " \u{1F44D}" : params.isThumbsUp === false ? " \u{1F44E}" : "";
|
|
15
|
+
return `Annotation created successfully!${rating}
|
|
16
|
+
|
|
17
|
+
**ID**: ${annotation.id ?? "\u2014"}
|
|
18
|
+
**Trace ID**: ${params.traceId}${params.comment ? `
|
|
19
|
+
**Comment**: ${params.comment}` : ""}`;
|
|
20
|
+
}
|
|
21
|
+
export {
|
|
22
|
+
handleCreateAnnotation
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=create-annotation-XMV6A7ED.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/create-annotation.ts"],"sourcesContent":["import { createAnnotation as apiCreateAnnotation } from \"../langwatch-api-annotations.js\";\n\nexport async function handleCreateAnnotation(params: {\n traceId: string;\n comment?: string;\n isThumbsUp?: boolean;\n email?: string;\n}): Promise<string> {\n const annotation = await apiCreateAnnotation(params.traceId, {\n comment: params.comment,\n isThumbsUp: params.isThumbsUp,\n email: params.email,\n });\n\n const rating = params.isThumbsUp === true ? \" 👍\" : params.isThumbsUp === false ? \" 👎\" : \"\";\n\n return `Annotation created successfully!${rating}\\n\\n**ID**: ${annotation.id ?? \"—\"}\\n**Trace ID**: ${params.traceId}${params.comment ? `\\n**Comment**: ${params.comment}` : \"\"}`;\n}\n"],"mappings":";;;;;;;AAEA,eAAsB,uBAAuB,QAKzB;AAClB,QAAM,aAAa,MAAM,iBAAoB,OAAO,SAAS;AAAA,IAC3D,SAAS,OAAO;AAAA,IAChB,YAAY,OAAO;AAAA,IACnB,OAAO,OAAO;AAAA,EAChB,CAAC;AAED,QAAM,SAAS,OAAO,eAAe,OAAO,eAAQ,OAAO,eAAe,QAAQ,eAAQ;AAE1F,SAAO,mCAAmC,MAAM;AAAA;AAAA,UAAe,WAAW,MAAM,QAAG;AAAA,gBAAmB,OAAO,OAAO,GAAG,OAAO,UAAU;AAAA,eAAkB,OAAO,OAAO,KAAK,EAAE;AACjL;","names":[]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createDashboard
|
|
3
|
+
} from "./chunk-EUQDVOSU.js";
|
|
4
|
+
import "./chunk-2WPLXEKF.js";
|
|
5
|
+
import "./chunk-BWWY5KEF.js";
|
|
6
|
+
|
|
7
|
+
// src/tools/create-dashboard.ts
|
|
8
|
+
async function handleCreateDashboard(params) {
|
|
9
|
+
const dashboard = await createDashboard({ name: params.name });
|
|
10
|
+
return `Dashboard created successfully!
|
|
11
|
+
|
|
12
|
+
**Name**: ${dashboard.name}
|
|
13
|
+
**ID**: ${dashboard.id}`;
|
|
14
|
+
}
|
|
15
|
+
export {
|
|
16
|
+
handleCreateDashboard
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=create-dashboard-VRKLFVZJ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/create-dashboard.ts"],"sourcesContent":["import { createDashboard as apiCreateDashboard } from \"../langwatch-api-dashboards.js\";\n\nexport async function handleCreateDashboard(params: { name: string }): Promise<string> {\n const dashboard = await apiCreateDashboard({ name: params.name });\n\n return `Dashboard created successfully!\\n\\n**Name**: ${dashboard.name}\\n**ID**: ${dashboard.id}`;\n}\n"],"mappings":";;;;;;;AAEA,eAAsB,sBAAsB,QAA2C;AACrF,QAAM,YAAY,MAAM,gBAAmB,EAAE,MAAM,OAAO,KAAK,CAAC;AAEhE,SAAO;AAAA;AAAA,YAAgD,UAAU,IAAI;AAAA,UAAa,UAAU,EAAE;AAChG;","names":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import {
|
|
2
|
+
formatDatasetMutationDetails
|
|
3
|
+
} from "./chunk-WVI5CJ6S.js";
|
|
4
|
+
import "./chunk-NUFPTHKU.js";
|
|
5
|
+
import {
|
|
6
|
+
createDataset
|
|
7
|
+
} from "./chunk-WQG2DFHX.js";
|
|
8
|
+
import "./chunk-2WPLXEKF.js";
|
|
9
|
+
import "./chunk-BWWY5KEF.js";
|
|
10
|
+
|
|
11
|
+
// src/tools/create-dataset.ts
|
|
12
|
+
async function handleCreateDataset(params) {
|
|
13
|
+
const result = await createDataset(params);
|
|
14
|
+
const lines = [];
|
|
15
|
+
lines.push("Dataset created successfully!\n");
|
|
16
|
+
lines.push(...formatDatasetMutationDetails(result));
|
|
17
|
+
return lines.join("\n");
|
|
18
|
+
}
|
|
19
|
+
export {
|
|
20
|
+
handleCreateDataset
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=create-dataset-7HQPZCRE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/create-dataset.ts"],"sourcesContent":["import { createDataset as apiCreateDataset } from \"../langwatch-api-datasets.js\";\nimport type { DatasetColumnType } from \"../langwatch-api-datasets.js\";\nimport { formatDatasetMutationDetails } from \"./format-dataset-mutation.js\";\n\n/**\n * Handles the platform_create_dataset MCP tool invocation.\n *\n * Creates a new dataset in the LangWatch project and returns a\n * confirmation with the created dataset's details.\n */\nexport async function handleCreateDataset(params: {\n name: string;\n columnTypes?: DatasetColumnType[];\n}): Promise<string> {\n const result = await apiCreateDataset(params);\n\n const lines: string[] = [];\n lines.push(\"Dataset created successfully!\\n\");\n lines.push(...formatDatasetMutationDetails(result));\n\n return lines.join(\"\\n\");\n}\n"],"mappings":";;;;;;;;;;;AAUA,eAAsB,oBAAoB,QAGtB;AAClB,QAAM,SAAS,MAAM,cAAiB,MAAM;AAE5C,QAAM,QAAkB,CAAC;AACzB,QAAM,KAAK,iCAAiC;AAC5C,QAAM,KAAK,GAAG,6BAA6B,MAAM,CAAC;AAElD,SAAO,MAAM,KAAK,IAAI;AACxB;","names":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createDatasetRecords
|
|
3
|
+
} from "./chunk-WQG2DFHX.js";
|
|
4
|
+
import "./chunk-2WPLXEKF.js";
|
|
5
|
+
import "./chunk-BWWY5KEF.js";
|
|
6
|
+
|
|
7
|
+
// src/tools/create-dataset-records.ts
|
|
8
|
+
async function handleCreateDatasetRecords(params) {
|
|
9
|
+
const result = await createDatasetRecords(params);
|
|
10
|
+
const count = Array.isArray(result.data) ? result.data.length : 0;
|
|
11
|
+
const lines = [];
|
|
12
|
+
lines.push(`${count} record(s) created successfully!
|
|
13
|
+
`);
|
|
14
|
+
lines.push(
|
|
15
|
+
"> Use `platform_get_dataset` to see the updated dataset with all records."
|
|
16
|
+
);
|
|
17
|
+
return lines.join("\n");
|
|
18
|
+
}
|
|
19
|
+
export {
|
|
20
|
+
handleCreateDatasetRecords
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=create-dataset-records-2NIVFYTV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/create-dataset-records.ts"],"sourcesContent":["import { createDatasetRecords as apiCreateDatasetRecords } from \"../langwatch-api-datasets.js\";\n\n/**\n * Handles the platform_create_dataset_records MCP tool invocation.\n *\n * Creates records in a dataset in batch and returns a confirmation\n * with the count of records created.\n */\nexport async function handleCreateDatasetRecords(params: {\n slugOrId: string;\n entries: Record<string, unknown>[];\n}): Promise<string> {\n const result = await apiCreateDatasetRecords(params);\n const count = Array.isArray(result.data) ? result.data.length : 0;\n\n const lines: string[] = [];\n lines.push(`${count} record(s) created successfully!\\n`);\n lines.push(\n \"> Use `platform_get_dataset` to see the updated dataset with all records.\",\n );\n\n return lines.join(\"\\n\");\n}\n"],"mappings":";;;;;;;AAQA,eAAsB,2BAA2B,QAG7B;AAClB,QAAM,SAAS,MAAM,qBAAwB,MAAM;AACnD,QAAM,QAAQ,MAAM,QAAQ,OAAO,IAAI,IAAI,OAAO,KAAK,SAAS;AAEhE,QAAM,QAAkB,CAAC;AACzB,QAAM,KAAK,GAAG,KAAK;AAAA,CAAoC;AACvD,QAAM;AAAA,IACJ;AAAA,EACF;AAEA,SAAO,MAAM,KAAK,IAAI;AACxB;","names":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createEvaluator,
|
|
3
3
|
getEvaluatorType
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-HYMIWO3U.js";
|
|
5
|
+
import "./chunk-2WPLXEKF.js";
|
|
6
|
+
import "./chunk-BWWY5KEF.js";
|
|
7
7
|
|
|
8
8
|
// src/tools/create-evaluator.ts
|
|
9
9
|
async function handleCreateEvaluator(params) {
|
|
@@ -24,4 +24,4 @@ async function handleCreateEvaluator(params) {
|
|
|
24
24
|
export {
|
|
25
25
|
handleCreateEvaluator
|
|
26
26
|
};
|
|
27
|
-
//# sourceMappingURL=create-evaluator-
|
|
27
|
+
//# sourceMappingURL=create-evaluator-WYFRFLRC.js.map
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// Minimal type declaration — avoids pulling mcp-server's full dependency tree
|
|
2
|
+
// into the langwatch app's typecheck scope. The actual return type is McpServer,
|
|
3
|
+
// but we only expose the connect() method that handler.ts uses.
|
|
4
|
+
declare function createMcpServer(): {
|
|
5
|
+
connect(transport: unknown): Promise<void>;
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
export { createMcpServer };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createPrompt
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-2WPLXEKF.js";
|
|
4
|
+
import "./chunk-BWWY5KEF.js";
|
|
5
5
|
|
|
6
6
|
// src/tools/create-prompt.ts
|
|
7
7
|
var HANDLE_PATTERN = /^[a-z0-9_-]+(?:\/[a-z0-9_-]+)?$/;
|
|
@@ -18,7 +18,8 @@ async function handleCreatePrompt(params) {
|
|
|
18
18
|
const result = await createPrompt({
|
|
19
19
|
handle,
|
|
20
20
|
messages: params.messages,
|
|
21
|
-
model: params.model
|
|
21
|
+
model: params.model,
|
|
22
|
+
...params.tags ? { tags: params.tags } : {}
|
|
22
23
|
});
|
|
23
24
|
const lines = [];
|
|
24
25
|
lines.push("Prompt created successfully!\n");
|
|
@@ -28,9 +29,11 @@ async function handleCreatePrompt(params) {
|
|
|
28
29
|
lines.push(`**Model**: ${params.model}`);
|
|
29
30
|
if (result.latestVersionNumber != null)
|
|
30
31
|
lines.push(`**Version**: v${result.latestVersionNumber}`);
|
|
32
|
+
if (params.tags && params.tags.length > 0)
|
|
33
|
+
lines.push(`**Tags**: ${params.tags.join(", ")}`);
|
|
31
34
|
return lines.join("\n");
|
|
32
35
|
}
|
|
33
36
|
export {
|
|
34
37
|
handleCreatePrompt
|
|
35
38
|
};
|
|
36
|
-
//# sourceMappingURL=create-prompt-
|
|
39
|
+
//# sourceMappingURL=create-prompt-IEN7O6JT.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/create-prompt.ts"],"sourcesContent":["import { createPrompt as apiCreatePrompt } from \"../langwatch-api.js\";\n\nconst HANDLE_PATTERN = /^[a-z0-9_-]+(?:\\/[a-z0-9_-]+)?$/;\n\n/**\n * Converts a human-readable name into a URL-friendly handle.\n *\n * Lowercases the input, replaces non-alphanumeric runs with hyphens,\n * and strips leading/trailing hyphens. May return an empty string\n * for inputs with no alphanumeric characters — callers must validate.\n */\nfunction toHandle(name: string): string {\n return name\n .toLowerCase()\n .replace(/[^a-z0-9]+/g, \"-\")\n .replace(/^-|-$/g, \"\");\n}\n\n/**\n * Handles the platform_create_prompt MCP tool invocation.\n *\n * Creates a new prompt in the LangWatch project and returns a\n * confirmation with the created prompt's details.\n */\nexport async function handleCreatePrompt(params: {\n name: string;\n handle?: string;\n messages: Array<{ role: string; content: string }>;\n model: string;\n tags?: string[];\n}): Promise<string> {\n const handle = params.handle?.trim() || toHandle(params.name);\n if (!handle || !HANDLE_PATTERN.test(handle)) {\n throw new Error(\n `Invalid prompt handle \"${handle || \"\"}\". Handle must match ${HANDLE_PATTERN}. Provide a valid \\`handle\\` explicitly.`\n );\n }\n\n const result = await apiCreatePrompt({\n handle,\n messages: params.messages,\n model: params.model,\n ...(params.tags ? { tags: params.tags } : {}),\n });\n\n const lines: string[] = [];\n lines.push(\"Prompt created successfully!\\n\");\n if (result.id) lines.push(`**ID**: ${result.id}`);\n if (result.handle) lines.push(`**Handle**: ${result.handle}`);\n lines.push(`**Name**: ${result.name || params.name}`);\n lines.push(`**Model**: ${params.model}`);\n if (result.latestVersionNumber != null)\n lines.push(`**Version**: v${result.latestVersionNumber}`);\n if (params.tags && params.tags.length > 0)\n lines.push(`**Tags**: ${params.tags.join(\", \")}`);\n\n return lines.join(\"\\n\");\n}\n"],"mappings":";;;;;;AAEA,IAAM,iBAAiB;AASvB,SAAS,SAAS,MAAsB;AACtC,SAAO,KACJ,YAAY,EACZ,QAAQ,eAAe,GAAG,EAC1B,QAAQ,UAAU,EAAE;AACzB;AAQA,eAAsB,mBAAmB,QAMrB;AAClB,QAAM,SAAS,OAAO,QAAQ,KAAK,KAAK,SAAS,OAAO,IAAI;AAC5D,MAAI,CAAC,UAAU,CAAC,eAAe,KAAK,MAAM,GAAG;AAC3C,UAAM,IAAI;AAAA,MACR,0BAA0B,UAAU,EAAE,wBAAwB,cAAc;AAAA,IAC9E;AAAA,EACF;AAEA,QAAM,SAAS,MAAM,aAAgB;AAAA,IACnC;AAAA,IACA,UAAU,OAAO;AAAA,IACjB,OAAO,OAAO;AAAA,IACd,GAAI,OAAO,OAAO,EAAE,MAAM,OAAO,KAAK,IAAI,CAAC;AAAA,EAC7C,CAAC;AAED,QAAM,QAAkB,CAAC;AACzB,QAAM,KAAK,gCAAgC;AAC3C,MAAI,OAAO,GAAI,OAAM,KAAK,WAAW,OAAO,EAAE,EAAE;AAChD,MAAI,OAAO,OAAQ,OAAM,KAAK,eAAe,OAAO,MAAM,EAAE;AAC5D,QAAM,KAAK,aAAa,OAAO,QAAQ,OAAO,IAAI,EAAE;AACpD,QAAM,KAAK,cAAc,OAAO,KAAK,EAAE;AACvC,MAAI,OAAO,uBAAuB;AAChC,UAAM,KAAK,iBAAiB,OAAO,mBAAmB,EAAE;AAC1D,MAAI,OAAO,QAAQ,OAAO,KAAK,SAAS;AACtC,UAAM,KAAK,aAAa,OAAO,KAAK,KAAK,IAAI,CAAC,EAAE;AAElD,SAAO,MAAM,KAAK,IAAI;AACxB;","names":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createPromptTag
|
|
3
|
+
} from "./chunk-2WPLXEKF.js";
|
|
4
|
+
import "./chunk-BWWY5KEF.js";
|
|
5
|
+
|
|
6
|
+
// src/tools/create-prompt-tag.ts
|
|
7
|
+
async function handleCreatePromptTag(params) {
|
|
8
|
+
await createPromptTag(params.name);
|
|
9
|
+
const lines = [];
|
|
10
|
+
lines.push("Tag created successfully!\n");
|
|
11
|
+
lines.push(`**Name**: ${params.name}`);
|
|
12
|
+
return lines.join("\n");
|
|
13
|
+
}
|
|
14
|
+
export {
|
|
15
|
+
handleCreatePromptTag
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=create-prompt-tag-CAEZ45VO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/create-prompt-tag.ts"],"sourcesContent":["import { createPromptTag as apiCreatePromptTag } from \"../langwatch-api.js\";\n\nexport async function handleCreatePromptTag(params: {\n name: string;\n}): Promise<string> {\n await apiCreatePromptTag(params.name);\n\n const lines: string[] = [];\n lines.push(\"Tag created successfully!\\n\");\n lines.push(`**Name**: ${params.name}`);\n return lines.join(\"\\n\");\n}\n"],"mappings":";;;;;;AAEA,eAAsB,sBAAsB,QAExB;AAClB,QAAM,gBAAmB,OAAO,IAAI;AAEpC,QAAM,QAAkB,CAAC;AACzB,QAAM,KAAK,6BAA6B;AACxC,QAAM,KAAK,aAAa,OAAO,IAAI,EAAE;AACrC,SAAO,MAAM,KAAK,IAAI;AACxB;","names":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createScenario
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
5
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-2GT7IFWK.js";
|
|
4
|
+
import "./chunk-2WPLXEKF.js";
|
|
5
|
+
import "./chunk-BWWY5KEF.js";
|
|
6
6
|
|
|
7
7
|
// src/tools/create-scenario.ts
|
|
8
8
|
async function handleCreateScenario(params) {
|
|
@@ -23,4 +23,4 @@ async function handleCreateScenario(params) {
|
|
|
23
23
|
export {
|
|
24
24
|
handleCreateScenario
|
|
25
25
|
};
|
|
26
|
-
//# sourceMappingURL=create-scenario-
|
|
26
|
+
//# sourceMappingURL=create-scenario-6YHSMGLP.js.map
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createSuite
|
|
3
|
+
} from "./chunk-LUMEZEHL.js";
|
|
4
|
+
import "./chunk-2WPLXEKF.js";
|
|
5
|
+
import "./chunk-BWWY5KEF.js";
|
|
6
|
+
|
|
7
|
+
// src/tools/create-suite.ts
|
|
8
|
+
async function handleCreateSuite(params) {
|
|
9
|
+
let parsedTargets;
|
|
10
|
+
try {
|
|
11
|
+
parsedTargets = JSON.parse(params.targets);
|
|
12
|
+
} catch {
|
|
13
|
+
return 'Error: `targets` must be a valid JSON array of objects with `type` and `referenceId` fields.\n\nExample: [{"type": "http", "referenceId": "agent_abc123"}]';
|
|
14
|
+
}
|
|
15
|
+
const suite = await createSuite({
|
|
16
|
+
name: params.name,
|
|
17
|
+
description: params.description,
|
|
18
|
+
scenarioIds: params.scenarioIds,
|
|
19
|
+
targets: parsedTargets,
|
|
20
|
+
repeatCount: params.repeatCount,
|
|
21
|
+
labels: params.labels
|
|
22
|
+
});
|
|
23
|
+
return [
|
|
24
|
+
`Suite "${suite.name}" created successfully.`,
|
|
25
|
+
"",
|
|
26
|
+
`**ID**: ${suite.id}`,
|
|
27
|
+
`**Slug**: ${suite.slug}`,
|
|
28
|
+
`**Scenarios**: ${suite.scenarioIds.length}`,
|
|
29
|
+
`**Targets**: ${suite.targets.length}`,
|
|
30
|
+
`**Repeat**: ${suite.repeatCount}x`,
|
|
31
|
+
"",
|
|
32
|
+
`> Use \`platform_run_suite\` with ID \`${suite.id}\` to trigger execution.`
|
|
33
|
+
].join("\n");
|
|
34
|
+
}
|
|
35
|
+
export {
|
|
36
|
+
handleCreateSuite
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=create-suite-H5XOFDE5.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/create-suite.ts"],"sourcesContent":["import { createSuite as apiCreateSuite } from \"../langwatch-api-suites.js\";\nimport type { SuiteTarget } from \"../langwatch-api-suites.js\";\n\n/**\n * Handles the platform_create_suite MCP tool invocation.\n */\nexport async function handleCreateSuite(params: {\n name: string;\n description?: string;\n scenarioIds: string[];\n targets: string;\n repeatCount?: number;\n labels?: string[];\n}): Promise<string> {\n let parsedTargets: SuiteTarget[];\n try {\n parsedTargets = JSON.parse(params.targets) as SuiteTarget[];\n } catch {\n return \"Error: `targets` must be a valid JSON array of objects with `type` and `referenceId` fields.\\n\\nExample: [{\\\"type\\\": \\\"http\\\", \\\"referenceId\\\": \\\"agent_abc123\\\"}]\";\n }\n\n const suite = await apiCreateSuite({\n name: params.name,\n description: params.description,\n scenarioIds: params.scenarioIds,\n targets: parsedTargets,\n repeatCount: params.repeatCount,\n labels: params.labels,\n });\n\n return [\n `Suite \"${suite.name}\" created successfully.`,\n \"\",\n `**ID**: ${suite.id}`,\n `**Slug**: ${suite.slug}`,\n `**Scenarios**: ${suite.scenarioIds.length}`,\n `**Targets**: ${suite.targets.length}`,\n `**Repeat**: ${suite.repeatCount}x`,\n \"\",\n `> Use \\`platform_run_suite\\` with ID \\`${suite.id}\\` to trigger execution.`,\n ].join(\"\\n\");\n}\n"],"mappings":";;;;;;;AAMA,eAAsB,kBAAkB,QAOpB;AAClB,MAAI;AACJ,MAAI;AACF,oBAAgB,KAAK,MAAM,OAAO,OAAO;AAAA,EAC3C,QAAQ;AACN,WAAO;AAAA,EACT;AAEA,QAAM,QAAQ,MAAM,YAAe;AAAA,IACjC,MAAM,OAAO;AAAA,IACb,aAAa,OAAO;AAAA,IACpB,aAAa,OAAO;AAAA,IACpB,SAAS;AAAA,IACT,aAAa,OAAO;AAAA,IACpB,QAAQ,OAAO;AAAA,EACjB,CAAC;AAED,SAAO;AAAA,IACL,UAAU,MAAM,IAAI;AAAA,IACpB;AAAA,IACA,WAAW,MAAM,EAAE;AAAA,IACnB,aAAa,MAAM,IAAI;AAAA,IACvB,kBAAkB,MAAM,YAAY,MAAM;AAAA,IAC1C,gBAAgB,MAAM,QAAQ,MAAM;AAAA,IACpC,eAAe,MAAM,WAAW;AAAA,IAChC;AAAA,IACA,0CAA0C,MAAM,EAAE;AAAA,EACpD,EAAE,KAAK,IAAI;AACb;","names":[]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import {
|
|
2
|
+
deleteAgent
|
|
3
|
+
} from "./chunk-4AUB2BIA.js";
|
|
4
|
+
import "./chunk-2WPLXEKF.js";
|
|
5
|
+
import "./chunk-BWWY5KEF.js";
|
|
6
|
+
|
|
7
|
+
// src/tools/delete-agent.ts
|
|
8
|
+
async function handleDeleteAgent(params) {
|
|
9
|
+
const result = await deleteAgent(params.id);
|
|
10
|
+
return `Agent archived successfully!
|
|
11
|
+
|
|
12
|
+
**Name**: ${result.name}
|
|
13
|
+
**ID**: ${result.id}`;
|
|
14
|
+
}
|
|
15
|
+
export {
|
|
16
|
+
handleDeleteAgent
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=delete-agent-JKTNBWAA.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/delete-agent.ts"],"sourcesContent":["import { deleteAgent as apiDeleteAgent } from \"../langwatch-api-agents.js\";\n\nexport async function handleDeleteAgent(params: { id: string }): Promise<string> {\n const result = await apiDeleteAgent(params.id);\n\n return `Agent archived successfully!\\n\\n**Name**: ${result.name}\\n**ID**: ${result.id}`;\n}\n"],"mappings":";;;;;;;AAEA,eAAsB,kBAAkB,QAAyC;AAC/E,QAAM,SAAS,MAAM,YAAe,OAAO,EAAE;AAE7C,SAAO;AAAA;AAAA,YAA6C,OAAO,IAAI;AAAA,UAAa,OAAO,EAAE;AACvF;","names":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import {
|
|
2
|
+
deleteAnnotation
|
|
3
|
+
} from "./chunk-IE4M5OGE.js";
|
|
4
|
+
import "./chunk-2WPLXEKF.js";
|
|
5
|
+
import "./chunk-BWWY5KEF.js";
|
|
6
|
+
|
|
7
|
+
// src/tools/delete-annotation.ts
|
|
8
|
+
async function handleDeleteAnnotation(params) {
|
|
9
|
+
await deleteAnnotation(params.id);
|
|
10
|
+
return `Annotation deleted successfully!
|
|
11
|
+
|
|
12
|
+
**ID**: ${params.id}`;
|
|
13
|
+
}
|
|
14
|
+
export {
|
|
15
|
+
handleDeleteAnnotation
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=delete-annotation-ACMDV6QO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/delete-annotation.ts"],"sourcesContent":["import { deleteAnnotation as apiDeleteAnnotation } from \"../langwatch-api-annotations.js\";\n\nexport async function handleDeleteAnnotation(params: { id: string }): Promise<string> {\n await apiDeleteAnnotation(params.id);\n\n return `Annotation deleted successfully!\\n\\n**ID**: ${params.id}`;\n}\n"],"mappings":";;;;;;;AAEA,eAAsB,uBAAuB,QAAyC;AACpF,QAAM,iBAAoB,OAAO,EAAE;AAEnC,SAAO;AAAA;AAAA,UAA+C,OAAO,EAAE;AACjE;","names":[]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import {
|
|
2
|
+
deleteDashboard
|
|
3
|
+
} from "./chunk-EUQDVOSU.js";
|
|
4
|
+
import "./chunk-2WPLXEKF.js";
|
|
5
|
+
import "./chunk-BWWY5KEF.js";
|
|
6
|
+
|
|
7
|
+
// src/tools/delete-dashboard.ts
|
|
8
|
+
async function handleDeleteDashboard(params) {
|
|
9
|
+
const result = await deleteDashboard(params.id);
|
|
10
|
+
return `Dashboard deleted successfully!
|
|
11
|
+
|
|
12
|
+
**Name**: ${result.name}
|
|
13
|
+
**ID**: ${result.id}`;
|
|
14
|
+
}
|
|
15
|
+
export {
|
|
16
|
+
handleDeleteDashboard
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=delete-dashboard-VJSR7CRU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/delete-dashboard.ts"],"sourcesContent":["import { deleteDashboard as apiDeleteDashboard } from \"../langwatch-api-dashboards.js\";\n\nexport async function handleDeleteDashboard(params: { id: string }): Promise<string> {\n const result = await apiDeleteDashboard(params.id);\n\n return `Dashboard deleted successfully!\\n\\n**Name**: ${result.name}\\n**ID**: ${result.id}`;\n}\n"],"mappings":";;;;;;;AAEA,eAAsB,sBAAsB,QAAyC;AACnF,QAAM,SAAS,MAAM,gBAAmB,OAAO,EAAE;AAEjD,SAAO;AAAA;AAAA,YAAgD,OAAO,IAAI;AAAA,UAAa,OAAO,EAAE;AAC1F;","names":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import {
|
|
2
|
+
deleteDataset
|
|
3
|
+
} from "./chunk-WQG2DFHX.js";
|
|
4
|
+
import "./chunk-2WPLXEKF.js";
|
|
5
|
+
import "./chunk-BWWY5KEF.js";
|
|
6
|
+
|
|
7
|
+
// src/tools/delete-dataset.ts
|
|
8
|
+
async function handleDeleteDataset(params) {
|
|
9
|
+
await deleteDataset(params.slugOrId);
|
|
10
|
+
const lines = [];
|
|
11
|
+
lines.push("Dataset deleted successfully!\n");
|
|
12
|
+
lines.push(
|
|
13
|
+
"> The dataset has been archived and will no longer appear in listings."
|
|
14
|
+
);
|
|
15
|
+
return lines.join("\n");
|
|
16
|
+
}
|
|
17
|
+
export {
|
|
18
|
+
handleDeleteDataset
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=delete-dataset-RTTTWP4D.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/delete-dataset.ts"],"sourcesContent":["import { deleteDataset as apiDeleteDataset } from \"../langwatch-api-datasets.js\";\n\n/**\n * Handles the platform_delete_dataset MCP tool invocation.\n *\n * Archives (soft-deletes) a dataset and returns confirmation.\n */\nexport async function handleDeleteDataset(params: {\n slugOrId: string;\n}): Promise<string> {\n await apiDeleteDataset(params.slugOrId);\n\n const lines: string[] = [];\n lines.push(\"Dataset deleted successfully!\\n\");\n lines.push(\n \"> The dataset has been archived and will no longer appear in listings.\",\n );\n\n return lines.join(\"\\n\");\n}\n"],"mappings":";;;;;;;AAOA,eAAsB,oBAAoB,QAEtB;AAClB,QAAM,cAAiB,OAAO,QAAQ;AAEtC,QAAM,QAAkB,CAAC;AACzB,QAAM,KAAK,iCAAiC;AAC5C,QAAM;AAAA,IACJ;AAAA,EACF;AAEA,SAAO,MAAM,KAAK,IAAI;AACxB;","names":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import {
|
|
2
|
+
deleteDatasetRecords
|
|
3
|
+
} from "./chunk-WQG2DFHX.js";
|
|
4
|
+
import "./chunk-2WPLXEKF.js";
|
|
5
|
+
import "./chunk-BWWY5KEF.js";
|
|
6
|
+
|
|
7
|
+
// src/tools/delete-dataset-records.ts
|
|
8
|
+
async function handleDeleteDatasetRecords(params) {
|
|
9
|
+
const result = await deleteDatasetRecords(params);
|
|
10
|
+
const lines = [];
|
|
11
|
+
lines.push(`${result.deletedCount} record(s) deleted successfully!
|
|
12
|
+
`);
|
|
13
|
+
lines.push(
|
|
14
|
+
"> Use `platform_get_dataset` to see the updated dataset."
|
|
15
|
+
);
|
|
16
|
+
return lines.join("\n");
|
|
17
|
+
}
|
|
18
|
+
export {
|
|
19
|
+
handleDeleteDatasetRecords
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=delete-dataset-records-KNQTIPQK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/delete-dataset-records.ts"],"sourcesContent":["import { deleteDatasetRecords as apiDeleteDatasetRecords } from \"../langwatch-api-datasets.js\";\n\n/**\n * Handles the platform_delete_dataset_records MCP tool invocation.\n *\n * Deletes records from a dataset by IDs and returns confirmation\n * with the count of records deleted.\n */\nexport async function handleDeleteDatasetRecords(params: {\n slugOrId: string;\n recordIds: string[];\n}): Promise<string> {\n const result = await apiDeleteDatasetRecords(params);\n\n const lines: string[] = [];\n lines.push(`${result.deletedCount} record(s) deleted successfully!\\n`);\n lines.push(\n \"> Use `platform_get_dataset` to see the updated dataset.\",\n );\n\n return lines.join(\"\\n\");\n}\n"],"mappings":";;;;;;;AAQA,eAAsB,2BAA2B,QAG7B;AAClB,QAAM,SAAS,MAAM,qBAAwB,MAAM;AAEnD,QAAM,QAAkB,CAAC;AACzB,QAAM,KAAK,GAAG,OAAO,YAAY;AAAA,CAAoC;AACrE,QAAM;AAAA,IACJ;AAAA,EACF;AAEA,SAAO,MAAM,KAAK,IAAI;AACxB;","names":[]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import {
|
|
2
|
+
deleteEvaluator
|
|
3
|
+
} from "./chunk-HYMIWO3U.js";
|
|
4
|
+
import "./chunk-2WPLXEKF.js";
|
|
5
|
+
import "./chunk-BWWY5KEF.js";
|
|
6
|
+
|
|
7
|
+
// src/tools/delete-evaluator.ts
|
|
8
|
+
async function handleDeleteEvaluator(params) {
|
|
9
|
+
const result = await deleteEvaluator(params.idOrSlug);
|
|
10
|
+
return `Evaluator ${result.id} has been archived (soft-deleted).`;
|
|
11
|
+
}
|
|
12
|
+
export {
|
|
13
|
+
handleDeleteEvaluator
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=delete-evaluator-7FVC5WM4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/delete-evaluator.ts"],"sourcesContent":["import { deleteEvaluator as apiDeleteEvaluator } from \"../langwatch-api-evaluators.js\";\n\n/**\n * Handles the platform_delete_evaluator MCP tool invocation.\n */\nexport async function handleDeleteEvaluator(params: {\n idOrSlug: string;\n}): Promise<string> {\n const result = await apiDeleteEvaluator(params.idOrSlug);\n\n return `Evaluator ${result.id} has been archived (soft-deleted).`;\n}\n"],"mappings":";;;;;;;AAKA,eAAsB,sBAAsB,QAExB;AAClB,QAAM,SAAS,MAAM,gBAAmB,OAAO,QAAQ;AAEvD,SAAO,aAAa,OAAO,EAAE;AAC/B;","names":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import {
|
|
2
|
+
deletePromptTag
|
|
3
|
+
} from "./chunk-2WPLXEKF.js";
|
|
4
|
+
import "./chunk-BWWY5KEF.js";
|
|
5
|
+
|
|
6
|
+
// src/tools/delete-prompt-tag.ts
|
|
7
|
+
async function handleDeletePromptTag(params) {
|
|
8
|
+
await deletePromptTag(params.tag);
|
|
9
|
+
const lines = [];
|
|
10
|
+
lines.push("Tag deleted successfully!\n");
|
|
11
|
+
lines.push(`**Tag**: ${params.tag}`);
|
|
12
|
+
return lines.join("\n");
|
|
13
|
+
}
|
|
14
|
+
export {
|
|
15
|
+
handleDeletePromptTag
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=delete-prompt-tag-ZMZUAGFW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/delete-prompt-tag.ts"],"sourcesContent":["import { deletePromptTag as apiDeletePromptTag } from \"../langwatch-api.js\";\n\nexport async function handleDeletePromptTag(params: {\n tag: string;\n}): Promise<string> {\n await apiDeletePromptTag(params.tag);\n\n const lines: string[] = [];\n lines.push(\"Tag deleted successfully!\\n\");\n lines.push(`**Tag**: ${params.tag}`);\n return lines.join(\"\\n\");\n}\n"],"mappings":";;;;;;AAEA,eAAsB,sBAAsB,QAExB;AAClB,QAAM,gBAAmB,OAAO,GAAG;AAEnC,QAAM,QAAkB,CAAC;AACzB,QAAM,KAAK,6BAA6B;AACxC,QAAM,KAAK,YAAY,OAAO,GAAG,EAAE;AACnC,SAAO,MAAM,KAAK,IAAI;AACxB;","names":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import {
|
|
2
|
+
deleteWorkflow
|
|
3
|
+
} from "./chunk-ZVS4UKN2.js";
|
|
4
|
+
import "./chunk-2WPLXEKF.js";
|
|
5
|
+
import "./chunk-BWWY5KEF.js";
|
|
6
|
+
|
|
7
|
+
// src/tools/delete-workflow.ts
|
|
8
|
+
async function handleDeleteWorkflow(params) {
|
|
9
|
+
const result = await deleteWorkflow(params.id);
|
|
10
|
+
return `Workflow archived successfully!
|
|
11
|
+
|
|
12
|
+
**ID**: ${result.id}`;
|
|
13
|
+
}
|
|
14
|
+
export {
|
|
15
|
+
handleDeleteWorkflow
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=delete-workflow-EYQ3T4RQ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tools/delete-workflow.ts"],"sourcesContent":["import { deleteWorkflow as apiDeleteWorkflow } from \"../langwatch-api-workflows.js\";\n\nexport async function handleDeleteWorkflow(params: { id: string }): Promise<string> {\n const result = await apiDeleteWorkflow(params.id);\n\n return `Workflow archived successfully!\\n\\n**ID**: ${result.id}`;\n}\n"],"mappings":";;;;;;;AAEA,eAAsB,qBAAqB,QAAyC;AAClF,QAAM,SAAS,MAAM,eAAkB,OAAO,EAAE;AAEhD,SAAO;AAAA;AAAA,UAA8C,OAAO,EAAE;AAChE;","names":[]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import {
|
|
2
|
+
getAgent
|
|
3
|
+
} from "./chunk-4AUB2BIA.js";
|
|
4
|
+
import "./chunk-2WPLXEKF.js";
|
|
5
|
+
import "./chunk-BWWY5KEF.js";
|
|
6
|
+
|
|
7
|
+
// src/tools/get-agent.ts
|
|
8
|
+
async function handleGetAgent(params) {
|
|
9
|
+
const agent = await getAgent(params.id);
|
|
10
|
+
const lines = [];
|
|
11
|
+
lines.push(`# ${agent.name}
|
|
12
|
+
`);
|
|
13
|
+
lines.push(`**ID**: ${agent.id}`);
|
|
14
|
+
lines.push(`**Type**: ${agent.type}`);
|
|
15
|
+
lines.push(`**Created**: ${agent.createdAt}`);
|
|
16
|
+
lines.push(`**Updated**: ${agent.updatedAt}`);
|
|
17
|
+
if (agent.config && Object.keys(agent.config).length > 0) {
|
|
18
|
+
lines.push("\n## Config\n");
|
|
19
|
+
lines.push("```json");
|
|
20
|
+
lines.push(JSON.stringify(agent.config, null, 2));
|
|
21
|
+
lines.push("```");
|
|
22
|
+
}
|
|
23
|
+
return lines.join("\n");
|
|
24
|
+
}
|
|
25
|
+
export {
|
|
26
|
+
handleGetAgent
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=get-agent-E3QSTVKG.js.map
|