@dalmia/calibrate-mcp 0.0.78 → 0.0.81
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 +760 -65
- package/bin/mcp-server.js.map +25 -8
- package/esm/funcs/datasetsCreate.d.ts +16 -0
- package/esm/funcs/datasetsCreate.d.ts.map +1 -0
- package/esm/funcs/datasetsCreate.js +86 -0
- package/esm/funcs/datasetsCreate.js.map +1 -0
- package/esm/funcs/datasetsGet.d.ts +16 -0
- package/esm/funcs/datasetsGet.d.ts.map +1 -0
- package/esm/funcs/datasetsGet.js +91 -0
- package/esm/funcs/datasetsGet.js.map +1 -0
- package/esm/funcs/datasetsUploadItem.d.ts +16 -0
- package/esm/funcs/datasetsUploadItem.d.ts.map +1 -0
- package/esm/funcs/datasetsUploadItem.js +112 -0
- package/esm/funcs/datasetsUploadItem.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 +7 -1
- package/esm/mcp-server/server.js.map +1 -1
- package/esm/mcp-server/tools/datasetsCreate.d.ts +7 -0
- package/esm/mcp-server/tools/datasetsCreate.d.ts.map +1 -0
- package/esm/mcp-server/tools/datasetsCreate.js +35 -0
- package/esm/mcp-server/tools/datasetsCreate.js.map +1 -0
- package/esm/mcp-server/tools/datasetsGet.d.ts +7 -0
- package/esm/mcp-server/tools/datasetsGet.d.ts.map +1 -0
- package/esm/mcp-server/tools/datasetsGet.js +35 -0
- package/esm/mcp-server/tools/datasetsGet.js.map +1 -0
- package/esm/mcp-server/tools/datasetsUploadItem.d.ts +7 -0
- package/esm/mcp-server/tools/datasetsUploadItem.d.ts.map +1 -0
- package/esm/mcp-server/tools/datasetsUploadItem.js +36 -0
- package/esm/mcp-server/tools/datasetsUploadItem.js.map +1 -0
- package/esm/models/bodyuploadsttitemdatasetsdatasetiditemsuploadpost.d.ts +12 -0
- package/esm/models/bodyuploadsttitemdatasetsdatasetiditemsuploadpost.d.ts.map +1 -0
- package/esm/models/bodyuploadsttitemdatasetsdatasetiditemsuploadpost.js +14 -0
- package/esm/models/bodyuploadsttitemdatasetsdatasetiditemsuploadpost.js.map +1 -0
- package/esm/models/createnewdatasetdatasetspostop.d.ts +12 -0
- package/esm/models/createnewdatasetdatasetspostop.d.ts.map +1 -0
- package/esm/models/createnewdatasetdatasetspostop.js +16 -0
- package/esm/models/createnewdatasetdatasetspostop.js.map +1 -0
- package/esm/models/datasetcreaterequest.d.ts +23 -0
- package/esm/models/datasetcreaterequest.d.ts.map +1 -0
- package/esm/models/datasetcreaterequest.js +21 -0
- package/esm/models/datasetcreaterequest.js.map +1 -0
- package/esm/models/datasetdetailresponse.d.ts +14 -0
- package/esm/models/datasetdetailresponse.d.ts.map +1 -0
- package/esm/models/datasetdetailresponse.js +16 -0
- package/esm/models/datasetdetailresponse.js.map +1 -0
- package/esm/models/datasetitemresponse.d.ts +11 -0
- package/esm/models/datasetitemresponse.d.ts.map +1 -0
- package/esm/models/datasetitemresponse.js +14 -0
- package/esm/models/datasetitemresponse.js.map +1 -0
- package/esm/models/datasetresponse.d.ts +12 -0
- package/esm/models/datasetresponse.d.ts.map +1 -0
- package/esm/models/datasetresponse.js +14 -0
- package/esm/models/datasetresponse.js.map +1 -0
- package/esm/models/getdatasetdetaildatasetsdatasetidgetop.d.ts +11 -0
- package/esm/models/getdatasetdetaildatasetsdatasetidgetop.d.ts.map +1 -0
- package/esm/models/getdatasetdetaildatasetsdatasetidgetop.js +15 -0
- package/esm/models/getdatasetdetaildatasetsdatasetidgetop.js.map +1 -0
- package/esm/models/uploadsttitemdatasetsdatasetiditemsuploadpostop.d.ts +13 -0
- package/esm/models/uploadsttitemdatasetsdatasetiditemsuploadpostop.d.ts.map +1 -0
- package/esm/models/uploadsttitemdatasetsdatasetiditemsuploadpostop.js +17 -0
- package/esm/models/uploadsttitemdatasetsdatasetiditemsuploadpostop.js.map +1 -0
- package/esm/tool-names.d.ts.map +1 -1
- package/esm/tool-names.js +12 -0
- package/esm/tool-names.js.map +1 -1
- package/package.json +1 -1
- package/src/funcs/datasetsCreate.ts +148 -0
- package/src/funcs/datasetsGet.ts +157 -0
- package/src/funcs/datasetsUploadItem.ts +194 -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 +7 -1
- package/src/mcp-server/tools/datasetsCreate.ts +44 -0
- package/src/mcp-server/tools/datasetsGet.ts +44 -0
- package/src/mcp-server/tools/datasetsUploadItem.ts +44 -0
- package/src/models/bodyuploadsttitemdatasetsdatasetiditemsuploadpost.ts +28 -0
- package/src/models/createnewdatasetdatasetspostop.ts +40 -0
- package/src/models/datasetcreaterequest.ts +35 -0
- package/src/models/datasetdetailresponse.ts +40 -0
- package/src/models/datasetitemresponse.ts +34 -0
- package/src/models/datasetresponse.ts +31 -0
- package/src/models/getdatasetdetaildatasetsdatasetidgetop.ts +36 -0
- package/src/models/uploadsttitemdatasetsdatasetiditemsuploadpostop.ts +40 -0
- package/src/tool-names.ts +12 -0
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { CalibrateMcpCore } from "../core.js";
|
|
6
|
+
import { 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
|
+
GetDatasetDetailDatasetsDatasetIdGetRequest,
|
|
23
|
+
GetDatasetDetailDatasetsDatasetIdGetRequest$zodSchema,
|
|
24
|
+
} from "../models/getdatasetdetaildatasetsdatasetidgetop.js";
|
|
25
|
+
import { APICall, APIPromise } from "../types/async.js";
|
|
26
|
+
import { Result } from "../types/fp.js";
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Get dataset
|
|
30
|
+
*
|
|
31
|
+
* @remarks
|
|
32
|
+
* Get a dataset with all of its items
|
|
33
|
+
*/
|
|
34
|
+
export function datasetsGet(
|
|
35
|
+
client$: CalibrateMcpCore,
|
|
36
|
+
request: GetDatasetDetailDatasetsDatasetIdGetRequest,
|
|
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: GetDatasetDetailDatasetsDatasetIdGetRequest,
|
|
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
|
+
GetDatasetDetailDatasetsDatasetIdGetRequest$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$ = null;
|
|
87
|
+
|
|
88
|
+
const pathParams$ = {
|
|
89
|
+
dataset_id: encodeSimple("dataset_id", payload$.dataset_id, {
|
|
90
|
+
explode: false,
|
|
91
|
+
charEncoding: "percent",
|
|
92
|
+
}),
|
|
93
|
+
};
|
|
94
|
+
const path$ = pathToFunc("/datasets/{dataset_id}")(
|
|
95
|
+
pathParams$,
|
|
96
|
+
);
|
|
97
|
+
|
|
98
|
+
const headers$ = new Headers(compactMap({
|
|
99
|
+
Accept: "application/json",
|
|
100
|
+
"X-API-Key": encodeSimple("X-API-Key", payload$.xAPIKey, {
|
|
101
|
+
explode: false,
|
|
102
|
+
charEncoding: "none",
|
|
103
|
+
}),
|
|
104
|
+
}));
|
|
105
|
+
const securityInput = await extractSecurity(client$._options.security);
|
|
106
|
+
const requestSecurity = resolveGlobalSecurity(securityInput);
|
|
107
|
+
|
|
108
|
+
const context = {
|
|
109
|
+
options: client$._options,
|
|
110
|
+
baseURL: options?.serverURL ?? client$._baseURL ?? "",
|
|
111
|
+
operationID: "get_dataset_detail_datasets__dataset_id__get",
|
|
112
|
+
oAuth2Scopes: null,
|
|
113
|
+
resolvedSecurity: requestSecurity,
|
|
114
|
+
securitySource: client$._options.security,
|
|
115
|
+
retryConfig: options?.retries
|
|
116
|
+
|| client$._options.retryConfig
|
|
117
|
+
|| { strategy: "none" },
|
|
118
|
+
retryCodes: options?.retryCodes || [
|
|
119
|
+
"429",
|
|
120
|
+
"500",
|
|
121
|
+
"502",
|
|
122
|
+
"503",
|
|
123
|
+
"504",
|
|
124
|
+
],
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
const requestRes = client$._createRequest(context, {
|
|
128
|
+
security: requestSecurity,
|
|
129
|
+
method: "GET",
|
|
130
|
+
baseURL: options?.serverURL,
|
|
131
|
+
path: path$,
|
|
132
|
+
headers: headers$,
|
|
133
|
+
body: body$,
|
|
134
|
+
userAgent: client$._options.userAgent,
|
|
135
|
+
timeoutMs: options?.timeoutMs || client$._options.timeoutMs
|
|
136
|
+
|| -1,
|
|
137
|
+
}, options);
|
|
138
|
+
if (!requestRes.ok) {
|
|
139
|
+
return [requestRes, { status: "invalid" }];
|
|
140
|
+
}
|
|
141
|
+
const req$ = requestRes.value;
|
|
142
|
+
|
|
143
|
+
const doResult = await client$._do(req$, {
|
|
144
|
+
context,
|
|
145
|
+
errorCodes: [],
|
|
146
|
+
retryConfig: context.retryConfig,
|
|
147
|
+
retryCodes: context.retryCodes,
|
|
148
|
+
});
|
|
149
|
+
if (!doResult.ok) {
|
|
150
|
+
return [doResult, { status: "request-error", request: req$ }];
|
|
151
|
+
}
|
|
152
|
+
return [doResult, {
|
|
153
|
+
status: "complete",
|
|
154
|
+
"request": req$,
|
|
155
|
+
response: doResult.value,
|
|
156
|
+
}];
|
|
157
|
+
}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { CalibrateMcpCore } from "../core.js";
|
|
6
|
+
import { appendForm, encodeSimple, normalizeBlob } from "../lib/encodings.js";
|
|
7
|
+
import {
|
|
8
|
+
bytesToBlob,
|
|
9
|
+
getContentTypeFromFileName,
|
|
10
|
+
readableStreamToArrayBuffer,
|
|
11
|
+
} from "../lib/files.js";
|
|
12
|
+
import { compactMap } from "../lib/primitives.js";
|
|
13
|
+
import { safeParse } from "../lib/schemas.js";
|
|
14
|
+
import { RequestOptions } from "../lib/sdks.js";
|
|
15
|
+
import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
|
|
16
|
+
import { pathToFunc } from "../lib/url.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 {
|
|
27
|
+
UploadSttItemDatasetsDatasetIdItemsUploadPostRequest,
|
|
28
|
+
UploadSttItemDatasetsDatasetIdItemsUploadPostRequest$zodSchema,
|
|
29
|
+
} from "../models/uploadsttitemdatasetsdatasetiditemsuploadpostop.js";
|
|
30
|
+
import { APICall, APIPromise } from "../types/async.js";
|
|
31
|
+
import { isBlobLike } from "../types/blobs.js";
|
|
32
|
+
import { Result } from "../types/fp.js";
|
|
33
|
+
import { isReadableStream } from "../types/streams.js";
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Upload STT dataset item
|
|
37
|
+
*
|
|
38
|
+
* @remarks
|
|
39
|
+
* Upload one audio clip with its transcript and append it to an STT dataset
|
|
40
|
+
*/
|
|
41
|
+
export function datasetsUploadItem(
|
|
42
|
+
client$: CalibrateMcpCore,
|
|
43
|
+
request: UploadSttItemDatasetsDatasetIdItemsUploadPostRequest,
|
|
44
|
+
options?: RequestOptions,
|
|
45
|
+
): APIPromise<
|
|
46
|
+
Result<
|
|
47
|
+
Response,
|
|
48
|
+
| APIError
|
|
49
|
+
| SDKValidationError
|
|
50
|
+
| UnexpectedClientError
|
|
51
|
+
| InvalidRequestError
|
|
52
|
+
| RequestAbortedError
|
|
53
|
+
| RequestTimeoutError
|
|
54
|
+
| ConnectionError
|
|
55
|
+
>
|
|
56
|
+
> {
|
|
57
|
+
return new APIPromise($do(
|
|
58
|
+
client$,
|
|
59
|
+
request,
|
|
60
|
+
options,
|
|
61
|
+
));
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
async function $do(
|
|
65
|
+
client$: CalibrateMcpCore,
|
|
66
|
+
request: UploadSttItemDatasetsDatasetIdItemsUploadPostRequest,
|
|
67
|
+
options?: RequestOptions,
|
|
68
|
+
): Promise<
|
|
69
|
+
[
|
|
70
|
+
Result<
|
|
71
|
+
Response,
|
|
72
|
+
| APIError
|
|
73
|
+
| SDKValidationError
|
|
74
|
+
| UnexpectedClientError
|
|
75
|
+
| InvalidRequestError
|
|
76
|
+
| RequestAbortedError
|
|
77
|
+
| RequestTimeoutError
|
|
78
|
+
| ConnectionError
|
|
79
|
+
>,
|
|
80
|
+
APICall,
|
|
81
|
+
]
|
|
82
|
+
> {
|
|
83
|
+
const parsed$ = safeParse(
|
|
84
|
+
request,
|
|
85
|
+
(value$) =>
|
|
86
|
+
UploadSttItemDatasetsDatasetIdItemsUploadPostRequest$zodSchema.parse(
|
|
87
|
+
value$,
|
|
88
|
+
),
|
|
89
|
+
"Input validation failed",
|
|
90
|
+
);
|
|
91
|
+
if (!parsed$.ok) {
|
|
92
|
+
return [parsed$, { status: "invalid" }];
|
|
93
|
+
}
|
|
94
|
+
const payload$ = parsed$.value;
|
|
95
|
+
const body$ = new FormData();
|
|
96
|
+
if (isBlobLike(payload$.body.audio)) {
|
|
97
|
+
const file = payload$.body.audio;
|
|
98
|
+
const blob = await normalizeBlob(file);
|
|
99
|
+
const name = "name" in file ? (file.name as string) : undefined;
|
|
100
|
+
appendForm(body$, "audio", blob, name);
|
|
101
|
+
} else if (isReadableStream(payload$.body.audio.content)) {
|
|
102
|
+
const buffer = await readableStreamToArrayBuffer(
|
|
103
|
+
payload$.body.audio.content,
|
|
104
|
+
);
|
|
105
|
+
const contentType = getContentTypeFromFileName(payload$.body.audio.fileName)
|
|
106
|
+
|| "application/octet-stream";
|
|
107
|
+
appendForm(
|
|
108
|
+
body$,
|
|
109
|
+
"audio",
|
|
110
|
+
bytesToBlob(buffer, contentType),
|
|
111
|
+
payload$.body.audio.fileName,
|
|
112
|
+
);
|
|
113
|
+
} else {
|
|
114
|
+
const contentType = getContentTypeFromFileName(payload$.body.audio.fileName)
|
|
115
|
+
|| "application/octet-stream";
|
|
116
|
+
appendForm(
|
|
117
|
+
body$,
|
|
118
|
+
"audio",
|
|
119
|
+
bytesToBlob(payload$.body.audio.content, contentType),
|
|
120
|
+
payload$.body.audio.fileName,
|
|
121
|
+
);
|
|
122
|
+
}
|
|
123
|
+
appendForm(body$, "text", payload$.body.text);
|
|
124
|
+
|
|
125
|
+
const pathParams$ = {
|
|
126
|
+
dataset_id: encodeSimple("dataset_id", payload$.dataset_id, {
|
|
127
|
+
explode: false,
|
|
128
|
+
charEncoding: "percent",
|
|
129
|
+
}),
|
|
130
|
+
};
|
|
131
|
+
const path$ = pathToFunc("/datasets/{dataset_id}/items/upload")(
|
|
132
|
+
pathParams$,
|
|
133
|
+
);
|
|
134
|
+
|
|
135
|
+
const headers$ = new Headers(compactMap({
|
|
136
|
+
Accept: "application/json",
|
|
137
|
+
"X-API-Key": encodeSimple("X-API-Key", payload$.xAPIKey, {
|
|
138
|
+
explode: false,
|
|
139
|
+
charEncoding: "none",
|
|
140
|
+
}),
|
|
141
|
+
}));
|
|
142
|
+
const securityInput = await extractSecurity(client$._options.security);
|
|
143
|
+
const requestSecurity = resolveGlobalSecurity(securityInput);
|
|
144
|
+
|
|
145
|
+
const context = {
|
|
146
|
+
options: client$._options,
|
|
147
|
+
baseURL: options?.serverURL ?? client$._baseURL ?? "",
|
|
148
|
+
operationID: "upload_stt_item_datasets__dataset_id__items_upload_post",
|
|
149
|
+
oAuth2Scopes: null,
|
|
150
|
+
resolvedSecurity: requestSecurity,
|
|
151
|
+
securitySource: client$._options.security,
|
|
152
|
+
retryConfig: options?.retries
|
|
153
|
+
|| client$._options.retryConfig
|
|
154
|
+
|| { strategy: "none" },
|
|
155
|
+
retryCodes: options?.retryCodes || [
|
|
156
|
+
"429",
|
|
157
|
+
"500",
|
|
158
|
+
"502",
|
|
159
|
+
"503",
|
|
160
|
+
"504",
|
|
161
|
+
],
|
|
162
|
+
};
|
|
163
|
+
|
|
164
|
+
const requestRes = client$._createRequest(context, {
|
|
165
|
+
security: requestSecurity,
|
|
166
|
+
method: "POST",
|
|
167
|
+
baseURL: options?.serverURL,
|
|
168
|
+
path: path$,
|
|
169
|
+
headers: headers$,
|
|
170
|
+
body: body$,
|
|
171
|
+
userAgent: client$._options.userAgent,
|
|
172
|
+
timeoutMs: options?.timeoutMs || client$._options.timeoutMs
|
|
173
|
+
|| -1,
|
|
174
|
+
}, options);
|
|
175
|
+
if (!requestRes.ok) {
|
|
176
|
+
return [requestRes, { status: "invalid" }];
|
|
177
|
+
}
|
|
178
|
+
const req$ = requestRes.value;
|
|
179
|
+
|
|
180
|
+
const doResult = await client$._do(req$, {
|
|
181
|
+
context,
|
|
182
|
+
errorCodes: [],
|
|
183
|
+
retryConfig: context.retryConfig,
|
|
184
|
+
retryCodes: context.retryCodes,
|
|
185
|
+
});
|
|
186
|
+
if (!doResult.ok) {
|
|
187
|
+
return [doResult, { status: "request-error", request: req$ }];
|
|
188
|
+
}
|
|
189
|
+
return [doResult, {
|
|
190
|
+
status: "complete",
|
|
191
|
+
"request": req$,
|
|
192
|
+
response: doResult.value,
|
|
193
|
+
}];
|
|
194
|
+
}
|
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.81/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.81",
|
|
69
69
|
genVersion: "2.915.1",
|
|
70
70
|
userAgent:
|
|
71
|
-
"speakeasy-sdk/mcp-typescript 0.0.
|
|
71
|
+
"speakeasy-sdk/mcp-typescript 0.0.81 2.915.1 0.1.0 @dalmia/calibrate-mcp",
|
|
72
72
|
} as const;
|
package/src/mcp-server/server.ts
CHANGED
|
@@ -49,6 +49,9 @@ import { tool$annotationTasksUpdateItems } from "./tools/annotationTasksUpdateIt
|
|
|
49
49
|
import { tool$annotatorsCreate } from "./tools/annotatorsCreate.js";
|
|
50
50
|
import { tool$annotatorsList } from "./tools/annotatorsList.js";
|
|
51
51
|
import { tool$annotatorsUpdate } from "./tools/annotatorsUpdate.js";
|
|
52
|
+
import { tool$datasetsCreate } from "./tools/datasetsCreate.js";
|
|
53
|
+
import { tool$datasetsGet } from "./tools/datasetsGet.js";
|
|
54
|
+
import { tool$datasetsUploadItem } from "./tools/datasetsUploadItem.js";
|
|
52
55
|
import { tool$evaluatorsCreate } from "./tools/evaluatorsCreate.js";
|
|
53
56
|
import { tool$evaluatorsCreateVersion } from "./tools/evaluatorsCreateVersion.js";
|
|
54
57
|
import { tool$evaluatorsGet } from "./tools/evaluatorsGet.js";
|
|
@@ -73,7 +76,7 @@ export function createMCPServer(deps: {
|
|
|
73
76
|
}) {
|
|
74
77
|
const server = new McpServer({
|
|
75
78
|
name: "CalibrateMcp",
|
|
76
|
-
version: "0.0.
|
|
79
|
+
version: "0.0.81",
|
|
77
80
|
});
|
|
78
81
|
|
|
79
82
|
const getClient = deps.getSDK || (() =>
|
|
@@ -145,6 +148,9 @@ export function createMCPServer(deps: {
|
|
|
145
148
|
tool(tool$evaluatorsList);
|
|
146
149
|
tool(tool$evaluatorsGet);
|
|
147
150
|
tool(tool$evaluatorsCreateVersion);
|
|
151
|
+
tool(tool$datasetsCreate);
|
|
152
|
+
tool(tool$datasetsGet);
|
|
153
|
+
tool(tool$datasetsUploadItem);
|
|
148
154
|
tool(tool$annotationTasksCreate);
|
|
149
155
|
tool(tool$annotationTasksList);
|
|
150
156
|
tool(tool$annotationTasksGet);
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { datasetsCreate } from "../../funcs/datasetsCreate.js";
|
|
6
|
+
import { CreateNewDatasetDatasetsPostRequest$zodSchema } from "../../models/createnewdatasetdatasetspostop.js";
|
|
7
|
+
import { formatResult, ToolDefinition } from "../tools.js";
|
|
8
|
+
|
|
9
|
+
const args = {
|
|
10
|
+
request: CreateNewDatasetDatasetsPostRequest$zodSchema,
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export const tool$datasetsCreate: ToolDefinition<typeof args> = {
|
|
14
|
+
name: "create-dataset",
|
|
15
|
+
description:
|
|
16
|
+
`Create an empty STT or TTS dataset in the caller's org. The name must
|
|
17
|
+
be unique in the workspace (409 otherwise). Add items separately.
|
|
18
|
+
`,
|
|
19
|
+
scopes: ["write"],
|
|
20
|
+
annotations: {
|
|
21
|
+
"title": "Create dataset",
|
|
22
|
+
"destructiveHint": false,
|
|
23
|
+
"idempotentHint": false,
|
|
24
|
+
"openWorldHint": true,
|
|
25
|
+
"readOnlyHint": false,
|
|
26
|
+
},
|
|
27
|
+
args,
|
|
28
|
+
tool: async (client, args, ctx) => {
|
|
29
|
+
const [result] = await datasetsCreate(
|
|
30
|
+
client,
|
|
31
|
+
args.request,
|
|
32
|
+
{ fetchOptions: { signal: ctx.signal } },
|
|
33
|
+
).$inspect();
|
|
34
|
+
|
|
35
|
+
if (!result.ok) {
|
|
36
|
+
return {
|
|
37
|
+
content: [{ type: "text", text: result.error.message }],
|
|
38
|
+
isError: true,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
return formatResult(result.value);
|
|
43
|
+
},
|
|
44
|
+
};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { datasetsGet } from "../../funcs/datasetsGet.js";
|
|
6
|
+
import { GetDatasetDetailDatasetsDatasetIdGetRequest$zodSchema } from "../../models/getdatasetdetaildatasetsdatasetidgetop.js";
|
|
7
|
+
import { formatResult, ToolDefinition } from "../tools.js";
|
|
8
|
+
|
|
9
|
+
const args = {
|
|
10
|
+
request: GetDatasetDetailDatasetsDatasetIdGetRequest$zodSchema,
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export const tool$datasetsGet: ToolDefinition<typeof args> = {
|
|
14
|
+
name: "get-dataset",
|
|
15
|
+
description:
|
|
16
|
+
`Get one dataset in the caller's org with all of its items, each with
|
|
17
|
+
a download link for its audio (STT) and its text.
|
|
18
|
+
`,
|
|
19
|
+
scopes: ["read"],
|
|
20
|
+
annotations: {
|
|
21
|
+
"title": "Get dataset",
|
|
22
|
+
"destructiveHint": false,
|
|
23
|
+
"idempotentHint": false,
|
|
24
|
+
"openWorldHint": true,
|
|
25
|
+
"readOnlyHint": true,
|
|
26
|
+
},
|
|
27
|
+
args,
|
|
28
|
+
tool: async (client, args, ctx) => {
|
|
29
|
+
const [result] = await datasetsGet(
|
|
30
|
+
client,
|
|
31
|
+
args.request,
|
|
32
|
+
{ fetchOptions: { signal: ctx.signal } },
|
|
33
|
+
).$inspect();
|
|
34
|
+
|
|
35
|
+
if (!result.ok) {
|
|
36
|
+
return {
|
|
37
|
+
content: [{ type: "text", text: result.error.message }],
|
|
38
|
+
isError: true,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
return formatResult(result.value);
|
|
43
|
+
},
|
|
44
|
+
};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { datasetsUploadItem } from "../../funcs/datasetsUploadItem.js";
|
|
6
|
+
import { UploadSttItemDatasetsDatasetIdItemsUploadPostRequest$zodSchema } from "../../models/uploadsttitemdatasetsdatasetiditemsuploadpostop.js";
|
|
7
|
+
import { formatResult, ToolDefinition } from "../tools.js";
|
|
8
|
+
|
|
9
|
+
const args = {
|
|
10
|
+
request: UploadSttItemDatasetsDatasetIdItemsUploadPostRequest$zodSchema,
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export const tool$datasetsUploadItem: ToolDefinition<typeof args> = {
|
|
14
|
+
name: "upload-dataset-item",
|
|
15
|
+
description: `Upload one WAV clip (at most 25 MB and 10 minutes) with its
|
|
16
|
+
ground-truth transcript and append it to an STT dataset in the
|
|
17
|
+
caller's org.
|
|
18
|
+
`,
|
|
19
|
+
scopes: ["write"],
|
|
20
|
+
annotations: {
|
|
21
|
+
"title": "Upload STT dataset item",
|
|
22
|
+
"destructiveHint": false,
|
|
23
|
+
"idempotentHint": false,
|
|
24
|
+
"openWorldHint": true,
|
|
25
|
+
"readOnlyHint": false,
|
|
26
|
+
},
|
|
27
|
+
args,
|
|
28
|
+
tool: async (client, args, ctx) => {
|
|
29
|
+
const [result] = await datasetsUploadItem(
|
|
30
|
+
client,
|
|
31
|
+
args.request,
|
|
32
|
+
{ fetchOptions: { signal: ctx.signal } },
|
|
33
|
+
).$inspect();
|
|
34
|
+
|
|
35
|
+
if (!result.ok) {
|
|
36
|
+
return {
|
|
37
|
+
content: [{ type: "text", text: result.error.message }],
|
|
38
|
+
isError: true,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
return formatResult(result.value);
|
|
43
|
+
},
|
|
44
|
+
};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as z from "zod";
|
|
6
|
+
import * as b64$ from "../lib/base64.js";
|
|
7
|
+
|
|
8
|
+
export type Audio = { fileName: string; content: Uint8Array | string };
|
|
9
|
+
|
|
10
|
+
export const Audio$zodSchema: z.ZodType<Audio> = z.object({
|
|
11
|
+
content: z.string().describe("Base64-encoded binary content").transform(
|
|
12
|
+
b64$.bytesFromBase64,
|
|
13
|
+
),
|
|
14
|
+
fileName: z.string(),
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
export type BodyUploadSttItemDatasetsDatasetIdItemsUploadPost = {
|
|
18
|
+
audio: Audio | Blob;
|
|
19
|
+
text: string;
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export const BodyUploadSttItemDatasetsDatasetIdItemsUploadPost$zodSchema:
|
|
23
|
+
z.ZodType<BodyUploadSttItemDatasetsDatasetIdItemsUploadPost> = z.object({
|
|
24
|
+
audio: z.lazy(() => Audio$zodSchema).describe(
|
|
25
|
+
"WAV file of the spoken audio, at most 25 MB and 10 minutes long",
|
|
26
|
+
),
|
|
27
|
+
text: z.string().describe("Ground-truth transcript of the audio"),
|
|
28
|
+
});
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as z from "zod";
|
|
6
|
+
import {
|
|
7
|
+
DatasetCreateRequest,
|
|
8
|
+
DatasetCreateRequest$zodSchema,
|
|
9
|
+
} from "./datasetcreaterequest.js";
|
|
10
|
+
import {
|
|
11
|
+
DatasetResponse,
|
|
12
|
+
DatasetResponse$zodSchema,
|
|
13
|
+
} from "./datasetresponse.js";
|
|
14
|
+
import {
|
|
15
|
+
HTTPValidationError,
|
|
16
|
+
HTTPValidationError$zodSchema,
|
|
17
|
+
} from "./httpvalidationerror.js";
|
|
18
|
+
|
|
19
|
+
export type CreateNewDatasetDatasetsPostRequest = {
|
|
20
|
+
xAPIKey?: string | null | undefined;
|
|
21
|
+
body: DatasetCreateRequest;
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export const CreateNewDatasetDatasetsPostRequest$zodSchema: z.ZodType<
|
|
25
|
+
CreateNewDatasetDatasetsPostRequest
|
|
26
|
+
> = z.object({
|
|
27
|
+
body: DatasetCreateRequest$zodSchema,
|
|
28
|
+
xAPIKey: z.string().nullable().optional(),
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
export type CreateNewDatasetDatasetsPostResponse =
|
|
32
|
+
| DatasetResponse
|
|
33
|
+
| HTTPValidationError;
|
|
34
|
+
|
|
35
|
+
export const CreateNewDatasetDatasetsPostResponse$zodSchema: z.ZodType<
|
|
36
|
+
CreateNewDatasetDatasetsPostResponse
|
|
37
|
+
> = z.union([
|
|
38
|
+
DatasetResponse$zodSchema,
|
|
39
|
+
HTTPValidationError$zodSchema,
|
|
40
|
+
]);
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as z from "zod";
|
|
6
|
+
import { ClosedEnum } from "../types/enums.js";
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* `stt` items carry audio + ground-truth text. `tts` items carry text only
|
|
10
|
+
*/
|
|
11
|
+
export const DatasetType = {
|
|
12
|
+
Stt: "stt",
|
|
13
|
+
Tts: "tts",
|
|
14
|
+
} as const;
|
|
15
|
+
/**
|
|
16
|
+
* `stt` items carry audio + ground-truth text. `tts` items carry text only
|
|
17
|
+
*/
|
|
18
|
+
export type DatasetType = ClosedEnum<typeof DatasetType>;
|
|
19
|
+
|
|
20
|
+
export const DatasetType$zodSchema = z.enum([
|
|
21
|
+
"stt",
|
|
22
|
+
"tts",
|
|
23
|
+
]).describe(
|
|
24
|
+
"`stt` items carry audio + ground-truth text. `tts` items carry text only",
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
export type DatasetCreateRequest = { name: string; dataset_type: DatasetType };
|
|
28
|
+
|
|
29
|
+
export const DatasetCreateRequest$zodSchema: z.ZodType<DatasetCreateRequest> = z
|
|
30
|
+
.object({
|
|
31
|
+
dataset_type: DatasetType$zodSchema.describe(
|
|
32
|
+
"`stt` items carry audio + ground-truth text. `tts` items carry text only",
|
|
33
|
+
),
|
|
34
|
+
name: z.string().describe("Dataset name, unique within the workspace"),
|
|
35
|
+
});
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as z from "zod";
|
|
6
|
+
import {
|
|
7
|
+
DatasetItemResponse,
|
|
8
|
+
DatasetItemResponse$zodSchema,
|
|
9
|
+
} from "./datasetitemresponse.js";
|
|
10
|
+
|
|
11
|
+
export type DatasetDetailResponse = {
|
|
12
|
+
uuid: string;
|
|
13
|
+
name: string;
|
|
14
|
+
dataset_type: string;
|
|
15
|
+
item_count: number;
|
|
16
|
+
eval_count: number;
|
|
17
|
+
created_at: string;
|
|
18
|
+
updated_at: string;
|
|
19
|
+
items: Array<DatasetItemResponse>;
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export const DatasetDetailResponse$zodSchema: z.ZodType<DatasetDetailResponse> =
|
|
23
|
+
z.object({
|
|
24
|
+
created_at: z.string().describe(
|
|
25
|
+
"When the dataset was created (ISO 8601 UTC)",
|
|
26
|
+
),
|
|
27
|
+
dataset_type: z.string().describe("Dataset type (`stt` or `tts`)"),
|
|
28
|
+
eval_count: z.int().describe(
|
|
29
|
+
"Number of evaluation jobs that used this dataset",
|
|
30
|
+
),
|
|
31
|
+
item_count: z.int().describe("Number of items in the dataset"),
|
|
32
|
+
items: z.array(DatasetItemResponse$zodSchema).describe(
|
|
33
|
+
"All items in the dataset, ordered by `order_index`",
|
|
34
|
+
),
|
|
35
|
+
name: z.string().describe("Dataset name"),
|
|
36
|
+
updated_at: z.string().describe(
|
|
37
|
+
"When the dataset was last updated (ISO 8601 UTC)",
|
|
38
|
+
),
|
|
39
|
+
uuid: z.string().describe("Dataset ID"),
|
|
40
|
+
});
|