@dalmia/calibrate-mcp 0.0.53 → 0.0.55
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/bin/mcp-server.js +412 -221
- package/bin/mcp-server.js.map +19 -16
- package/esm/funcs/agentTestsGetBenchmark.js +1 -0
- package/esm/funcs/agentTestsGetBenchmark.js.map +1 -1
- package/esm/funcs/agentTestsGetRun.js +1 -0
- package/esm/funcs/agentTestsGetRun.js.map +1 -1
- package/esm/funcs/agentTestsGetRunCase.d.ts +16 -0
- package/esm/funcs/agentTestsGetRunCase.d.ts.map +1 -0
- package/esm/funcs/agentTestsGetRunCase.js +100 -0
- package/esm/funcs/agentTestsGetRunCase.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 +3 -1
- package/esm/mcp-server/server.js.map +1 -1
- package/esm/mcp-server/tools/agentTestsGetRunCase.d.ts +7 -0
- package/esm/mcp-server/tools/agentTestsGetRunCase.d.ts.map +1 -0
- package/esm/mcp-server/tools/agentTestsGetRunCase.js +38 -0
- package/esm/mcp-server/tools/agentTestsGetRunCase.js.map +1 -0
- package/esm/models/getagenttestcaseresultagenttestsruntaskidresultstestuuidgetop.d.ts +13 -0
- package/esm/models/getagenttestcaseresultagenttestsruntaskidresultstestuuidgetop.d.ts.map +1 -0
- package/esm/models/getagenttestcaseresultagenttestsruntaskidresultstestuuidgetop.js +17 -0
- package/esm/models/getagenttestcaseresultagenttestsruntaskidresultstestuuidgetop.js.map +1 -0
- package/esm/models/getagenttestrunstatusagenttestsruntaskidgetop.d.ts +17 -0
- package/esm/models/getagenttestrunstatusagenttestsruntaskidgetop.d.ts.map +1 -1
- package/esm/models/getagenttestrunstatusagenttestsruntaskidgetop.js +12 -0
- package/esm/models/getagenttestrunstatusagenttestsruntaskidgetop.js.map +1 -1
- package/esm/models/getbenchmarkstatusagenttestsbenchmarktaskidgetop.d.ts +17 -0
- package/esm/models/getbenchmarkstatusagenttestsbenchmarktaskidgetop.d.ts.map +1 -1
- package/esm/models/getbenchmarkstatusagenttestsbenchmarktaskidgetop.js +13 -0
- package/esm/models/getbenchmarkstatusagenttestsbenchmarktaskidgetop.js.map +1 -1
- package/esm/models/testcaseresult.d.ts +16 -0
- package/esm/models/testcaseresult.d.ts.map +1 -1
- package/esm/models/testcaseresult.js +14 -0
- package/esm/models/testcaseresult.js.map +1 -1
- package/esm/models/testrunstatusresponse.d.ts +3 -0
- package/esm/models/testrunstatusresponse.d.ts.map +1 -1
- package/esm/models/testrunstatusresponse.js +2 -0
- package/esm/models/testrunstatusresponse.js.map +1 -1
- package/esm/tool-names.d.ts.map +1 -1
- package/esm/tool-names.js +4 -0
- package/esm/tool-names.js.map +1 -1
- package/package.json +1 -1
- package/src/funcs/agentTestsGetBenchmark.ts +1 -0
- package/src/funcs/agentTestsGetRun.ts +1 -0
- package/src/funcs/agentTestsGetRunCase.ts +167 -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 +3 -1
- package/src/mcp-server/tools/agentTestsGetRunCase.ts +47 -0
- package/src/models/getagenttestcaseresultagenttestsruntaskidresultstestuuidgetop.ts +44 -0
- package/src/models/getagenttestrunstatusagenttestsruntaskidgetop.ts +30 -0
- package/src/models/getbenchmarkstatusagenttestsbenchmarktaskidgetop.ts +29 -0
- package/src/models/testcaseresult.ts +24 -0
- package/src/models/testrunstatusresponse.ts +5 -0
- package/src/tool-names.ts +4 -0
|
@@ -20,6 +20,9 @@ export type TestRunStatusResponse = {
|
|
|
20
20
|
[k: string]: any;
|
|
21
21
|
} | null | undefined;
|
|
22
22
|
evaluators?: Array<TestRunEvaluator> | null | undefined;
|
|
23
|
+
evaluator_summary?: Array<{
|
|
24
|
+
[k: string]: any;
|
|
25
|
+
}> | null | undefined;
|
|
23
26
|
results?: Array<TestCaseResult> | null | undefined;
|
|
24
27
|
unanswered_tests?: number | null | undefined;
|
|
25
28
|
stopped_early?: boolean | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testrunstatusresponse.d.ts","sourceRoot":"","sources":["../../src/models/testrunstatusresponse.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AACzB,OAAO,EAAE,UAAU,EAAwB,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,cAAc,EAA4B,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EACL,gBAAgB,EAEjB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9C,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACxC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACnC,UAAU,CAAC,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,IAAI,GAAG,SAAS,CAAC;IACrD,IAAI,CAAC,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/C,YAAY,CAAC,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,IAAI,GAAG,SAAS,CAAC;IACvD,UAAU,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IACxD,OAAO,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IACnD,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC7C,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACpC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CACzC,CAAC;AAEF,eAAO,MAAM,+BAA+B,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,
|
|
1
|
+
{"version":3,"file":"testrunstatusresponse.d.ts","sourceRoot":"","sources":["../../src/models/testrunstatusresponse.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AACzB,OAAO,EAAE,UAAU,EAAwB,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,cAAc,EAA4B,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EACL,gBAAgB,EAEjB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9C,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACxC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACnC,UAAU,CAAC,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,IAAI,GAAG,SAAS,CAAC;IACrD,IAAI,CAAC,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/C,YAAY,CAAC,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,IAAI,GAAG,SAAS,CAAC;IACvD,UAAU,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IACxD,iBAAiB,CAAC,EAAE,KAAK,CAAC;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IACnE,OAAO,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IACnD,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC7C,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACpC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CACzC,CAAC;AAEF,eAAO,MAAM,+BAA+B,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAuDzE,CAAC"}
|
|
@@ -9,6 +9,8 @@ export const TestRunStatusResponse$zodSchema = z.object({
|
|
|
9
9
|
aborted: z.boolean().default(false).describe("Whether a user stopped this run before it finished. The results collected up to that point are kept, and test cases that never ran are counted neither as passed nor as failed"),
|
|
10
10
|
cost: z.record(z.string(), z.any()).nullable().optional().describe("Aggregated cost as `{mean, min, max, count}` (USD)"),
|
|
11
11
|
error: z.boolean().default(false).describe("True if the run failed"),
|
|
12
|
+
evaluator_summary: z.array(z.record(z.string(), z.any())).nullable()
|
|
13
|
+
.optional().describe("Totals for each evaluator over the whole run, matching the shape a benchmark reports for each model. Only evaluators that returned a verdict appear"),
|
|
12
14
|
evaluators: z.array(TestRunEvaluator$zodSchema).nullable().optional()
|
|
13
15
|
.describe("The evaluators used in this run. Each verdict in `judge_results` links to one of these by `evaluator_uuid`"),
|
|
14
16
|
failed: z.int().nullable().optional().describe("Number of test cases that failed"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testrunstatusresponse.js","sourceRoot":"","sources":["../../src/models/testrunstatusresponse.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AACzB,OAAO,EAAc,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAkB,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAEL,0BAA0B,GAC3B,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"testrunstatusresponse.js","sourceRoot":"","sources":["../../src/models/testrunstatusresponse.ts"],"names":[],"mappings":"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"}
|
package/esm/tool-names.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-names.d.ts","sourceRoot":"","sources":["../src/tool-names.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"tool-names.d.ts","sourceRoot":"","sources":["../src/tool-names.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAyKlE,CAAC"}
|
package/esm/tool-names.js
CHANGED
|
@@ -80,6 +80,10 @@ export const toolNames = [
|
|
|
80
80
|
"name": "get-agent-test-run",
|
|
81
81
|
"description": "Poll the status and results of an agent test run by task_id. Returns\nqueued, in_progress, completed, failed, or aborted status. When\ncompleted, includes per-test-case pass/fail results and evaluator\njudgments. Use the task_id from run-agent-tests or\nrun-agent-tests-batch.\n"
|
|
82
82
|
},
|
|
83
|
+
{
|
|
84
|
+
"name": "get-agent-test-case-result",
|
|
85
|
+
"description": "Fetch the full result of one test case in a run, including the\nconversation, the agent's output and each evaluator's reasoning. Pass\nthe model query param for a benchmark, which runs every test once per\nmodel. Use with mode=summary on get-agent-test-run, which returns\nlight rows without this detail.\n"
|
|
86
|
+
},
|
|
83
87
|
{
|
|
84
88
|
"name": "run-agent-benchmark",
|
|
85
89
|
"description": "Start a multi-model benchmark over an agent's linked tests as a background job. Optionally restrict to a subset of linked tests. Returns a task_id to poll with get-agent-benchmark.\n"
|
package/esm/tool-names.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-names.js","sourceRoot":"","sources":["../src/tool-names.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tool-names.js","sourceRoot":"","sources":["../src/tool-names.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { CalibrateMcpCore } from "../core.js";
|
|
6
|
+
import { encodeFormQuery, encodeSimple } from "../lib/encodings.js";
|
|
7
|
+
import { compactMap } from "../lib/primitives.js";
|
|
8
|
+
import { safeParse } from "../lib/schemas.js";
|
|
9
|
+
import { RequestOptions } from "../lib/sdks.js";
|
|
10
|
+
import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
|
|
11
|
+
import { pathToFunc } from "../lib/url.js";
|
|
12
|
+
import { APIError } from "../models/errors/apierror.js";
|
|
13
|
+
import {
|
|
14
|
+
ConnectionError,
|
|
15
|
+
InvalidRequestError,
|
|
16
|
+
RequestAbortedError,
|
|
17
|
+
RequestTimeoutError,
|
|
18
|
+
UnexpectedClientError,
|
|
19
|
+
} from "../models/errors/httpclienterrors.js";
|
|
20
|
+
import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
|
|
21
|
+
import {
|
|
22
|
+
GetAgentTestCaseResultAgentTestsRunTaskIdResultsTestUuidGetRequest,
|
|
23
|
+
GetAgentTestCaseResultAgentTestsRunTaskIdResultsTestUuidGetRequest$zodSchema,
|
|
24
|
+
} from "../models/getagenttestcaseresultagenttestsruntaskidresultstestuuidgetop.js";
|
|
25
|
+
import { APICall, APIPromise } from "../types/async.js";
|
|
26
|
+
import { Result } from "../types/fp.js";
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Get test case result
|
|
30
|
+
*
|
|
31
|
+
* @remarks
|
|
32
|
+
* Get the full result of one test case in a run
|
|
33
|
+
*/
|
|
34
|
+
export function agentTestsGetRunCase(
|
|
35
|
+
client$: CalibrateMcpCore,
|
|
36
|
+
request: GetAgentTestCaseResultAgentTestsRunTaskIdResultsTestUuidGetRequest,
|
|
37
|
+
options?: RequestOptions,
|
|
38
|
+
): APIPromise<
|
|
39
|
+
Result<
|
|
40
|
+
Response,
|
|
41
|
+
| APIError
|
|
42
|
+
| SDKValidationError
|
|
43
|
+
| UnexpectedClientError
|
|
44
|
+
| InvalidRequestError
|
|
45
|
+
| RequestAbortedError
|
|
46
|
+
| RequestTimeoutError
|
|
47
|
+
| ConnectionError
|
|
48
|
+
>
|
|
49
|
+
> {
|
|
50
|
+
return new APIPromise($do(
|
|
51
|
+
client$,
|
|
52
|
+
request,
|
|
53
|
+
options,
|
|
54
|
+
));
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
async function $do(
|
|
58
|
+
client$: CalibrateMcpCore,
|
|
59
|
+
request: GetAgentTestCaseResultAgentTestsRunTaskIdResultsTestUuidGetRequest,
|
|
60
|
+
options?: RequestOptions,
|
|
61
|
+
): Promise<
|
|
62
|
+
[
|
|
63
|
+
Result<
|
|
64
|
+
Response,
|
|
65
|
+
| APIError
|
|
66
|
+
| SDKValidationError
|
|
67
|
+
| UnexpectedClientError
|
|
68
|
+
| InvalidRequestError
|
|
69
|
+
| RequestAbortedError
|
|
70
|
+
| RequestTimeoutError
|
|
71
|
+
| ConnectionError
|
|
72
|
+
>,
|
|
73
|
+
APICall,
|
|
74
|
+
]
|
|
75
|
+
> {
|
|
76
|
+
const parsed$ = safeParse(
|
|
77
|
+
request,
|
|
78
|
+
(value$) =>
|
|
79
|
+
GetAgentTestCaseResultAgentTestsRunTaskIdResultsTestUuidGetRequest$zodSchema
|
|
80
|
+
.parse(value$),
|
|
81
|
+
"Input validation failed",
|
|
82
|
+
);
|
|
83
|
+
if (!parsed$.ok) {
|
|
84
|
+
return [parsed$, { status: "invalid" }];
|
|
85
|
+
}
|
|
86
|
+
const payload$ = parsed$.value;
|
|
87
|
+
const body$ = null;
|
|
88
|
+
|
|
89
|
+
const pathParams$ = {
|
|
90
|
+
task_id: encodeSimple("task_id", payload$.task_id, {
|
|
91
|
+
explode: false,
|
|
92
|
+
charEncoding: "percent",
|
|
93
|
+
}),
|
|
94
|
+
test_uuid: encodeSimple("test_uuid", payload$.test_uuid, {
|
|
95
|
+
explode: false,
|
|
96
|
+
charEncoding: "percent",
|
|
97
|
+
}),
|
|
98
|
+
};
|
|
99
|
+
const path$ = pathToFunc("/agent-tests/run/{task_id}/results/{test_uuid}")(
|
|
100
|
+
pathParams$,
|
|
101
|
+
);
|
|
102
|
+
const query$ = encodeFormQuery({
|
|
103
|
+
"model": payload$.model,
|
|
104
|
+
});
|
|
105
|
+
|
|
106
|
+
const headers$ = new Headers(compactMap({
|
|
107
|
+
Accept: "application/json",
|
|
108
|
+
"X-API-Key": encodeSimple("X-API-Key", payload$.xAPIKey, {
|
|
109
|
+
explode: false,
|
|
110
|
+
charEncoding: "none",
|
|
111
|
+
}),
|
|
112
|
+
}));
|
|
113
|
+
const securityInput = await extractSecurity(client$._options.security);
|
|
114
|
+
const requestSecurity = resolveGlobalSecurity(securityInput);
|
|
115
|
+
|
|
116
|
+
const context = {
|
|
117
|
+
options: client$._options,
|
|
118
|
+
baseURL: options?.serverURL ?? client$._baseURL ?? "",
|
|
119
|
+
operationID:
|
|
120
|
+
"get_agent_test_case_result_agent_tests_run__task_id__results__test_uuid__get",
|
|
121
|
+
oAuth2Scopes: null,
|
|
122
|
+
resolvedSecurity: requestSecurity,
|
|
123
|
+
securitySource: client$._options.security,
|
|
124
|
+
retryConfig: options?.retries
|
|
125
|
+
|| client$._options.retryConfig
|
|
126
|
+
|| { strategy: "none" },
|
|
127
|
+
retryCodes: options?.retryCodes || [
|
|
128
|
+
"429",
|
|
129
|
+
"500",
|
|
130
|
+
"502",
|
|
131
|
+
"503",
|
|
132
|
+
"504",
|
|
133
|
+
],
|
|
134
|
+
};
|
|
135
|
+
|
|
136
|
+
const requestRes = client$._createRequest(context, {
|
|
137
|
+
security: requestSecurity,
|
|
138
|
+
method: "GET",
|
|
139
|
+
baseURL: options?.serverURL,
|
|
140
|
+
path: path$,
|
|
141
|
+
headers: headers$,
|
|
142
|
+
query: query$,
|
|
143
|
+
body: body$,
|
|
144
|
+
userAgent: client$._options.userAgent,
|
|
145
|
+
timeoutMs: options?.timeoutMs || client$._options.timeoutMs
|
|
146
|
+
|| -1,
|
|
147
|
+
}, options);
|
|
148
|
+
if (!requestRes.ok) {
|
|
149
|
+
return [requestRes, { status: "invalid" }];
|
|
150
|
+
}
|
|
151
|
+
const req$ = requestRes.value;
|
|
152
|
+
|
|
153
|
+
const doResult = await client$._do(req$, {
|
|
154
|
+
context,
|
|
155
|
+
errorCodes: [],
|
|
156
|
+
retryConfig: context.retryConfig,
|
|
157
|
+
retryCodes: context.retryCodes,
|
|
158
|
+
});
|
|
159
|
+
if (!doResult.ok) {
|
|
160
|
+
return [doResult, { status: "request-error", request: req$ }];
|
|
161
|
+
}
|
|
162
|
+
return [doResult, {
|
|
163
|
+
status: "complete",
|
|
164
|
+
"request": req$,
|
|
165
|
+
response: doResult.value,
|
|
166
|
+
}];
|
|
167
|
+
}
|
package/src/landing-page.ts
CHANGED
|
@@ -930,7 +930,7 @@ http_headers = { "api-key-auth" = "YOUR_API_KEY_AUTH" }`;
|
|
|
930
930
|
<h1>Instructions</h1>
|
|
931
931
|
<p>One-click installation for Claude Desktop users</p>
|
|
932
932
|
<div class="instruction-item">
|
|
933
|
-
<a href="https://github.com/dalmia/calibrate-mcp/releases/download/v0.0.
|
|
933
|
+
<a href="https://github.com/dalmia/calibrate-mcp/releases/download/v0.0.55/mcp-server.mcpb" download="mcp-server.mcpb" class="action-button header-action" style="display: inline-flex; margin-bottom: 16px;">
|
|
934
934
|
📥 Download MCP Bundle
|
|
935
935
|
</a>
|
|
936
936
|
</div>
|
package/src/lib/config.ts
CHANGED
|
@@ -65,8 +65,8 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
|
|
|
65
65
|
export const SDK_METADATA = {
|
|
66
66
|
language: "typescript",
|
|
67
67
|
openapiDocVersion: "0.1.0",
|
|
68
|
-
sdkVersion: "0.0.
|
|
68
|
+
sdkVersion: "0.0.55",
|
|
69
69
|
genVersion: "2.915.1",
|
|
70
70
|
userAgent:
|
|
71
|
-
"speakeasy-sdk/mcp-typescript 0.0.
|
|
71
|
+
"speakeasy-sdk/mcp-typescript 0.0.55 2.915.1 0.1.0 @dalmia/calibrate-mcp",
|
|
72
72
|
} as const;
|
package/src/mcp-server/server.ts
CHANGED
|
@@ -29,6 +29,7 @@ import { tool$agentTestsBenchmark } from "./tools/agentTestsBenchmark.js";
|
|
|
29
29
|
import { tool$agentTestsBulkUnlink } from "./tools/agentTestsBulkUnlink.js";
|
|
30
30
|
import { tool$agentTestsGetBenchmark } from "./tools/agentTestsGetBenchmark.js";
|
|
31
31
|
import { tool$agentTestsGetRun } from "./tools/agentTestsGetRun.js";
|
|
32
|
+
import { tool$agentTestsGetRunCase } from "./tools/agentTestsGetRunCase.js";
|
|
32
33
|
import { tool$agentTestsLink } from "./tools/agentTestsLink.js";
|
|
33
34
|
import { tool$agentTestsListForAgent } from "./tools/agentTestsListForAgent.js";
|
|
34
35
|
import { tool$agentTestsListRunsForAgent } from "./tools/agentTestsListRunsForAgent.js";
|
|
@@ -72,7 +73,7 @@ export function createMCPServer(deps: {
|
|
|
72
73
|
}) {
|
|
73
74
|
const server = new McpServer({
|
|
74
75
|
name: "CalibrateMcp",
|
|
75
|
-
version: "0.0.
|
|
76
|
+
version: "0.0.55",
|
|
76
77
|
});
|
|
77
78
|
|
|
78
79
|
const getClient = deps.getSDK || (() =>
|
|
@@ -137,6 +138,7 @@ export function createMCPServer(deps: {
|
|
|
137
138
|
tool(tool$agentTestsRun);
|
|
138
139
|
tool(tool$agentTestsRunBatch);
|
|
139
140
|
tool(tool$agentTestsGetRun);
|
|
141
|
+
tool(tool$agentTestsGetRunCase);
|
|
140
142
|
tool(tool$agentTestsBenchmark);
|
|
141
143
|
tool(tool$agentTestsGetBenchmark);
|
|
142
144
|
tool(tool$evaluatorsCreate);
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { agentTestsGetRunCase } from "../../funcs/agentTestsGetRunCase.js";
|
|
6
|
+
import { GetAgentTestCaseResultAgentTestsRunTaskIdResultsTestUuidGetRequest$zodSchema } from "../../models/getagenttestcaseresultagenttestsruntaskidresultstestuuidgetop.js";
|
|
7
|
+
import { formatResult, ToolDefinition } from "../tools.js";
|
|
8
|
+
|
|
9
|
+
const args = {
|
|
10
|
+
request:
|
|
11
|
+
GetAgentTestCaseResultAgentTestsRunTaskIdResultsTestUuidGetRequest$zodSchema,
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export const tool$agentTestsGetRunCase: ToolDefinition<typeof args> = {
|
|
15
|
+
name: "get-agent-test-case-result",
|
|
16
|
+
description: `Fetch the full result of one test case in a run, including the
|
|
17
|
+
conversation, the agent's output and each evaluator's reasoning. Pass
|
|
18
|
+
the model query param for a benchmark, which runs every test once per
|
|
19
|
+
model. Use with mode=summary on get-agent-test-run, which returns
|
|
20
|
+
light rows without this detail.
|
|
21
|
+
`,
|
|
22
|
+
scopes: ["read"],
|
|
23
|
+
annotations: {
|
|
24
|
+
"title": "Get agent test case result",
|
|
25
|
+
"destructiveHint": false,
|
|
26
|
+
"idempotentHint": false,
|
|
27
|
+
"openWorldHint": true,
|
|
28
|
+
"readOnlyHint": true,
|
|
29
|
+
},
|
|
30
|
+
args,
|
|
31
|
+
tool: async (client, args, ctx) => {
|
|
32
|
+
const [result] = await agentTestsGetRunCase(
|
|
33
|
+
client,
|
|
34
|
+
args.request,
|
|
35
|
+
{ fetchOptions: { signal: ctx.signal } },
|
|
36
|
+
).$inspect();
|
|
37
|
+
|
|
38
|
+
if (!result.ok) {
|
|
39
|
+
return {
|
|
40
|
+
content: [{ type: "text", text: result.error.message }],
|
|
41
|
+
isError: true,
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
return formatResult(result.value);
|
|
46
|
+
},
|
|
47
|
+
};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as z from "zod";
|
|
6
|
+
import {
|
|
7
|
+
HTTPValidationError,
|
|
8
|
+
HTTPValidationError$zodSchema,
|
|
9
|
+
} from "./httpvalidationerror.js";
|
|
10
|
+
import { TestCaseResult, TestCaseResult$zodSchema } from "./testcaseresult.js";
|
|
11
|
+
|
|
12
|
+
export type GetAgentTestCaseResultAgentTestsRunTaskIdResultsTestUuidGetRequest =
|
|
13
|
+
{
|
|
14
|
+
task_id: string;
|
|
15
|
+
test_uuid: string;
|
|
16
|
+
model?: string | null | undefined;
|
|
17
|
+
xAPIKey?: string | null | undefined;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export const GetAgentTestCaseResultAgentTestsRunTaskIdResultsTestUuidGetRequest$zodSchema:
|
|
21
|
+
z.ZodType<
|
|
22
|
+
GetAgentTestCaseResultAgentTestsRunTaskIdResultsTestUuidGetRequest
|
|
23
|
+
> = z.object({
|
|
24
|
+
model: z.string().describe(
|
|
25
|
+
"Which model's answer to read. Required for a benchmark, which runs every test once per model",
|
|
26
|
+
).nullable().optional(),
|
|
27
|
+
task_id: z.string().describe("Test run or benchmark the case was run in"),
|
|
28
|
+
test_uuid: z.string().describe(
|
|
29
|
+
"The test whose result to read, as `test_uuid` on the case",
|
|
30
|
+
),
|
|
31
|
+
xAPIKey: z.string().nullable().optional(),
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
export type GetAgentTestCaseResultAgentTestsRunTaskIdResultsTestUuidGetResponse =
|
|
35
|
+
| TestCaseResult
|
|
36
|
+
| HTTPValidationError;
|
|
37
|
+
|
|
38
|
+
export const GetAgentTestCaseResultAgentTestsRunTaskIdResultsTestUuidGetResponse$zodSchema:
|
|
39
|
+
z.ZodType<
|
|
40
|
+
GetAgentTestCaseResultAgentTestsRunTaskIdResultsTestUuidGetResponse
|
|
41
|
+
> = z.union([
|
|
42
|
+
TestCaseResult$zodSchema,
|
|
43
|
+
HTTPValidationError$zodSchema,
|
|
44
|
+
]);
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
import * as z from "zod";
|
|
6
|
+
import { ClosedEnum } from "../types/enums.js";
|
|
6
7
|
import {
|
|
7
8
|
HTTPValidationError,
|
|
8
9
|
HTTPValidationError$zodSchema,
|
|
@@ -12,9 +13,33 @@ import {
|
|
|
12
13
|
TestRunStatusResponse$zodSchema,
|
|
13
14
|
} from "./testrunstatusresponse.js";
|
|
14
15
|
|
|
16
|
+
/**
|
|
17
|
+
* How much of each test case to return. `full` returns every field of every case. `summary` returns one light row per case, with its ID, name, verdict and short reason, leaving out the conversation, the agent's output and the evaluator verdicts. Read those one case at a time from `GET /agent-tests/run/{task_id}/results/{test_uuid}`
|
|
18
|
+
*/
|
|
19
|
+
export const GetAgentTestRunStatusAgentTestsRunTaskIdGetMode = {
|
|
20
|
+
Full: "full",
|
|
21
|
+
Summary: "summary",
|
|
22
|
+
} as const;
|
|
23
|
+
/**
|
|
24
|
+
* How much of each test case to return. `full` returns every field of every case. `summary` returns one light row per case, with its ID, name, verdict and short reason, leaving out the conversation, the agent's output and the evaluator verdicts. Read those one case at a time from `GET /agent-tests/run/{task_id}/results/{test_uuid}`
|
|
25
|
+
*/
|
|
26
|
+
export type GetAgentTestRunStatusAgentTestsRunTaskIdGetMode = ClosedEnum<
|
|
27
|
+
typeof GetAgentTestRunStatusAgentTestsRunTaskIdGetMode
|
|
28
|
+
>;
|
|
29
|
+
|
|
30
|
+
export const GetAgentTestRunStatusAgentTestsRunTaskIdGetMode$zodSchema = z.enum(
|
|
31
|
+
[
|
|
32
|
+
"full",
|
|
33
|
+
"summary",
|
|
34
|
+
],
|
|
35
|
+
).describe(
|
|
36
|
+
"How much of each test case to return. `full` returns every field of every case. `summary` returns one light row per case, with its ID, name, verdict and short reason, leaving out the conversation, the agent's output and the evaluator verdicts. Read those one case at a time from `GET /agent-tests/run/{task_id}/results/{test_uuid}`",
|
|
37
|
+
);
|
|
38
|
+
|
|
15
39
|
export type GetAgentTestRunStatusAgentTestsRunTaskIdGetRequest = {
|
|
16
40
|
task_id: string;
|
|
17
41
|
only_failed?: boolean | undefined;
|
|
42
|
+
mode?: GetAgentTestRunStatusAgentTestsRunTaskIdGetMode | undefined;
|
|
18
43
|
compact?: boolean | undefined;
|
|
19
44
|
xAPIKey?: string | null | undefined;
|
|
20
45
|
};
|
|
@@ -24,6 +49,11 @@ export const GetAgentTestRunStatusAgentTestsRunTaskIdGetRequest$zodSchema:
|
|
|
24
49
|
compact: z.boolean().default(false).describe(
|
|
25
50
|
"Return a compact response that omits heavy detail fields (`results.output`, `results.test_case`, `results.judge_results`, `results.reasoning`, `evaluators.output_config`), keeping only the lightweight decision fields. Omit for full detail",
|
|
26
51
|
),
|
|
52
|
+
mode: GetAgentTestRunStatusAgentTestsRunTaskIdGetMode$zodSchema.default(
|
|
53
|
+
"full",
|
|
54
|
+
).describe(
|
|
55
|
+
"How much of each test case to return. `full` returns every field of every case. `summary` returns one light row per case, with its ID, name, verdict and short reason, leaving out the conversation, the agent's output and the evaluator verdicts. Read those one case at a time from `GET /agent-tests/run/{task_id}/results/{test_uuid}`",
|
|
56
|
+
),
|
|
27
57
|
only_failed: z.boolean().default(false).describe(
|
|
28
58
|
"Return only failing test cases. Omit to return every case",
|
|
29
59
|
),
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
import * as z from "zod";
|
|
6
|
+
import { ClosedEnum } from "../types/enums.js";
|
|
6
7
|
import {
|
|
7
8
|
BenchmarkStatusResponse,
|
|
8
9
|
BenchmarkStatusResponse$zodSchema,
|
|
@@ -12,9 +13,32 @@ import {
|
|
|
12
13
|
HTTPValidationError$zodSchema,
|
|
13
14
|
} from "./httpvalidationerror.js";
|
|
14
15
|
|
|
16
|
+
/**
|
|
17
|
+
* How much of each test case to return. `full` returns every field of every case. `summary` returns one light row per case, with its ID, name, verdict and short reason, leaving out the conversation, the agent's output and the evaluator verdicts. Read those one case at a time from `GET /agent-tests/run/{task_id}/results/{test_uuid}`
|
|
18
|
+
*/
|
|
19
|
+
export const GetBenchmarkStatusAgentTestsBenchmarkTaskIdGetMode = {
|
|
20
|
+
Full: "full",
|
|
21
|
+
Summary: "summary",
|
|
22
|
+
} as const;
|
|
23
|
+
/**
|
|
24
|
+
* How much of each test case to return. `full` returns every field of every case. `summary` returns one light row per case, with its ID, name, verdict and short reason, leaving out the conversation, the agent's output and the evaluator verdicts. Read those one case at a time from `GET /agent-tests/run/{task_id}/results/{test_uuid}`
|
|
25
|
+
*/
|
|
26
|
+
export type GetBenchmarkStatusAgentTestsBenchmarkTaskIdGetMode = ClosedEnum<
|
|
27
|
+
typeof GetBenchmarkStatusAgentTestsBenchmarkTaskIdGetMode
|
|
28
|
+
>;
|
|
29
|
+
|
|
30
|
+
export const GetBenchmarkStatusAgentTestsBenchmarkTaskIdGetMode$zodSchema = z
|
|
31
|
+
.enum([
|
|
32
|
+
"full",
|
|
33
|
+
"summary",
|
|
34
|
+
]).describe(
|
|
35
|
+
"How much of each test case to return. `full` returns every field of every case. `summary` returns one light row per case, with its ID, name, verdict and short reason, leaving out the conversation, the agent's output and the evaluator verdicts. Read those one case at a time from `GET /agent-tests/run/{task_id}/results/{test_uuid}`",
|
|
36
|
+
);
|
|
37
|
+
|
|
15
38
|
export type GetBenchmarkStatusAgentTestsBenchmarkTaskIdGetRequest = {
|
|
16
39
|
task_id: string;
|
|
17
40
|
only_failed?: boolean | undefined;
|
|
41
|
+
mode?: GetBenchmarkStatusAgentTestsBenchmarkTaskIdGetMode | undefined;
|
|
18
42
|
compact?: boolean | undefined;
|
|
19
43
|
xAPIKey?: string | null | undefined;
|
|
20
44
|
};
|
|
@@ -24,6 +48,11 @@ export const GetBenchmarkStatusAgentTestsBenchmarkTaskIdGetRequest$zodSchema:
|
|
|
24
48
|
compact: z.boolean().default(false).describe(
|
|
25
49
|
"Return a compact response that omits heavy detail fields (`model_results.test_results`, `evaluators.output_config`), keeping only the lightweight decision fields. Omit for full detail",
|
|
26
50
|
),
|
|
51
|
+
mode: GetBenchmarkStatusAgentTestsBenchmarkTaskIdGetMode$zodSchema.default(
|
|
52
|
+
"full",
|
|
53
|
+
).describe(
|
|
54
|
+
"How much of each test case to return. `full` returns every field of every case. `summary` returns one light row per case, with its ID, name, verdict and short reason, leaving out the conversation, the agent's output and the evaluator verdicts. Read those one case at a time from `GET /agent-tests/run/{task_id}/results/{test_uuid}`",
|
|
55
|
+
),
|
|
27
56
|
only_failed: z.boolean().default(false).describe(
|
|
28
57
|
"Return only failing test cases for each model. Omit to return every case",
|
|
29
58
|
),
|
|
@@ -3,12 +3,30 @@
|
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
import * as z from "zod";
|
|
6
|
+
import { ClosedEnum } from "../types/enums.js";
|
|
6
7
|
import { JudgeResult, JudgeResult$zodSchema } from "./judgeresult.js";
|
|
7
8
|
import { TestOutput, TestOutput$zodSchema } from "./testoutput.js";
|
|
8
9
|
|
|
10
|
+
export const TestType = {
|
|
11
|
+
Response: "response",
|
|
12
|
+
ToolCall: "tool_call",
|
|
13
|
+
Conversation: "conversation",
|
|
14
|
+
General: "general",
|
|
15
|
+
} as const;
|
|
16
|
+
export type TestType = ClosedEnum<typeof TestType>;
|
|
17
|
+
|
|
18
|
+
export const TestType$zodSchema = z.enum([
|
|
19
|
+
"response",
|
|
20
|
+
"tool_call",
|
|
21
|
+
"conversation",
|
|
22
|
+
"general",
|
|
23
|
+
]);
|
|
24
|
+
|
|
9
25
|
export type TestCaseResult = {
|
|
10
26
|
test_case_id?: string | null | undefined;
|
|
11
27
|
name?: string | null | undefined;
|
|
28
|
+
test_uuid?: string | null | undefined;
|
|
29
|
+
test_type?: TestType | null | undefined;
|
|
12
30
|
passed?: boolean | null | undefined;
|
|
13
31
|
reasoning?: string | null | undefined;
|
|
14
32
|
output?: TestOutput | null | undefined;
|
|
@@ -49,6 +67,12 @@ export const TestCaseResult$zodSchema: z.ZodType<TestCaseResult> = z.object({
|
|
|
49
67
|
test_case_id: z.string().nullable().optional().describe(
|
|
50
68
|
"ID of the test case within the run",
|
|
51
69
|
),
|
|
70
|
+
test_type: TestType$zodSchema.nullable().optional().describe(
|
|
71
|
+
"What the test asks of the agent, which decides how a reader draws the case",
|
|
72
|
+
),
|
|
73
|
+
test_uuid: z.string().nullable().optional().describe(
|
|
74
|
+
"ID of the test this case ran, which is what you pass to read the case on its own",
|
|
75
|
+
),
|
|
52
76
|
unanswered: z.boolean().default(false).describe(
|
|
53
77
|
"Whether this case produced no answer because the agent or the judge could not be reached, in which case `reasoning` carries the error and `passed` is not a verdict on the agent",
|
|
54
78
|
),
|
|
@@ -22,6 +22,7 @@ export type TestRunStatusResponse = {
|
|
|
22
22
|
cost?: { [k: string]: any } | null | undefined;
|
|
23
23
|
total_tokens?: { [k: string]: any } | null | undefined;
|
|
24
24
|
evaluators?: Array<TestRunEvaluator> | null | undefined;
|
|
25
|
+
evaluator_summary?: Array<{ [k: string]: any }> | null | undefined;
|
|
25
26
|
results?: Array<TestCaseResult> | null | undefined;
|
|
26
27
|
unanswered_tests?: number | null | undefined;
|
|
27
28
|
stopped_early?: boolean | undefined;
|
|
@@ -40,6 +41,10 @@ export const TestRunStatusResponse$zodSchema: z.ZodType<TestRunStatusResponse> =
|
|
|
40
41
|
"Aggregated cost as `{mean, min, max, count}` (USD)",
|
|
41
42
|
),
|
|
42
43
|
error: z.boolean().default(false).describe("True if the run failed"),
|
|
44
|
+
evaluator_summary: z.array(z.record(z.string(), z.any())).nullable()
|
|
45
|
+
.optional().describe(
|
|
46
|
+
"Totals for each evaluator over the whole run, matching the shape a benchmark reports for each model. Only evaluators that returned a verdict appear",
|
|
47
|
+
),
|
|
43
48
|
evaluators: z.array(TestRunEvaluator$zodSchema).nullable().optional()
|
|
44
49
|
.describe(
|
|
45
50
|
"The evaluators used in this run. Each verdict in `judge_results` links to one of these by `evaluator_uuid`",
|
package/src/tool-names.ts
CHANGED
|
@@ -80,6 +80,10 @@ export const toolNames: Array<{ name: string; description: string }>= [
|
|
|
80
80
|
"name": "get-agent-test-run",
|
|
81
81
|
"description": "Poll the status and results of an agent test run by task_id. Returns\nqueued, in_progress, completed, failed, or aborted status. When\ncompleted, includes per-test-case pass/fail results and evaluator\njudgments. Use the task_id from run-agent-tests or\nrun-agent-tests-batch.\n"
|
|
82
82
|
},
|
|
83
|
+
{
|
|
84
|
+
"name": "get-agent-test-case-result",
|
|
85
|
+
"description": "Fetch the full result of one test case in a run, including the\nconversation, the agent's output and each evaluator's reasoning. Pass\nthe model query param for a benchmark, which runs every test once per\nmodel. Use with mode=summary on get-agent-test-run, which returns\nlight rows without this detail.\n"
|
|
86
|
+
},
|
|
83
87
|
{
|
|
84
88
|
"name": "run-agent-benchmark",
|
|
85
89
|
"description": "Start a multi-model benchmark over an agent's linked tests as a background job. Optionally restrict to a subset of linked tests. Returns a task_id to poll with get-agent-benchmark.\n"
|