@lightsage/mcp 0.4.0 → 0.4.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/README.md +2 -2
- package/bin/mcp-server.js +1227 -235
- package/bin/mcp-server.js.map +32 -9
- package/esm/funcs/evalTemplatesV2EvalTemplatesCreate.d.ts +16 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesCreate.d.ts.map +1 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesCreate.js +83 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesCreate.js.map +1 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesDelete.d.ts +16 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesDelete.d.ts.map +1 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesDelete.js +88 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesDelete.js.map +1 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesList.d.ts +15 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesList.d.ts.map +1 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesList.js +72 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesList.js.map +1 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesRetrieve.d.ts +16 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesRetrieve.d.ts.map +1 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesRetrieve.js +88 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesRetrieve.js.map +1 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesUpdate.d.ts +16 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesUpdate.d.ts.map +1 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesUpdate.js +89 -0
- package/esm/funcs/evalTemplatesV2EvalTemplatesUpdate.js.map +1 -0
- package/esm/funcs/evalsV2EvalsBatchCreate.d.ts +16 -0
- package/esm/funcs/evalsV2EvalsBatchCreate.d.ts.map +1 -0
- package/esm/funcs/evalsV2EvalsBatchCreate.js +83 -0
- package/esm/funcs/evalsV2EvalsBatchCreate.js.map +1 -0
- package/esm/landing-page.js +1 -1
- package/esm/lib/config.d.ts +2 -2
- package/esm/lib/config.js +2 -2
- package/esm/mcp-server/mcp-server.js +1 -1
- package/esm/mcp-server/server.d.ts.map +1 -1
- package/esm/mcp-server/server.js +13 -1
- package/esm/mcp-server/server.js.map +1 -1
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesCreate.d.ts +7 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesCreate.d.ts.map +1 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesCreate.js +35 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesCreate.js.map +1 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesDelete.d.ts +7 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesDelete.d.ts.map +1 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesDelete.js +35 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesDelete.js.map +1 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesList.d.ts +3 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesList.d.ts.map +1 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesList.js +30 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesList.js.map +1 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesRetrieve.d.ts +7 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesRetrieve.d.ts.map +1 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesRetrieve.js +35 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesRetrieve.js.map +1 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesUpdate.d.ts +7 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesUpdate.d.ts.map +1 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesUpdate.js +35 -0
- package/esm/mcp-server/tools/evalTemplatesV2EvalTemplatesUpdate.js.map +1 -0
- package/esm/mcp-server/tools/evalsV2EvalsBatchCreate.d.ts +7 -0
- package/esm/mcp-server/tools/evalsV2EvalsBatchCreate.d.ts.map +1 -0
- package/esm/mcp-server/tools/evalsV2EvalsBatchCreate.js +35 -0
- package/esm/mcp-server/tools/evalsV2EvalsBatchCreate.js.map +1 -0
- package/esm/models/createevaltemplatebatchrequest.d.ts +12 -0
- package/esm/models/createevaltemplatebatchrequest.d.ts.map +1 -0
- package/esm/models/createevaltemplatebatchrequest.js +12 -0
- package/esm/models/createevaltemplatebatchrequest.js.map +1 -0
- package/esm/models/createevaltemplaterequest.d.ts +79 -0
- package/esm/models/createevaltemplaterequest.d.ts.map +1 -0
- package/esm/models/createevaltemplaterequest.js +74 -0
- package/esm/models/createevaltemplaterequest.js.map +1 -0
- package/esm/models/evaltemplate.d.ts +83 -0
- package/esm/models/evaltemplate.d.ts.map +1 -0
- package/esm/models/evaltemplate.js +81 -0
- package/esm/models/evaltemplate.js.map +1 -0
- package/esm/models/evaltemplatebatchcreatedeval.d.ts +11 -0
- package/esm/models/evaltemplatebatchcreatedeval.d.ts.map +1 -0
- package/esm/models/evaltemplatebatchcreatedeval.js +14 -0
- package/esm/models/evaltemplatebatchcreatedeval.js.map +1 -0
- package/esm/models/evaltemplatebatchitem.d.ts +32 -0
- package/esm/models/evaltemplatebatchitem.d.ts.map +1 -0
- package/esm/models/evaltemplatebatchitem.js +27 -0
- package/esm/models/evaltemplatebatchitem.js.map +1 -0
- package/esm/models/evaltemplatebatchresponse.d.ts +12 -0
- package/esm/models/evaltemplatebatchresponse.d.ts.map +1 -0
- package/esm/models/evaltemplatebatchresponse.js +15 -0
- package/esm/models/evaltemplatebatchresponse.js.map +1 -0
- package/esm/models/evaltemplatebatchresult.d.ts +10 -0
- package/esm/models/evaltemplatebatchresult.d.ts.map +1 -0
- package/esm/models/evaltemplatebatchresult.js +13 -0
- package/esm/models/evaltemplatebatchresult.js.map +1 -0
- package/esm/models/evaltemplateruntime.d.ts +20 -0
- package/esm/models/evaltemplateruntime.d.ts.map +1 -0
- package/esm/models/evaltemplateruntime.js +21 -0
- package/esm/models/evaltemplateruntime.js.map +1 -0
- package/esm/models/evaltemplateschedule.d.ts +28 -0
- package/esm/models/evaltemplateschedule.d.ts.map +1 -0
- package/esm/models/evaltemplateschedule.js +24 -0
- package/esm/models/evaltemplateschedule.js.map +1 -0
- package/esm/models/evaltemplatesresponse.d.ts +8 -0
- package/esm/models/evaltemplatesresponse.d.ts.map +1 -0
- package/esm/models/evaltemplatesresponse.js +11 -0
- package/esm/models/evaltemplatesresponse.js.map +1 -0
- package/esm/models/graderdefinition.d.ts +14 -0
- package/esm/models/graderdefinition.d.ts.map +1 -0
- package/esm/models/graderdefinition.js +17 -0
- package/esm/models/graderdefinition.js.map +1 -0
- package/esm/models/updateevaltemplaterequest.d.ts +71 -0
- package/esm/models/updateevaltemplaterequest.d.ts.map +1 -0
- package/esm/models/updateevaltemplaterequest.js +71 -0
- package/esm/models/updateevaltemplaterequest.js.map +1 -0
- package/esm/models/v2evalsbatchcreateop.d.ts +27 -0
- package/esm/models/v2evalsbatchcreateop.d.ts.map +1 -0
- package/esm/models/v2evalsbatchcreateop.js +24 -0
- package/esm/models/v2evalsbatchcreateop.js.map +1 -0
- package/esm/models/v2evaltemplatescreateop.d.ts +13 -0
- package/esm/models/v2evaltemplatescreateop.d.ts.map +1 -0
- package/esm/models/v2evaltemplatescreateop.js +16 -0
- package/esm/models/v2evaltemplatescreateop.js.map +1 -0
- package/esm/models/v2evaltemplatesdeleteop.d.ts +24 -0
- package/esm/models/v2evaltemplatesdeleteop.d.ts.map +1 -0
- package/esm/models/v2evaltemplatesdeleteop.js +23 -0
- package/esm/models/v2evaltemplatesdeleteop.js.map +1 -0
- package/esm/models/v2evaltemplatesretrieveop.d.ts +17 -0
- package/esm/models/v2evaltemplatesretrieveop.d.ts.map +1 -0
- package/esm/models/v2evaltemplatesretrieveop.js +19 -0
- package/esm/models/v2evaltemplatesretrieveop.js.map +1 -0
- package/esm/models/v2evaltemplatesupdateop.d.ts +33 -0
- package/esm/models/v2evaltemplatesupdateop.d.ts.map +1 -0
- package/esm/models/v2evaltemplatesupdateop.js +29 -0
- package/esm/models/v2evaltemplatesupdateop.js.map +1 -0
- package/esm/models/v2inlinemcpdefinition.d.ts +4 -4
- package/esm/models/v2inlinemcpdefinition.d.ts.map +1 -1
- package/esm/models/v2inlinemcpdefinition.js +3 -3
- package/esm/models/v2inlinemcpdefinition.js.map +1 -1
- package/esm/tool-names.d.ts.map +1 -1
- package/esm/tool-names.js +24 -0
- package/esm/tool-names.js.map +1 -1
- package/package.json +1 -1
- package/src/funcs/evalTemplatesV2EvalTemplatesCreate.ts +145 -0
- package/src/funcs/evalTemplatesV2EvalTemplatesDelete.ts +153 -0
- package/src/funcs/evalTemplatesV2EvalTemplatesList.ts +124 -0
- package/src/funcs/evalTemplatesV2EvalTemplatesRetrieve.ts +153 -0
- package/src/funcs/evalTemplatesV2EvalTemplatesUpdate.ts +154 -0
- package/src/funcs/evalsV2EvalsBatchCreate.ts +145 -0
- package/src/landing-page.ts +1 -1
- package/src/lib/config.ts +2 -2
- package/src/mcp-server/mcp-server.ts +1 -1
- package/src/mcp-server/server.ts +13 -1
- package/src/mcp-server/tools/evalTemplatesV2EvalTemplatesCreate.ts +45 -0
- package/src/mcp-server/tools/evalTemplatesV2EvalTemplatesDelete.ts +45 -0
- package/src/mcp-server/tools/evalTemplatesV2EvalTemplatesList.ts +36 -0
- package/src/mcp-server/tools/evalTemplatesV2EvalTemplatesRetrieve.ts +45 -0
- package/src/mcp-server/tools/evalTemplatesV2EvalTemplatesUpdate.ts +45 -0
- package/src/mcp-server/tools/evalsV2EvalsBatchCreate.ts +43 -0
- package/src/models/createevaltemplatebatchrequest.ts +35 -0
- package/src/models/createevaltemplaterequest.ts +151 -0
- package/src/models/evaltemplate.ts +154 -0
- package/src/models/evaltemplatebatchcreatedeval.ts +26 -0
- package/src/models/evaltemplatebatchitem.ts +54 -0
- package/src/models/evaltemplatebatchresponse.ts +30 -0
- package/src/models/evaltemplatebatchresult.ts +26 -0
- package/src/models/evaltemplateruntime.ts +64 -0
- package/src/models/evaltemplateschedule.ts +44 -0
- package/src/models/evaltemplatesresponse.ts +18 -0
- package/src/models/graderdefinition.ts +34 -0
- package/src/models/updateevaltemplaterequest.ts +116 -0
- package/src/models/v2evalsbatchcreateop.ts +66 -0
- package/src/models/v2evaltemplatescreateop.ts +37 -0
- package/src/models/v2evaltemplatesdeleteop.ts +56 -0
- package/src/models/v2evaltemplatesretrieveop.ts +43 -0
- package/src/models/v2evaltemplatesupdateop.ts +79 -0
- package/src/models/v2inlinemcpdefinition.ts +7 -5
- package/src/tool-names.ts +24 -0
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
* @generated-id: 554d4ce825d0
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { LightsageMcpCore } from "../core.js";
|
|
7
|
+
import { encodeJSON, encodeSimple } from "../lib/encodings.js";
|
|
8
|
+
import { compactMap } from "../lib/primitives.js";
|
|
9
|
+
import { safeParse } from "../lib/schemas.js";
|
|
10
|
+
import { RequestOptions } from "../lib/sdks.js";
|
|
11
|
+
import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
|
|
12
|
+
import { pathToFunc } from "../lib/url.js";
|
|
13
|
+
import { APIError } from "../models/errors/apierror.js";
|
|
14
|
+
import {
|
|
15
|
+
ConnectionError,
|
|
16
|
+
InvalidRequestError,
|
|
17
|
+
RequestAbortedError,
|
|
18
|
+
RequestTimeoutError,
|
|
19
|
+
UnexpectedClientError,
|
|
20
|
+
} from "../models/errors/httpclienterrors.js";
|
|
21
|
+
import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
|
|
22
|
+
import {
|
|
23
|
+
V2EvalTemplatesUpdateRequest,
|
|
24
|
+
V2EvalTemplatesUpdateRequest$zodSchema,
|
|
25
|
+
} from "../models/v2evaltemplatesupdateop.js";
|
|
26
|
+
import { APICall, APIPromise } from "../types/async.js";
|
|
27
|
+
import { Result } from "../types/fp.js";
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Update an Eval template
|
|
31
|
+
*
|
|
32
|
+
* @remarks
|
|
33
|
+
* Updates an Eval template. Supply `expected_template_version` to reject an edit based on stale data. Existing evals are never changed.
|
|
34
|
+
*/
|
|
35
|
+
export function evalTemplatesV2EvalTemplatesUpdate(
|
|
36
|
+
client$: LightsageMcpCore,
|
|
37
|
+
request: V2EvalTemplatesUpdateRequest,
|
|
38
|
+
options?: RequestOptions,
|
|
39
|
+
): APIPromise<
|
|
40
|
+
Result<
|
|
41
|
+
Response,
|
|
42
|
+
| APIError
|
|
43
|
+
| SDKValidationError
|
|
44
|
+
| UnexpectedClientError
|
|
45
|
+
| InvalidRequestError
|
|
46
|
+
| RequestAbortedError
|
|
47
|
+
| RequestTimeoutError
|
|
48
|
+
| ConnectionError
|
|
49
|
+
>
|
|
50
|
+
> {
|
|
51
|
+
return new APIPromise($do(
|
|
52
|
+
client$,
|
|
53
|
+
request,
|
|
54
|
+
options,
|
|
55
|
+
));
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
async function $do(
|
|
59
|
+
client$: LightsageMcpCore,
|
|
60
|
+
request: V2EvalTemplatesUpdateRequest,
|
|
61
|
+
options?: RequestOptions,
|
|
62
|
+
): Promise<
|
|
63
|
+
[
|
|
64
|
+
Result<
|
|
65
|
+
Response,
|
|
66
|
+
| APIError
|
|
67
|
+
| SDKValidationError
|
|
68
|
+
| UnexpectedClientError
|
|
69
|
+
| InvalidRequestError
|
|
70
|
+
| RequestAbortedError
|
|
71
|
+
| RequestTimeoutError
|
|
72
|
+
| ConnectionError
|
|
73
|
+
>,
|
|
74
|
+
APICall,
|
|
75
|
+
]
|
|
76
|
+
> {
|
|
77
|
+
const parsed$ = safeParse(
|
|
78
|
+
request,
|
|
79
|
+
(value$) => V2EvalTemplatesUpdateRequest$zodSchema.parse(value$),
|
|
80
|
+
"Input validation failed",
|
|
81
|
+
);
|
|
82
|
+
if (!parsed$.ok) {
|
|
83
|
+
return [parsed$, { status: "invalid" }];
|
|
84
|
+
}
|
|
85
|
+
const payload$ = parsed$.value;
|
|
86
|
+
const body$ = encodeJSON("body", payload$.body, { explode: true });
|
|
87
|
+
|
|
88
|
+
const pathParams$ = {
|
|
89
|
+
template_id: encodeSimple("template_id", payload$.template_id, {
|
|
90
|
+
explode: false,
|
|
91
|
+
charEncoding: "percent",
|
|
92
|
+
}),
|
|
93
|
+
};
|
|
94
|
+
const path$ = pathToFunc("/v2/eval-templates/{template_id}")(
|
|
95
|
+
pathParams$,
|
|
96
|
+
);
|
|
97
|
+
|
|
98
|
+
const headers$ = new Headers(compactMap({
|
|
99
|
+
"Content-Type": "application/json",
|
|
100
|
+
Accept: "application/json",
|
|
101
|
+
}));
|
|
102
|
+
const securityInput = await extractSecurity(client$._options.security);
|
|
103
|
+
const requestSecurity = resolveGlobalSecurity(securityInput);
|
|
104
|
+
|
|
105
|
+
const context = {
|
|
106
|
+
options: client$._options,
|
|
107
|
+
baseURL: options?.serverURL ?? client$._baseURL ?? "",
|
|
108
|
+
operationID: "v2_eval_templates_update",
|
|
109
|
+
oAuth2Scopes: null,
|
|
110
|
+
resolvedSecurity: requestSecurity,
|
|
111
|
+
securitySource: client$._options.security,
|
|
112
|
+
retryConfig: options?.retries
|
|
113
|
+
|| client$._options.retryConfig
|
|
114
|
+
|| { strategy: "none" },
|
|
115
|
+
retryCodes: options?.retryCodes || [
|
|
116
|
+
"429",
|
|
117
|
+
"500",
|
|
118
|
+
"502",
|
|
119
|
+
"503",
|
|
120
|
+
"504",
|
|
121
|
+
],
|
|
122
|
+
};
|
|
123
|
+
|
|
124
|
+
const requestRes = client$._createRequest(context, {
|
|
125
|
+
security: requestSecurity,
|
|
126
|
+
method: "PATCH",
|
|
127
|
+
baseURL: options?.serverURL,
|
|
128
|
+
path: path$,
|
|
129
|
+
headers: headers$,
|
|
130
|
+
body: body$,
|
|
131
|
+
userAgent: client$._options.userAgent,
|
|
132
|
+
timeoutMs: options?.timeoutMs || client$._options.timeoutMs
|
|
133
|
+
|| -1,
|
|
134
|
+
}, options);
|
|
135
|
+
if (!requestRes.ok) {
|
|
136
|
+
return [requestRes, { status: "invalid" }];
|
|
137
|
+
}
|
|
138
|
+
const req$ = requestRes.value;
|
|
139
|
+
|
|
140
|
+
const doResult = await client$._do(req$, {
|
|
141
|
+
context,
|
|
142
|
+
errorCodes: [],
|
|
143
|
+
retryConfig: context.retryConfig,
|
|
144
|
+
retryCodes: context.retryCodes,
|
|
145
|
+
});
|
|
146
|
+
if (!doResult.ok) {
|
|
147
|
+
return [doResult, { status: "request-error", request: req$ }];
|
|
148
|
+
}
|
|
149
|
+
return [doResult, {
|
|
150
|
+
status: "complete",
|
|
151
|
+
"request": req$,
|
|
152
|
+
response: doResult.value,
|
|
153
|
+
}];
|
|
154
|
+
}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
* @generated-id: 602837e287ef
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { LightsageMcpCore } from "../core.js";
|
|
7
|
+
import { encodeJSON } from "../lib/encodings.js";
|
|
8
|
+
import { compactMap } from "../lib/primitives.js";
|
|
9
|
+
import { safeParse } from "../lib/schemas.js";
|
|
10
|
+
import { RequestOptions } from "../lib/sdks.js";
|
|
11
|
+
import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
|
|
12
|
+
import { pathToFunc } from "../lib/url.js";
|
|
13
|
+
import {
|
|
14
|
+
CreateEvalTemplateBatchRequest,
|
|
15
|
+
CreateEvalTemplateBatchRequest$zodSchema,
|
|
16
|
+
} from "../models/createevaltemplatebatchrequest.js";
|
|
17
|
+
import { APIError } from "../models/errors/apierror.js";
|
|
18
|
+
import {
|
|
19
|
+
ConnectionError,
|
|
20
|
+
InvalidRequestError,
|
|
21
|
+
RequestAbortedError,
|
|
22
|
+
RequestTimeoutError,
|
|
23
|
+
UnexpectedClientError,
|
|
24
|
+
} from "../models/errors/httpclienterrors.js";
|
|
25
|
+
import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
|
|
26
|
+
import { APICall, APIPromise } from "../types/async.js";
|
|
27
|
+
import { Result } from "../types/fp.js";
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Create evals from a template
|
|
31
|
+
*
|
|
32
|
+
* @remarks
|
|
33
|
+
* Step 2 of the reusable template workflow. Provide the `id` and `version` returned by `POST /v2/eval-templates` as `template_id` and `expected_template_version`, then provide only prompt-specific fields in `evals`. The template supplies only the settings named in its `included_components`; omitted settings keep the values supplied by the creation workflow or its defaults. Included values are copied at creation time, so later template changes do not alter the created evals. Competitor selections create one additional eval per selected competitor for every input item, and the response groups each base eval with those variants. Brand-scoped runtime resources are validated against the organization's primary brand before any eval is created.
|
|
34
|
+
*/
|
|
35
|
+
export function evalsV2EvalsBatchCreate(
|
|
36
|
+
client$: LightsageMcpCore,
|
|
37
|
+
request: CreateEvalTemplateBatchRequest,
|
|
38
|
+
options?: RequestOptions,
|
|
39
|
+
): APIPromise<
|
|
40
|
+
Result<
|
|
41
|
+
Response,
|
|
42
|
+
| APIError
|
|
43
|
+
| SDKValidationError
|
|
44
|
+
| UnexpectedClientError
|
|
45
|
+
| InvalidRequestError
|
|
46
|
+
| RequestAbortedError
|
|
47
|
+
| RequestTimeoutError
|
|
48
|
+
| ConnectionError
|
|
49
|
+
>
|
|
50
|
+
> {
|
|
51
|
+
return new APIPromise($do(
|
|
52
|
+
client$,
|
|
53
|
+
request,
|
|
54
|
+
options,
|
|
55
|
+
));
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
async function $do(
|
|
59
|
+
client$: LightsageMcpCore,
|
|
60
|
+
request: CreateEvalTemplateBatchRequest,
|
|
61
|
+
options?: RequestOptions,
|
|
62
|
+
): Promise<
|
|
63
|
+
[
|
|
64
|
+
Result<
|
|
65
|
+
Response,
|
|
66
|
+
| APIError
|
|
67
|
+
| SDKValidationError
|
|
68
|
+
| UnexpectedClientError
|
|
69
|
+
| InvalidRequestError
|
|
70
|
+
| RequestAbortedError
|
|
71
|
+
| RequestTimeoutError
|
|
72
|
+
| ConnectionError
|
|
73
|
+
>,
|
|
74
|
+
APICall,
|
|
75
|
+
]
|
|
76
|
+
> {
|
|
77
|
+
const parsed$ = safeParse(
|
|
78
|
+
request,
|
|
79
|
+
(value$) => CreateEvalTemplateBatchRequest$zodSchema.parse(value$),
|
|
80
|
+
"Input validation failed",
|
|
81
|
+
);
|
|
82
|
+
if (!parsed$.ok) {
|
|
83
|
+
return [parsed$, { status: "invalid" }];
|
|
84
|
+
}
|
|
85
|
+
const payload$ = parsed$.value;
|
|
86
|
+
const body$ = encodeJSON("body", payload$, { explode: true });
|
|
87
|
+
const path$ = pathToFunc("/v2/evals/batch")();
|
|
88
|
+
|
|
89
|
+
const headers$ = new Headers(compactMap({
|
|
90
|
+
"Content-Type": "application/json",
|
|
91
|
+
Accept: "application/json",
|
|
92
|
+
}));
|
|
93
|
+
const securityInput = await extractSecurity(client$._options.security);
|
|
94
|
+
const requestSecurity = resolveGlobalSecurity(securityInput);
|
|
95
|
+
|
|
96
|
+
const context = {
|
|
97
|
+
options: client$._options,
|
|
98
|
+
baseURL: options?.serverURL ?? client$._baseURL ?? "",
|
|
99
|
+
operationID: "v2_evals_batch_create",
|
|
100
|
+
oAuth2Scopes: null,
|
|
101
|
+
resolvedSecurity: requestSecurity,
|
|
102
|
+
securitySource: client$._options.security,
|
|
103
|
+
retryConfig: options?.retries
|
|
104
|
+
|| client$._options.retryConfig
|
|
105
|
+
|| { strategy: "none" },
|
|
106
|
+
retryCodes: options?.retryCodes || [
|
|
107
|
+
"429",
|
|
108
|
+
"500",
|
|
109
|
+
"502",
|
|
110
|
+
"503",
|
|
111
|
+
"504",
|
|
112
|
+
],
|
|
113
|
+
};
|
|
114
|
+
|
|
115
|
+
const requestRes = client$._createRequest(context, {
|
|
116
|
+
security: requestSecurity,
|
|
117
|
+
method: "POST",
|
|
118
|
+
baseURL: options?.serverURL,
|
|
119
|
+
path: path$,
|
|
120
|
+
headers: headers$,
|
|
121
|
+
body: body$,
|
|
122
|
+
userAgent: client$._options.userAgent,
|
|
123
|
+
timeoutMs: options?.timeoutMs || client$._options.timeoutMs
|
|
124
|
+
|| -1,
|
|
125
|
+
}, options);
|
|
126
|
+
if (!requestRes.ok) {
|
|
127
|
+
return [requestRes, { status: "invalid" }];
|
|
128
|
+
}
|
|
129
|
+
const req$ = requestRes.value;
|
|
130
|
+
|
|
131
|
+
const doResult = await client$._do(req$, {
|
|
132
|
+
context,
|
|
133
|
+
errorCodes: [],
|
|
134
|
+
retryConfig: context.retryConfig,
|
|
135
|
+
retryCodes: context.retryCodes,
|
|
136
|
+
});
|
|
137
|
+
if (!doResult.ok) {
|
|
138
|
+
return [doResult, { status: "request-error", request: req$ }];
|
|
139
|
+
}
|
|
140
|
+
return [doResult, {
|
|
141
|
+
status: "complete",
|
|
142
|
+
"request": req$,
|
|
143
|
+
response: doResult.value,
|
|
144
|
+
}];
|
|
145
|
+
}
|
package/src/landing-page.ts
CHANGED
|
@@ -931,7 +931,7 @@ http_headers = { "lightsage-api-key-auth" = "YOUR_LIGHTSAGE_API_KEY_AUTH" }`;
|
|
|
931
931
|
<h1>Instructions</h1>
|
|
932
932
|
<p>One-click installation for Claude Desktop users</p>
|
|
933
933
|
<div class="instruction-item">
|
|
934
|
-
<a href="https://github.com/lightsagehq/mcp/releases/download/v0.4.
|
|
934
|
+
<a href="https://github.com/lightsagehq/mcp/releases/download/v0.4.1/mcp-server.mcpb" download="mcp-server.mcpb" class="action-button header-action" style="display: inline-flex; margin-bottom: 16px;">
|
|
935
935
|
📥 Download MCP Bundle
|
|
936
936
|
</a>
|
|
937
937
|
</div>
|
package/src/lib/config.ts
CHANGED
|
@@ -66,7 +66,7 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
|
|
|
66
66
|
export const SDK_METADATA = {
|
|
67
67
|
language: "typescript",
|
|
68
68
|
openapiDocVersion: "1.0.0",
|
|
69
|
-
sdkVersion: "0.4.
|
|
69
|
+
sdkVersion: "0.4.1",
|
|
70
70
|
genVersion: "2.941.0",
|
|
71
|
-
userAgent: "speakeasy-sdk/mcp-typescript 0.4.
|
|
71
|
+
userAgent: "speakeasy-sdk/mcp-typescript 0.4.1 2.941.0 1.0.0 @lightsage/mcp",
|
|
72
72
|
} as const;
|
package/src/mcp-server/server.ts
CHANGED
|
@@ -34,11 +34,17 @@ import { tool$evalsV2EvalConfigurationsDelete } from "./tools/evalsV2EvalConfigu
|
|
|
34
34
|
import { tool$evalsV2EvalConfigurationsList } from "./tools/evalsV2EvalConfigurationsList.js";
|
|
35
35
|
import { tool$evalsV2EvalConfigurationsRetrieve } from "./tools/evalsV2EvalConfigurationsRetrieve.js";
|
|
36
36
|
import { tool$evalsV2EvalConfigurationsUpdate } from "./tools/evalsV2EvalConfigurationsUpdate.js";
|
|
37
|
+
import { tool$evalsV2EvalsBatchCreate } from "./tools/evalsV2EvalsBatchCreate.js";
|
|
37
38
|
import { tool$evalsV2EvalsCreate } from "./tools/evalsV2EvalsCreate.js";
|
|
38
39
|
import { tool$evalsV2EvalsDelete } from "./tools/evalsV2EvalsDelete.js";
|
|
39
40
|
import { tool$evalsV2EvalsList } from "./tools/evalsV2EvalsList.js";
|
|
40
41
|
import { tool$evalsV2EvalsRetrieve } from "./tools/evalsV2EvalsRetrieve.js";
|
|
41
42
|
import { tool$evalsV2EvalsUpdate } from "./tools/evalsV2EvalsUpdate.js";
|
|
43
|
+
import { tool$evalTemplatesV2EvalTemplatesCreate } from "./tools/evalTemplatesV2EvalTemplatesCreate.js";
|
|
44
|
+
import { tool$evalTemplatesV2EvalTemplatesDelete } from "./tools/evalTemplatesV2EvalTemplatesDelete.js";
|
|
45
|
+
import { tool$evalTemplatesV2EvalTemplatesList } from "./tools/evalTemplatesV2EvalTemplatesList.js";
|
|
46
|
+
import { tool$evalTemplatesV2EvalTemplatesRetrieve } from "./tools/evalTemplatesV2EvalTemplatesRetrieve.js";
|
|
47
|
+
import { tool$evalTemplatesV2EvalTemplatesUpdate } from "./tools/evalTemplatesV2EvalTemplatesUpdate.js";
|
|
42
48
|
import { tool$mcpServersV2MCPServersList } from "./tools/mcpServersV2MCPServersList.js";
|
|
43
49
|
import { tool$opportunitiesV2OpportunitiesList } from "./tools/opportunitiesV2OpportunitiesList.js";
|
|
44
50
|
import { tool$opportunitiesV2OpportunitiesRetrieve } from "./tools/opportunitiesV2OpportunitiesRetrieve.js";
|
|
@@ -90,7 +96,7 @@ export function createMCPServer(deps: {
|
|
|
90
96
|
sizes: ["any"],
|
|
91
97
|
}],
|
|
92
98
|
name: "LightsageMcp",
|
|
93
|
-
version: "0.4.
|
|
99
|
+
version: "0.4.1",
|
|
94
100
|
});
|
|
95
101
|
|
|
96
102
|
const getClient = deps.getSDK || (() =>
|
|
@@ -164,6 +170,7 @@ export function createMCPServer(deps: {
|
|
|
164
170
|
tool(tool$siteAuditsV2SiteAuditsRetrieve);
|
|
165
171
|
tool(tool$evalsV2EvalsList);
|
|
166
172
|
tool(tool$evalsV2EvalsCreate);
|
|
173
|
+
tool(tool$evalsV2EvalsBatchCreate);
|
|
167
174
|
tool(tool$evalsV2EvalsRetrieve);
|
|
168
175
|
tool(tool$evalsV2EvalsUpdate);
|
|
169
176
|
tool(tool$evalsV2EvalsDelete);
|
|
@@ -176,6 +183,11 @@ export function createMCPServer(deps: {
|
|
|
176
183
|
tool(tool$evalsCancel);
|
|
177
184
|
tool(tool$evalsTrace);
|
|
178
185
|
tool(tool$evalsGet);
|
|
186
|
+
tool(tool$evalTemplatesV2EvalTemplatesList);
|
|
187
|
+
tool(tool$evalTemplatesV2EvalTemplatesCreate);
|
|
188
|
+
tool(tool$evalTemplatesV2EvalTemplatesRetrieve);
|
|
189
|
+
tool(tool$evalTemplatesV2EvalTemplatesUpdate);
|
|
190
|
+
tool(tool$evalTemplatesV2EvalTemplatesDelete);
|
|
179
191
|
tool(tool$evalRunsV2EvalRunsList);
|
|
180
192
|
tool(tool$agentsV2AgentsList);
|
|
181
193
|
tool(tool$repositoriesV2RepositoriesList);
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
* @generated-id: f6d153b66c00
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { evalTemplatesV2EvalTemplatesCreate } from "../../funcs/evalTemplatesV2EvalTemplatesCreate.js";
|
|
7
|
+
import { CreateEvalTemplateRequest$zodSchema } from "../../models/createevaltemplaterequest.js";
|
|
8
|
+
import { formatResult, ToolDefinition } from "../tools.js";
|
|
9
|
+
|
|
10
|
+
const args = {
|
|
11
|
+
request: CreateEvalTemplateRequest$zodSchema,
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export const tool$evalTemplatesV2EvalTemplatesCreate: ToolDefinition<
|
|
15
|
+
typeof args
|
|
16
|
+
> = {
|
|
17
|
+
name: "eval-templates-v2-eval-templates-create",
|
|
18
|
+
description: `Create an Eval template
|
|
19
|
+
|
|
20
|
+
Step 1 of the reusable template workflow. Creates an organization-owned Eval template containing only the configuration components selected in \`included_components\`. Do not include task prompts in the template. The response returns the template \`id\` and \`version\`; pass them as \`template_id\` and \`expected_template_version\` to \`POST /v2/evals/batch\` with each eval's name and prompts. Applying a template copies its values into the new evals without creating a live link.`,
|
|
21
|
+
annotations: {
|
|
22
|
+
"title": "",
|
|
23
|
+
"destructiveHint": false,
|
|
24
|
+
"idempotentHint": false,
|
|
25
|
+
"openWorldHint": false,
|
|
26
|
+
"readOnlyHint": false,
|
|
27
|
+
},
|
|
28
|
+
args,
|
|
29
|
+
tool: async (client, args, ctx) => {
|
|
30
|
+
const [result] = await evalTemplatesV2EvalTemplatesCreate(
|
|
31
|
+
client,
|
|
32
|
+
args.request,
|
|
33
|
+
{ fetchOptions: { signal: ctx.signal } },
|
|
34
|
+
).$inspect();
|
|
35
|
+
|
|
36
|
+
if (!result.ok) {
|
|
37
|
+
return {
|
|
38
|
+
content: [{ type: "text", text: result.error.message }],
|
|
39
|
+
isError: true,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
return formatResult(result.value);
|
|
44
|
+
},
|
|
45
|
+
};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
* @generated-id: bfa4338eff8a
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { evalTemplatesV2EvalTemplatesDelete } from "../../funcs/evalTemplatesV2EvalTemplatesDelete.js";
|
|
7
|
+
import { V2EvalTemplatesDeleteRequest$zodSchema } from "../../models/v2evaltemplatesdeleteop.js";
|
|
8
|
+
import { formatResult, ToolDefinition } from "../tools.js";
|
|
9
|
+
|
|
10
|
+
const args = {
|
|
11
|
+
request: V2EvalTemplatesDeleteRequest$zodSchema,
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export const tool$evalTemplatesV2EvalTemplatesDelete: ToolDefinition<
|
|
15
|
+
typeof args
|
|
16
|
+
> = {
|
|
17
|
+
name: "eval-templates-v2-eval-templates-delete",
|
|
18
|
+
description: `Delete an Eval template
|
|
19
|
+
|
|
20
|
+
Soft-deletes an Eval template. Evals previously created from it remain independent and continue to run with their copied configuration.`,
|
|
21
|
+
annotations: {
|
|
22
|
+
"title": "",
|
|
23
|
+
"destructiveHint": true,
|
|
24
|
+
"idempotentHint": false,
|
|
25
|
+
"openWorldHint": false,
|
|
26
|
+
"readOnlyHint": false,
|
|
27
|
+
},
|
|
28
|
+
args,
|
|
29
|
+
tool: async (client, args, ctx) => {
|
|
30
|
+
const [result] = await evalTemplatesV2EvalTemplatesDelete(
|
|
31
|
+
client,
|
|
32
|
+
args.request,
|
|
33
|
+
{ fetchOptions: { signal: ctx.signal } },
|
|
34
|
+
).$inspect();
|
|
35
|
+
|
|
36
|
+
if (!result.ok) {
|
|
37
|
+
return {
|
|
38
|
+
content: [{ type: "text", text: result.error.message }],
|
|
39
|
+
isError: true,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
return formatResult(result.value);
|
|
44
|
+
},
|
|
45
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
* @generated-id: 8040bdb47e80
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { evalTemplatesV2EvalTemplatesList } from "../../funcs/evalTemplatesV2EvalTemplatesList.js";
|
|
7
|
+
import { formatResult, ToolDefinition } from "../tools.js";
|
|
8
|
+
|
|
9
|
+
export const tool$evalTemplatesV2EvalTemplatesList: ToolDefinition = {
|
|
10
|
+
name: "eval-templates-v2-eval-templates-list",
|
|
11
|
+
description: `List Eval templates
|
|
12
|
+
|
|
13
|
+
Returns active reusable Eval templates owned by the authenticated organization. Templates contain reusable configuration and never task prompts.`,
|
|
14
|
+
annotations: {
|
|
15
|
+
"title": "",
|
|
16
|
+
"destructiveHint": false,
|
|
17
|
+
"idempotentHint": false,
|
|
18
|
+
"openWorldHint": false,
|
|
19
|
+
"readOnlyHint": true,
|
|
20
|
+
},
|
|
21
|
+
tool: async (client, ctx) => {
|
|
22
|
+
const [result] = await evalTemplatesV2EvalTemplatesList(
|
|
23
|
+
client,
|
|
24
|
+
{ fetchOptions: { signal: ctx.signal } },
|
|
25
|
+
).$inspect();
|
|
26
|
+
|
|
27
|
+
if (!result.ok) {
|
|
28
|
+
return {
|
|
29
|
+
content: [{ type: "text", text: result.error.message }],
|
|
30
|
+
isError: true,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
return formatResult(result.value);
|
|
35
|
+
},
|
|
36
|
+
};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
* @generated-id: c0e5159c6665
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { evalTemplatesV2EvalTemplatesRetrieve } from "../../funcs/evalTemplatesV2EvalTemplatesRetrieve.js";
|
|
7
|
+
import { V2EvalTemplatesRetrieveRequest$zodSchema } from "../../models/v2evaltemplatesretrieveop.js";
|
|
8
|
+
import { formatResult, ToolDefinition } from "../tools.js";
|
|
9
|
+
|
|
10
|
+
const args = {
|
|
11
|
+
request: V2EvalTemplatesRetrieveRequest$zodSchema,
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export const tool$evalTemplatesV2EvalTemplatesRetrieve: ToolDefinition<
|
|
15
|
+
typeof args
|
|
16
|
+
> = {
|
|
17
|
+
name: "eval-templates-v2-eval-templates-retrieve",
|
|
18
|
+
description: `Retrieve an Eval template
|
|
19
|
+
|
|
20
|
+
Returns one active reusable Eval template.`,
|
|
21
|
+
annotations: {
|
|
22
|
+
"title": "",
|
|
23
|
+
"destructiveHint": false,
|
|
24
|
+
"idempotentHint": false,
|
|
25
|
+
"openWorldHint": false,
|
|
26
|
+
"readOnlyHint": true,
|
|
27
|
+
},
|
|
28
|
+
args,
|
|
29
|
+
tool: async (client, args, ctx) => {
|
|
30
|
+
const [result] = await evalTemplatesV2EvalTemplatesRetrieve(
|
|
31
|
+
client,
|
|
32
|
+
args.request,
|
|
33
|
+
{ fetchOptions: { signal: ctx.signal } },
|
|
34
|
+
).$inspect();
|
|
35
|
+
|
|
36
|
+
if (!result.ok) {
|
|
37
|
+
return {
|
|
38
|
+
content: [{ type: "text", text: result.error.message }],
|
|
39
|
+
isError: true,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
return formatResult(result.value);
|
|
44
|
+
},
|
|
45
|
+
};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
* @generated-id: 1f25df1eae88
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { evalTemplatesV2EvalTemplatesUpdate } from "../../funcs/evalTemplatesV2EvalTemplatesUpdate.js";
|
|
7
|
+
import { V2EvalTemplatesUpdateRequest$zodSchema } from "../../models/v2evaltemplatesupdateop.js";
|
|
8
|
+
import { formatResult, ToolDefinition } from "../tools.js";
|
|
9
|
+
|
|
10
|
+
const args = {
|
|
11
|
+
request: V2EvalTemplatesUpdateRequest$zodSchema,
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export const tool$evalTemplatesV2EvalTemplatesUpdate: ToolDefinition<
|
|
15
|
+
typeof args
|
|
16
|
+
> = {
|
|
17
|
+
name: "eval-templates-v2-eval-templates-update",
|
|
18
|
+
description: `Update an Eval template
|
|
19
|
+
|
|
20
|
+
Updates an Eval template. Supply \`expected_template_version\` to reject an edit based on stale data. Existing evals are never changed.`,
|
|
21
|
+
annotations: {
|
|
22
|
+
"title": "",
|
|
23
|
+
"destructiveHint": false,
|
|
24
|
+
"idempotentHint": false,
|
|
25
|
+
"openWorldHint": false,
|
|
26
|
+
"readOnlyHint": false,
|
|
27
|
+
},
|
|
28
|
+
args,
|
|
29
|
+
tool: async (client, args, ctx) => {
|
|
30
|
+
const [result] = await evalTemplatesV2EvalTemplatesUpdate(
|
|
31
|
+
client,
|
|
32
|
+
args.request,
|
|
33
|
+
{ fetchOptions: { signal: ctx.signal } },
|
|
34
|
+
).$inspect();
|
|
35
|
+
|
|
36
|
+
if (!result.ok) {
|
|
37
|
+
return {
|
|
38
|
+
content: [{ type: "text", text: result.error.message }],
|
|
39
|
+
isError: true,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
return formatResult(result.value);
|
|
44
|
+
},
|
|
45
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
* @generated-id: 18f4c7ff36d5
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { evalsV2EvalsBatchCreate } from "../../funcs/evalsV2EvalsBatchCreate.js";
|
|
7
|
+
import { CreateEvalTemplateBatchRequest$zodSchema } from "../../models/createevaltemplatebatchrequest.js";
|
|
8
|
+
import { formatResult, ToolDefinition } from "../tools.js";
|
|
9
|
+
|
|
10
|
+
const args = {
|
|
11
|
+
request: CreateEvalTemplateBatchRequest$zodSchema,
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export const tool$evalsV2EvalsBatchCreate: ToolDefinition<typeof args> = {
|
|
15
|
+
name: "evals-v2-evals-batch-create",
|
|
16
|
+
description: `Create evals from a template
|
|
17
|
+
|
|
18
|
+
Step 2 of the reusable template workflow. Provide the \`id\` and \`version\` returned by \`POST /v2/eval-templates\` as \`template_id\` and \`expected_template_version\`, then provide only prompt-specific fields in \`evals\`. The template supplies only the settings named in its \`included_components\`; omitted settings keep the values supplied by the creation workflow or its defaults. Included values are copied at creation time, so later template changes do not alter the created evals. Competitor selections create one additional eval per selected competitor for every input item, and the response groups each base eval with those variants. Brand-scoped runtime resources are validated against the organization's primary brand before any eval is created.`,
|
|
19
|
+
annotations: {
|
|
20
|
+
"title": "",
|
|
21
|
+
"destructiveHint": false,
|
|
22
|
+
"idempotentHint": false,
|
|
23
|
+
"openWorldHint": false,
|
|
24
|
+
"readOnlyHint": false,
|
|
25
|
+
},
|
|
26
|
+
args,
|
|
27
|
+
tool: async (client, args, ctx) => {
|
|
28
|
+
const [result] = await evalsV2EvalsBatchCreate(
|
|
29
|
+
client,
|
|
30
|
+
args.request,
|
|
31
|
+
{ fetchOptions: { signal: ctx.signal } },
|
|
32
|
+
).$inspect();
|
|
33
|
+
|
|
34
|
+
if (!result.ok) {
|
|
35
|
+
return {
|
|
36
|
+
content: [{ type: "text", text: result.error.message }],
|
|
37
|
+
isError: true,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
return formatResult(result.value);
|
|
42
|
+
},
|
|
43
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
* @generated-id: 6c3f16ae5afb
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import * as z from "zod";
|
|
7
|
+
import {
|
|
8
|
+
EvalTemplateBatchItem,
|
|
9
|
+
EvalTemplateBatchItem$zodSchema,
|
|
10
|
+
} from "./evaltemplatebatchitem.js";
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Reuse one template across up to 100 prompt-specific eval definitions.
|
|
14
|
+
*/
|
|
15
|
+
export type CreateEvalTemplateBatchRequest = {
|
|
16
|
+
template_id: string;
|
|
17
|
+
expected_template_version?: number | undefined;
|
|
18
|
+
evals: Array<EvalTemplateBatchItem>;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export const CreateEvalTemplateBatchRequest$zodSchema: z.ZodType<
|
|
22
|
+
CreateEvalTemplateBatchRequest
|
|
23
|
+
> = z.object({
|
|
24
|
+
evals: z.array(EvalTemplateBatchItem$zodSchema).describe(
|
|
25
|
+
"Prompt-specific evals to create from the referenced template. Template-owned fields are intentionally rejected here to avoid ambiguous overrides.",
|
|
26
|
+
),
|
|
27
|
+
expected_template_version: z.int().optional().describe(
|
|
28
|
+
"Template `version` returned when the template was read or created. When supplied, creation fails if the template changed before reuse.",
|
|
29
|
+
),
|
|
30
|
+
template_id: z.string().describe(
|
|
31
|
+
"Template `id` returned by `POST /v2/eval-templates`.",
|
|
32
|
+
),
|
|
33
|
+
}).describe(
|
|
34
|
+
"Reuse one template across up to 100 prompt-specific eval definitions.",
|
|
35
|
+
);
|