@orq-ai/node 3.3.1 → 3.4.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/mcp-server.js +40 -43
- package/bin/mcp-server.js.map +24 -24
- package/jsr.json +1 -1
- package/lib/config.d.ts +2 -2
- package/lib/config.js +2 -2
- package/lib/config.js.map +1 -1
- package/mcp-server/mcp-server.js +1 -1
- package/mcp-server/mcp-server.js.map +1 -1
- package/mcp-server/server.js +1 -1
- package/mcp-server/server.js.map +1 -1
- package/models/operations/bulkcreatedatapoints.js +2 -2
- package/models/operations/createcontact.js +2 -2
- package/models/operations/createdataset.js +2 -2
- package/models/operations/createdatasetitem.js +2 -2
- package/models/operations/createdatasource.js +2 -2
- package/models/operations/fileget.js +2 -2
- package/models/operations/filelist.js +2 -2
- package/models/operations/fileupload.js +2 -2
- package/models/operations/listdatasetdatapoints.js +2 -2
- package/models/operations/listdatasets.js +2 -2
- package/models/operations/listdatasources.js +2 -2
- package/models/operations/retrievedatapoint.js +2 -2
- package/models/operations/retrievedataset.js +2 -2
- package/models/operations/retrievedatasource.js +2 -2
- package/models/operations/updatedatapoint.js +2 -2
- package/models/operations/updatedataset.js +2 -2
- package/models/operations/updatedatasource.js +2 -2
- package/package.json +3 -2
- package/src/lib/config.ts +2 -2
- package/src/mcp-server/mcp-server.ts +1 -1
- package/src/mcp-server/server.ts +1 -1
- package/src/models/operations/bulkcreatedatapoints.ts +2 -2
- package/src/models/operations/createcontact.ts +2 -2
- package/src/models/operations/createdataset.ts +2 -2
- package/src/models/operations/createdatasetitem.ts +2 -2
- package/src/models/operations/createdatasource.ts +2 -2
- package/src/models/operations/fileget.ts +2 -2
- package/src/models/operations/filelist.ts +2 -2
- package/src/models/operations/fileupload.ts +2 -2
- package/src/models/operations/listdatasetdatapoints.ts +2 -2
- package/src/models/operations/listdatasets.ts +2 -2
- package/src/models/operations/listdatasources.ts +2 -2
- package/src/models/operations/retrievedatapoint.ts +2 -2
- package/src/models/operations/retrievedataset.ts +2 -2
- package/src/models/operations/retrievedatasource.ts +2 -2
- package/src/models/operations/updatedatapoint.ts +2 -2
- package/src/models/operations/updatedataset.ts +2 -2
- package/src/models/operations/updatedatasource.ts +2 -2
- package/packages/orq-rc/FUNCTIONS.md +0 -106
- package/packages/orq-rc/README.md +0 -698
- package/packages/orq-rc/RUNTIMES.md +0 -48
- package/packages/orq-rc/docs/sdks/contacts/README.md +0 -84
- package/packages/orq-rc/docs/sdks/datasets/README.md +0 -940
- package/packages/orq-rc/docs/sdks/deployments/README.md +0 -316
- package/packages/orq-rc/docs/sdks/feedback/README.md +0 -92
- package/packages/orq-rc/docs/sdks/files/README.md +0 -311
- package/packages/orq-rc/docs/sdks/knowledge/README.md +0 -1279
- package/packages/orq-rc/docs/sdks/metrics/README.md +0 -86
- package/packages/orq-rc/docs/sdks/orq/README.md +0 -10
- package/packages/orq-rc/docs/sdks/prompts/README.md +0 -614
- package/packages/orq-rc/docs/sdks/remoteconfigs/README.md +0 -80
- package/packages/orq-rc/jsr.json +0 -28
- package/packages/orq-rc/package-lock.json +0 -3217
- package/packages/orq-rc/package.json +0 -45
- package/packages/orq-rc/src/core.ts +0 -13
- package/packages/orq-rc/src/funcs/contactsCreate.ts +0 -154
- package/packages/orq-rc/src/funcs/datasetsClear.ts +0 -161
- package/packages/orq-rc/src/funcs/datasetsCreate.ts +0 -159
- package/packages/orq-rc/src/funcs/datasetsCreateDatapoint.ts +0 -161
- package/packages/orq-rc/src/funcs/datasetsCreateDatapoints.ts +0 -165
- package/packages/orq-rc/src/funcs/datasetsDelete.ts +0 -161
- package/packages/orq-rc/src/funcs/datasetsDeleteDatapoint.ts +0 -176
- package/packages/orq-rc/src/funcs/datasetsList.ts +0 -161
- package/packages/orq-rc/src/funcs/datasetsListDatapoints.ts +0 -168
- package/packages/orq-rc/src/funcs/datasetsRetrieve.ts +0 -169
- package/packages/orq-rc/src/funcs/datasetsRetrieveDatapoint.ts +0 -175
- package/packages/orq-rc/src/funcs/datasetsUpdate.ts +0 -170
- package/packages/orq-rc/src/funcs/datasetsUpdateDatapoint.ts +0 -173
- package/packages/orq-rc/src/funcs/deploymentsGetConfig.ts +0 -162
- package/packages/orq-rc/src/funcs/deploymentsInvoke.ts +0 -170
- package/packages/orq-rc/src/funcs/deploymentsList.ts +0 -170
- package/packages/orq-rc/src/funcs/deploymentsMetricsCreate.ts +0 -162
- package/packages/orq-rc/src/funcs/deploymentsStream.ts +0 -178
- package/packages/orq-rc/src/funcs/feedbackCreate.ts +0 -154
- package/packages/orq-rc/src/funcs/filesCreate.ts +0 -174
- package/packages/orq-rc/src/funcs/filesDelete.ts +0 -158
- package/packages/orq-rc/src/funcs/filesGet.ts +0 -160
- package/packages/orq-rc/src/funcs/filesList.ts +0 -161
- package/packages/orq-rc/src/funcs/knowledgeCreate.ts +0 -152
- package/packages/orq-rc/src/funcs/knowledgeCreateChunks.ts +0 -165
- package/packages/orq-rc/src/funcs/knowledgeCreateDatasource.ts +0 -160
- package/packages/orq-rc/src/funcs/knowledgeDelete.ts +0 -161
- package/packages/orq-rc/src/funcs/knowledgeDeleteChunk.ts +0 -168
- package/packages/orq-rc/src/funcs/knowledgeDeleteDatasource.ts +0 -167
- package/packages/orq-rc/src/funcs/knowledgeList.ts +0 -163
- package/packages/orq-rc/src/funcs/knowledgeListChunks.ts +0 -172
- package/packages/orq-rc/src/funcs/knowledgeListDatasources.ts +0 -168
- package/packages/orq-rc/src/funcs/knowledgeRetrieve.ts +0 -160
- package/packages/orq-rc/src/funcs/knowledgeRetrieveChunk.ts +0 -167
- package/packages/orq-rc/src/funcs/knowledgeRetrieveDatasource.ts +0 -163
- package/packages/orq-rc/src/funcs/knowledgeSearch.ts +0 -158
- package/packages/orq-rc/src/funcs/knowledgeUpdate.ts +0 -158
- package/packages/orq-rc/src/funcs/knowledgeUpdateChunk.ts +0 -168
- package/packages/orq-rc/src/funcs/knowledgeUpdateDatasource.ts +0 -164
- package/packages/orq-rc/src/funcs/promptsCreate.ts +0 -154
- package/packages/orq-rc/src/funcs/promptsDelete.ts +0 -158
- package/packages/orq-rc/src/funcs/promptsGetVersion.ts +0 -175
- package/packages/orq-rc/src/funcs/promptsList.ts +0 -161
- package/packages/orq-rc/src/funcs/promptsListVersions.ts +0 -167
- package/packages/orq-rc/src/funcs/promptsRetrieve.ts +0 -160
- package/packages/orq-rc/src/funcs/promptsUpdate.ts +0 -167
- package/packages/orq-rc/src/funcs/remoteconfigsRetrieve.ts +0 -155
- package/packages/orq-rc/src/hooks/global.ts +0 -44
- package/packages/orq-rc/src/hooks/hooks.ts +0 -132
- package/packages/orq-rc/src/hooks/index.ts +0 -6
- package/packages/orq-rc/src/hooks/registration.ts +0 -15
- package/packages/orq-rc/src/hooks/types.ts +0 -110
- package/packages/orq-rc/src/index.ts +0 -7
- package/packages/orq-rc/src/lib/base64.ts +0 -37
- package/packages/orq-rc/src/lib/config.ts +0 -70
- package/packages/orq-rc/src/lib/dlv.ts +0 -53
- package/packages/orq-rc/src/lib/encodings.ts +0 -483
- package/packages/orq-rc/src/lib/env.ts +0 -73
- package/packages/orq-rc/src/lib/event-streams.ts +0 -264
- package/packages/orq-rc/src/lib/files.ts +0 -40
- package/packages/orq-rc/src/lib/http.ts +0 -323
- package/packages/orq-rc/src/lib/is-plain-object.ts +0 -43
- package/packages/orq-rc/src/lib/logger.ts +0 -9
- package/packages/orq-rc/src/lib/matchers.ts +0 -325
- package/packages/orq-rc/src/lib/primitives.ts +0 -150
- package/packages/orq-rc/src/lib/retries.ts +0 -218
- package/packages/orq-rc/src/lib/schemas.ts +0 -91
- package/packages/orq-rc/src/lib/sdks.ts +0 -395
- package/packages/orq-rc/src/lib/security.ts +0 -261
- package/packages/orq-rc/src/lib/url.ts +0 -33
- package/packages/orq-rc/src/mcp-server/cli/start/command.ts +0 -125
- package/packages/orq-rc/src/mcp-server/cli/start/impl.ts +0 -140
- package/packages/orq-rc/src/mcp-server/cli.ts +0 -13
- package/packages/orq-rc/src/mcp-server/console-logger.ts +0 -71
- package/packages/orq-rc/src/mcp-server/extensions.ts +0 -17
- package/packages/orq-rc/src/mcp-server/mcp-server.ts +0 -26
- package/packages/orq-rc/src/mcp-server/prompts.ts +0 -110
- package/packages/orq-rc/src/mcp-server/resources.ts +0 -158
- package/packages/orq-rc/src/mcp-server/scopes.ts +0 -7
- package/packages/orq-rc/src/mcp-server/server.ts +0 -157
- package/packages/orq-rc/src/mcp-server/shared.ts +0 -75
- package/packages/orq-rc/src/mcp-server/tools/contactsCreate.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/datasetsClear.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/datasetsCreate.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/datasetsCreateDatapoint.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/datasetsCreateDatapoints.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/datasetsDelete.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/datasetsDeleteDatapoint.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/datasetsList.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/datasetsListDatapoints.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/datasetsRetrieve.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/datasetsRetrieveDatapoint.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/datasetsUpdate.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/datasetsUpdateDatapoint.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/deploymentsGetConfig.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/deploymentsInvoke.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/deploymentsList.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/deploymentsMetricsCreate.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/deploymentsStream.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/feedbackCreate.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/filesCreate.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/filesDelete.ts +0 -33
- package/packages/orq-rc/src/mcp-server/tools/filesGet.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/filesList.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/knowledgeCreate.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/knowledgeCreateChunks.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/knowledgeCreateDatasource.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/knowledgeDelete.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/knowledgeDeleteChunk.ts +0 -33
- package/packages/orq-rc/src/mcp-server/tools/knowledgeDeleteDatasource.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/knowledgeList.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/knowledgeListChunks.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/knowledgeListDatasources.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/knowledgeRetrieve.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/knowledgeRetrieveChunk.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/knowledgeRetrieveDatasource.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/knowledgeSearch.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/knowledgeUpdate.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/knowledgeUpdateChunk.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/knowledgeUpdateDatasource.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/promptsCreate.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/promptsDelete.ts +0 -33
- package/packages/orq-rc/src/mcp-server/tools/promptsGetVersion.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/promptsList.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/promptsListVersions.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/promptsRetrieve.ts +0 -37
- package/packages/orq-rc/src/mcp-server/tools/promptsUpdate.ts +0 -35
- package/packages/orq-rc/src/mcp-server/tools/remoteconfigsRetrieve.ts +0 -36
- package/packages/orq-rc/src/mcp-server/tools.ts +0 -126
- package/packages/orq-rc/src/models/components/deployments.ts +0 -4164
- package/packages/orq-rc/src/models/components/index.ts +0 -6
- package/packages/orq-rc/src/models/components/security.ts +0 -71
- package/packages/orq-rc/src/models/errors/apierror.ts +0 -27
- package/packages/orq-rc/src/models/errors/getpromptversion.ts +0 -71
- package/packages/orq-rc/src/models/errors/honoapierror.ts +0 -82
- package/packages/orq-rc/src/models/errors/httpclienterrors.ts +0 -62
- package/packages/orq-rc/src/models/errors/index.ts +0 -10
- package/packages/orq-rc/src/models/errors/sdkvalidationerror.ts +0 -97
- package/packages/orq-rc/src/models/errors/updateprompt.ts +0 -71
- package/packages/orq-rc/src/models/operations/bulkcreatedatapoints.ts +0 -1816
- package/packages/orq-rc/src/models/operations/cleardataset.ts +0 -75
- package/packages/orq-rc/src/models/operations/createchunk.ts +0 -680
- package/packages/orq-rc/src/models/operations/createcontact.ts +0 -256
- package/packages/orq-rc/src/models/operations/createdataset.ts +0 -296
- package/packages/orq-rc/src/models/operations/createdatasetitem.ts +0 -1740
- package/packages/orq-rc/src/models/operations/createdatasource.ts +0 -852
- package/packages/orq-rc/src/models/operations/createfeedback.ts +0 -286
- package/packages/orq-rc/src/models/operations/createknowledge.ts +0 -676
- package/packages/orq-rc/src/models/operations/createprompt.ts +0 -3743
- package/packages/orq-rc/src/models/operations/deletechunk.ts +0 -96
- package/packages/orq-rc/src/models/operations/deletedatapoint.ts +0 -81
- package/packages/orq-rc/src/models/operations/deletedataset.ts +0 -75
- package/packages/orq-rc/src/models/operations/deletedatasource.ts +0 -87
- package/packages/orq-rc/src/models/operations/deleteknowledge.ts +0 -78
- package/packages/orq-rc/src/models/operations/deleteprompt.ts +0 -69
- package/packages/orq-rc/src/models/operations/deploymentcreatemetric.ts +0 -4936
- package/packages/orq-rc/src/models/operations/deploymentgetconfig.ts +0 -6090
- package/packages/orq-rc/src/models/operations/deploymentinvoke.ts +0 -1199
- package/packages/orq-rc/src/models/operations/deployments.ts +0 -2155
- package/packages/orq-rc/src/models/operations/deploymentstream.ts +0 -5960
- package/packages/orq-rc/src/models/operations/filedelete.ts +0 -78
- package/packages/orq-rc/src/models/operations/fileget.ts +0 -223
- package/packages/orq-rc/src/models/operations/filelist.ts +0 -337
- package/packages/orq-rc/src/models/operations/fileupload.ts +0 -324
- package/packages/orq-rc/src/models/operations/getallprompts.ts +0 -2127
- package/packages/orq-rc/src/models/operations/getonechunk.ts +0 -265
- package/packages/orq-rc/src/models/operations/getoneknowledge.ts +0 -444
- package/packages/orq-rc/src/models/operations/getoneprompt.ts +0 -1993
- package/packages/orq-rc/src/models/operations/getpromptversion.ts +0 -1991
- package/packages/orq-rc/src/models/operations/index.ts +0 -51
- package/packages/orq-rc/src/models/operations/listchunks.ts +0 -444
- package/packages/orq-rc/src/models/operations/listdatasetdatapoints.ts +0 -1071
- package/packages/orq-rc/src/models/operations/listdatasets.ts +0 -406
- package/packages/orq-rc/src/models/operations/listdatasources.ts +0 -447
- package/packages/orq-rc/src/models/operations/listknowledgebases.ts +0 -568
- package/packages/orq-rc/src/models/operations/listpromptversions.ts +0 -2125
- package/packages/orq-rc/src/models/operations/remoteconfigsgetconfig.ts +0 -190
- package/packages/orq-rc/src/models/operations/retrievedatapoint.ts +0 -924
- package/packages/orq-rc/src/models/operations/retrievedataset.ts +0 -288
- package/packages/orq-rc/src/models/operations/retrievedatasource.ts +0 -273
- package/packages/orq-rc/src/models/operations/searchknowledge.ts +0 -1673
- package/packages/orq-rc/src/models/operations/updatechunk.ts +0 -418
- package/packages/orq-rc/src/models/operations/updatedatapoint.ts +0 -1729
- package/packages/orq-rc/src/models/operations/updatedataset.ts +0 -393
- package/packages/orq-rc/src/models/operations/updatedatasource.ts +0 -345
- package/packages/orq-rc/src/models/operations/updateknowledge.ts +0 -790
- package/packages/orq-rc/src/models/operations/updateprompt.ts +0 -3929
- package/packages/orq-rc/src/sdk/contacts.ts +0 -27
- package/packages/orq-rc/src/sdk/datasets.ts +0 -222
- package/packages/orq-rc/src/sdk/deployments.ts +0 -89
- package/packages/orq-rc/src/sdk/feedback.ts +0 -27
- package/packages/orq-rc/src/sdk/files.ts +0 -78
- package/packages/orq-rc/src/sdk/index.ts +0 -5
- package/packages/orq-rc/src/sdk/knowledge.ts +0 -261
- package/packages/orq-rc/src/sdk/metrics.ts +0 -27
- package/packages/orq-rc/src/sdk/prompts.ts +0 -126
- package/packages/orq-rc/src/sdk/remoteconfigs.ts +0 -24
- package/packages/orq-rc/src/sdk/sdk.ts +0 -55
- package/packages/orq-rc/src/types/async.ts +0 -68
- package/packages/orq-rc/src/types/blobs.ts +0 -31
- package/packages/orq-rc/src/types/constdatetime.ts +0 -15
- package/packages/orq-rc/src/types/enums.ts +0 -16
- package/packages/orq-rc/src/types/fp.ts +0 -50
- package/packages/orq-rc/src/types/index.ts +0 -11
- package/packages/orq-rc/src/types/operations.ts +0 -105
- package/packages/orq-rc/src/types/rfcdate.ts +0 -54
- package/packages/orq-rc/src/types/streams.ts +0 -21
- package/packages/orq-rc/tsconfig.json +0 -41
|
@@ -1,261 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import * as components from "../models/components/index.js";
|
|
6
|
-
import { env } from "./env.js";
|
|
7
|
-
|
|
8
|
-
type OAuth2PasswordFlow = {
|
|
9
|
-
username: string;
|
|
10
|
-
password?: string | undefined;
|
|
11
|
-
clientID: string;
|
|
12
|
-
clientSecret?: string | undefined;
|
|
13
|
-
tokenURL: string;
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
export enum SecurityErrorCode {
|
|
17
|
-
Incomplete = "incomplete",
|
|
18
|
-
UnrecognisedSecurityType = "unrecognized_security_type",
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export class SecurityError extends Error {
|
|
22
|
-
constructor(
|
|
23
|
-
public code: SecurityErrorCode,
|
|
24
|
-
message: string,
|
|
25
|
-
) {
|
|
26
|
-
super(message);
|
|
27
|
-
this.name = "SecurityError";
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
static incomplete(): SecurityError {
|
|
31
|
-
return new SecurityError(
|
|
32
|
-
SecurityErrorCode.Incomplete,
|
|
33
|
-
"Security requirements not met in order to perform the operation",
|
|
34
|
-
);
|
|
35
|
-
}
|
|
36
|
-
static unrecognizedType(type: string): SecurityError {
|
|
37
|
-
return new SecurityError(
|
|
38
|
-
SecurityErrorCode.UnrecognisedSecurityType,
|
|
39
|
-
`Unrecognised security type: ${type}`,
|
|
40
|
-
);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export type SecurityState = {
|
|
45
|
-
basic: { username?: string | undefined; password?: string | undefined };
|
|
46
|
-
headers: Record<string, string>;
|
|
47
|
-
queryParams: Record<string, string>;
|
|
48
|
-
cookies: Record<string, string>;
|
|
49
|
-
oauth2: ({ type: "password" } & OAuth2PasswordFlow) | { type: "none" };
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
type SecurityInputBasic = {
|
|
53
|
-
type: "http:basic";
|
|
54
|
-
value:
|
|
55
|
-
| { username?: string | undefined; password?: string | undefined }
|
|
56
|
-
| null
|
|
57
|
-
| undefined;
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
type SecurityInputBearer = {
|
|
61
|
-
type: "http:bearer";
|
|
62
|
-
value: string | null | undefined;
|
|
63
|
-
fieldName: string;
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
type SecurityInputAPIKey = {
|
|
67
|
-
type: "apiKey:header" | "apiKey:query" | "apiKey:cookie";
|
|
68
|
-
value: string | null | undefined;
|
|
69
|
-
fieldName: string;
|
|
70
|
-
};
|
|
71
|
-
|
|
72
|
-
type SecurityInputOIDC = {
|
|
73
|
-
type: "openIdConnect";
|
|
74
|
-
value: string | null | undefined;
|
|
75
|
-
fieldName: string;
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
type SecurityInputOAuth2 = {
|
|
79
|
-
type: "oauth2";
|
|
80
|
-
value: string | null | undefined;
|
|
81
|
-
fieldName: string;
|
|
82
|
-
};
|
|
83
|
-
|
|
84
|
-
type SecurityInputOAuth2ClientCredentials = {
|
|
85
|
-
type: "oauth2:client_credentials";
|
|
86
|
-
value:
|
|
87
|
-
| { clientID?: string | undefined; clientSecret?: string | undefined }
|
|
88
|
-
| null
|
|
89
|
-
| string
|
|
90
|
-
| undefined;
|
|
91
|
-
fieldName?: string;
|
|
92
|
-
};
|
|
93
|
-
|
|
94
|
-
type SecurityInputOAuth2PasswordCredentials = {
|
|
95
|
-
type: "oauth2:password";
|
|
96
|
-
value:
|
|
97
|
-
| string
|
|
98
|
-
| null
|
|
99
|
-
| undefined;
|
|
100
|
-
fieldName?: string;
|
|
101
|
-
};
|
|
102
|
-
|
|
103
|
-
type SecurityInputCustom = {
|
|
104
|
-
type: "http:custom";
|
|
105
|
-
value: any | null | undefined;
|
|
106
|
-
fieldName?: string;
|
|
107
|
-
};
|
|
108
|
-
|
|
109
|
-
export type SecurityInput =
|
|
110
|
-
| SecurityInputBasic
|
|
111
|
-
| SecurityInputBearer
|
|
112
|
-
| SecurityInputAPIKey
|
|
113
|
-
| SecurityInputOAuth2
|
|
114
|
-
| SecurityInputOAuth2ClientCredentials
|
|
115
|
-
| SecurityInputOAuth2PasswordCredentials
|
|
116
|
-
| SecurityInputOIDC
|
|
117
|
-
| SecurityInputCustom;
|
|
118
|
-
|
|
119
|
-
export function resolveSecurity(
|
|
120
|
-
...options: SecurityInput[][]
|
|
121
|
-
): SecurityState | null {
|
|
122
|
-
const state: SecurityState = {
|
|
123
|
-
basic: {},
|
|
124
|
-
headers: {},
|
|
125
|
-
queryParams: {},
|
|
126
|
-
cookies: {},
|
|
127
|
-
oauth2: { type: "none" },
|
|
128
|
-
};
|
|
129
|
-
|
|
130
|
-
const option = options.find((opts) => {
|
|
131
|
-
return opts.every((o) => {
|
|
132
|
-
if (o.value == null) {
|
|
133
|
-
return false;
|
|
134
|
-
} else if (o.type === "http:basic") {
|
|
135
|
-
return o.value.username != null || o.value.password != null;
|
|
136
|
-
} else if (o.type === "http:custom") {
|
|
137
|
-
return null;
|
|
138
|
-
} else if (o.type === "oauth2:password") {
|
|
139
|
-
return (
|
|
140
|
-
typeof o.value === "string" && !!o.value
|
|
141
|
-
);
|
|
142
|
-
} else if (o.type === "oauth2:client_credentials") {
|
|
143
|
-
if (typeof o.value == "string") {
|
|
144
|
-
return !!o.value;
|
|
145
|
-
}
|
|
146
|
-
return o.value.clientID != null || o.value.clientSecret != null;
|
|
147
|
-
} else if (typeof o.value === "string") {
|
|
148
|
-
return !!o.value;
|
|
149
|
-
} else {
|
|
150
|
-
throw new Error(
|
|
151
|
-
`Unrecognized security type: ${o.type} (value type: ${typeof o
|
|
152
|
-
.value})`,
|
|
153
|
-
);
|
|
154
|
-
}
|
|
155
|
-
});
|
|
156
|
-
});
|
|
157
|
-
if (option == null) {
|
|
158
|
-
return null;
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
option.forEach((spec) => {
|
|
162
|
-
if (spec.value == null) {
|
|
163
|
-
return;
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
const { type } = spec;
|
|
167
|
-
|
|
168
|
-
switch (type) {
|
|
169
|
-
case "apiKey:header":
|
|
170
|
-
state.headers[spec.fieldName] = spec.value;
|
|
171
|
-
break;
|
|
172
|
-
case "apiKey:query":
|
|
173
|
-
state.queryParams[spec.fieldName] = spec.value;
|
|
174
|
-
break;
|
|
175
|
-
case "apiKey:cookie":
|
|
176
|
-
state.cookies[spec.fieldName] = spec.value;
|
|
177
|
-
break;
|
|
178
|
-
case "http:basic":
|
|
179
|
-
applyBasic(state, spec);
|
|
180
|
-
break;
|
|
181
|
-
case "http:custom":
|
|
182
|
-
break;
|
|
183
|
-
case "http:bearer":
|
|
184
|
-
applyBearer(state, spec);
|
|
185
|
-
break;
|
|
186
|
-
case "oauth2":
|
|
187
|
-
applyBearer(state, spec);
|
|
188
|
-
break;
|
|
189
|
-
case "oauth2:password":
|
|
190
|
-
applyBearer(state, spec);
|
|
191
|
-
break;
|
|
192
|
-
case "oauth2:client_credentials":
|
|
193
|
-
break;
|
|
194
|
-
case "openIdConnect":
|
|
195
|
-
applyBearer(state, spec);
|
|
196
|
-
break;
|
|
197
|
-
default:
|
|
198
|
-
spec satisfies never;
|
|
199
|
-
throw SecurityError.unrecognizedType(type);
|
|
200
|
-
}
|
|
201
|
-
});
|
|
202
|
-
|
|
203
|
-
return state;
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
function applyBasic(
|
|
207
|
-
state: SecurityState,
|
|
208
|
-
spec: SecurityInputBasic,
|
|
209
|
-
) {
|
|
210
|
-
if (spec.value == null) {
|
|
211
|
-
return;
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
state.basic = spec.value;
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
function applyBearer(
|
|
218
|
-
state: SecurityState,
|
|
219
|
-
spec:
|
|
220
|
-
| SecurityInputBearer
|
|
221
|
-
| SecurityInputOAuth2
|
|
222
|
-
| SecurityInputOIDC
|
|
223
|
-
| SecurityInputOAuth2PasswordCredentials,
|
|
224
|
-
) {
|
|
225
|
-
if (typeof spec.value !== "string" || !spec.value) {
|
|
226
|
-
return;
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
let value = spec.value;
|
|
230
|
-
if (value.slice(0, 7).toLowerCase() !== "bearer ") {
|
|
231
|
-
value = `Bearer ${value}`;
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
if (spec.fieldName !== undefined) {
|
|
235
|
-
state.headers[spec.fieldName] = value;
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
export function resolveGlobalSecurity(
|
|
240
|
-
security: Partial<components.Security> | null | undefined,
|
|
241
|
-
): SecurityState | null {
|
|
242
|
-
return resolveSecurity(
|
|
243
|
-
[
|
|
244
|
-
{
|
|
245
|
-
fieldName: "Authorization",
|
|
246
|
-
type: "http:bearer",
|
|
247
|
-
value: security?.apiKey ?? env().ORQ_API_KEY,
|
|
248
|
-
},
|
|
249
|
-
],
|
|
250
|
-
);
|
|
251
|
-
}
|
|
252
|
-
|
|
253
|
-
export async function extractSecurity<
|
|
254
|
-
T extends string | Record<string, unknown>,
|
|
255
|
-
>(sec: T | (() => Promise<T>) | undefined): Promise<T | undefined> {
|
|
256
|
-
if (sec == null) {
|
|
257
|
-
return;
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
return typeof sec === "function" ? sec() : sec;
|
|
261
|
-
}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
const hasOwn = Object.prototype.hasOwnProperty;
|
|
6
|
-
|
|
7
|
-
export type Params = Partial<Record<string, string | number>>;
|
|
8
|
-
|
|
9
|
-
export function pathToFunc(
|
|
10
|
-
pathPattern: string,
|
|
11
|
-
options?: { charEncoding?: "percent" | "none" },
|
|
12
|
-
): (params?: Params) => string {
|
|
13
|
-
const paramRE = /\{([a-zA-Z0-9_]+?)\}/g;
|
|
14
|
-
|
|
15
|
-
return function buildURLPath(params: Record<string, unknown> = {}): string {
|
|
16
|
-
return pathPattern.replace(paramRE, function (_, placeholder) {
|
|
17
|
-
if (!hasOwn.call(params, placeholder)) {
|
|
18
|
-
throw new Error(`Parameter '${placeholder}' is required`);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
const value = params[placeholder];
|
|
22
|
-
if (typeof value !== "string" && typeof value !== "number") {
|
|
23
|
-
throw new Error(
|
|
24
|
-
`Parameter '${placeholder}' must be a string or number`,
|
|
25
|
-
);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
return options?.charEncoding === "percent"
|
|
29
|
-
? encodeURIComponent(`${value}`)
|
|
30
|
-
: `${value}`;
|
|
31
|
-
});
|
|
32
|
-
};
|
|
33
|
-
}
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import { buildCommand } from "@stricli/core";
|
|
6
|
-
import { numberParser } from "@stricli/core";
|
|
7
|
-
import * as z from "zod";
|
|
8
|
-
import { consoleLoggerLevels } from "../../console-logger.js";
|
|
9
|
-
import { mcpScopes } from "../../scopes.js";
|
|
10
|
-
|
|
11
|
-
export const startCommand = buildCommand({
|
|
12
|
-
loader: async () => {
|
|
13
|
-
const { main } = await import("./impl.js");
|
|
14
|
-
return main;
|
|
15
|
-
},
|
|
16
|
-
parameters: {
|
|
17
|
-
flags: {
|
|
18
|
-
transport: {
|
|
19
|
-
kind: "enum",
|
|
20
|
-
brief: "The transport to use for communicating with the server",
|
|
21
|
-
default: "stdio",
|
|
22
|
-
values: ["stdio", "sse"],
|
|
23
|
-
},
|
|
24
|
-
port: {
|
|
25
|
-
kind: "parsed",
|
|
26
|
-
brief: "The port to use when the SSE transport is enabled",
|
|
27
|
-
default: "2718",
|
|
28
|
-
parse: (val: string) =>
|
|
29
|
-
z.coerce.number().int().gte(0).lt(65536).parse(val),
|
|
30
|
-
},
|
|
31
|
-
tool: {
|
|
32
|
-
kind: "parsed",
|
|
33
|
-
brief: "Specify tools to mount on the server",
|
|
34
|
-
optional: true,
|
|
35
|
-
variadic: true,
|
|
36
|
-
parse: (value) => {
|
|
37
|
-
return z.string().parse(value);
|
|
38
|
-
},
|
|
39
|
-
},
|
|
40
|
-
...(mcpScopes.length
|
|
41
|
-
? {
|
|
42
|
-
scope: {
|
|
43
|
-
kind: "enum",
|
|
44
|
-
brief:
|
|
45
|
-
"Mount tools/resources that match given scope (repeatable flag)",
|
|
46
|
-
values: mcpScopes,
|
|
47
|
-
variadic: true,
|
|
48
|
-
optional: true,
|
|
49
|
-
},
|
|
50
|
-
}
|
|
51
|
-
: {}),
|
|
52
|
-
"api-key": {
|
|
53
|
-
kind: "parsed",
|
|
54
|
-
brief: "Sets the apiKey auth field for the API",
|
|
55
|
-
optional: true,
|
|
56
|
-
parse: (value) => {
|
|
57
|
-
return z.string().parse(value);
|
|
58
|
-
},
|
|
59
|
-
},
|
|
60
|
-
"contact-id": {
|
|
61
|
-
kind: "parsed",
|
|
62
|
-
brief:
|
|
63
|
-
"Allows setting the contactId parameter for all supported operations",
|
|
64
|
-
optional: true,
|
|
65
|
-
parse: (value) => {
|
|
66
|
-
return z.string().parse(value);
|
|
67
|
-
},
|
|
68
|
-
},
|
|
69
|
-
environment: {
|
|
70
|
-
kind: "parsed",
|
|
71
|
-
brief:
|
|
72
|
-
"Allows setting the environment parameter for all supported operations",
|
|
73
|
-
optional: true,
|
|
74
|
-
parse: (value) => {
|
|
75
|
-
return z.string().parse(value);
|
|
76
|
-
},
|
|
77
|
-
},
|
|
78
|
-
"server-url": {
|
|
79
|
-
kind: "parsed",
|
|
80
|
-
brief: "Overrides the default server URL used by the SDK",
|
|
81
|
-
optional: true,
|
|
82
|
-
parse: (value) => new URL(value).toString(),
|
|
83
|
-
},
|
|
84
|
-
"server-index": {
|
|
85
|
-
kind: "parsed",
|
|
86
|
-
brief: "Selects a predefined server used by the SDK",
|
|
87
|
-
optional: true,
|
|
88
|
-
parse: numberParser,
|
|
89
|
-
},
|
|
90
|
-
"log-level": {
|
|
91
|
-
kind: "enum",
|
|
92
|
-
brief: "The log level to use for the server",
|
|
93
|
-
default: "info",
|
|
94
|
-
values: consoleLoggerLevels,
|
|
95
|
-
},
|
|
96
|
-
env: {
|
|
97
|
-
kind: "parsed",
|
|
98
|
-
brief: "Environment variables made available to the server",
|
|
99
|
-
optional: true,
|
|
100
|
-
variadic: true,
|
|
101
|
-
parse: (val: string) => {
|
|
102
|
-
const sepIdx = val.indexOf("=");
|
|
103
|
-
if (sepIdx === -1) {
|
|
104
|
-
throw new Error("Invalid environment variable format");
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
const key = val.slice(0, sepIdx);
|
|
108
|
-
const value = val.slice(sepIdx + 1);
|
|
109
|
-
|
|
110
|
-
return [
|
|
111
|
-
z.string().nonempty({
|
|
112
|
-
message: "Environment variable key must be a non-empty string",
|
|
113
|
-
}).parse(key),
|
|
114
|
-
z.string().nonempty({
|
|
115
|
-
message: "Environment variable value must be a non-empty string",
|
|
116
|
-
}).parse(value),
|
|
117
|
-
] satisfies [string, string];
|
|
118
|
-
},
|
|
119
|
-
},
|
|
120
|
-
},
|
|
121
|
-
},
|
|
122
|
-
docs: {
|
|
123
|
-
brief: "Run the Model Context Protocol server",
|
|
124
|
-
},
|
|
125
|
-
});
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import { SSEServerTransport } from "@modelcontextprotocol/sdk/server/sse.js";
|
|
6
|
-
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
7
|
-
import express from "express";
|
|
8
|
-
import { SDKOptions } from "../../../lib/config.js";
|
|
9
|
-
import { LocalContext } from "../../cli.js";
|
|
10
|
-
import {
|
|
11
|
-
ConsoleLoggerLevel,
|
|
12
|
-
createConsoleLogger,
|
|
13
|
-
} from "../../console-logger.js";
|
|
14
|
-
import { MCPScope } from "../../scopes.js";
|
|
15
|
-
import { createMCPServer } from "../../server.js";
|
|
16
|
-
|
|
17
|
-
interface StartCommandFlags {
|
|
18
|
-
readonly transport: "stdio" | "sse";
|
|
19
|
-
readonly port: number;
|
|
20
|
-
readonly tool?: string[];
|
|
21
|
-
readonly scope?: MCPScope[];
|
|
22
|
-
readonly "api-key"?: string | undefined;
|
|
23
|
-
readonly "contact-id"?: SDKOptions["contactId"] | undefined;
|
|
24
|
-
readonly environment?: SDKOptions["environment"] | undefined;
|
|
25
|
-
readonly "server-url"?: string;
|
|
26
|
-
readonly "server-index"?: SDKOptions["serverIdx"];
|
|
27
|
-
readonly "log-level": ConsoleLoggerLevel;
|
|
28
|
-
readonly env?: [string, string][];
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export async function main(this: LocalContext, flags: StartCommandFlags) {
|
|
32
|
-
flags.env?.forEach(([key, value]) => {
|
|
33
|
-
process.env[key] = value;
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
switch (flags.transport) {
|
|
37
|
-
case "stdio":
|
|
38
|
-
await startStdio(flags);
|
|
39
|
-
break;
|
|
40
|
-
case "sse":
|
|
41
|
-
await startSSE(flags);
|
|
42
|
-
break;
|
|
43
|
-
default:
|
|
44
|
-
throw new Error(`Invalid transport: ${flags.transport}`);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
async function startStdio(flags: StartCommandFlags) {
|
|
49
|
-
const logger = createConsoleLogger(flags["log-level"]);
|
|
50
|
-
const transport = new StdioServerTransport();
|
|
51
|
-
const server = createMCPServer({
|
|
52
|
-
logger,
|
|
53
|
-
allowedTools: flags.tool,
|
|
54
|
-
scopes: flags.scope,
|
|
55
|
-
...{ apiKey: flags["api-key"] },
|
|
56
|
-
contactId: flags["contact-id"],
|
|
57
|
-
environment: flags.environment,
|
|
58
|
-
serverURL: flags["server-url"],
|
|
59
|
-
serverIdx: flags["server-index"],
|
|
60
|
-
});
|
|
61
|
-
await server.connect(transport);
|
|
62
|
-
|
|
63
|
-
const abort = async () => {
|
|
64
|
-
await server.close();
|
|
65
|
-
process.exit(0);
|
|
66
|
-
};
|
|
67
|
-
process.on("SIGTERM", abort);
|
|
68
|
-
process.on("SIGINT", abort);
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
async function startSSE(flags: StartCommandFlags) {
|
|
72
|
-
const logger = createConsoleLogger(flags["log-level"]);
|
|
73
|
-
const app = express();
|
|
74
|
-
const mcpServer = createMCPServer({
|
|
75
|
-
logger,
|
|
76
|
-
allowedTools: flags.tool,
|
|
77
|
-
scopes: flags.scope,
|
|
78
|
-
...{ apiKey: flags["api-key"] },
|
|
79
|
-
contactId: flags["contact-id"],
|
|
80
|
-
environment: flags.environment,
|
|
81
|
-
serverURL: flags["server-url"],
|
|
82
|
-
serverIdx: flags["server-index"],
|
|
83
|
-
});
|
|
84
|
-
let transport: SSEServerTransport | undefined;
|
|
85
|
-
const controller = new AbortController();
|
|
86
|
-
|
|
87
|
-
app.get("/sse", async (_req, res) => {
|
|
88
|
-
transport = new SSEServerTransport("/message", res);
|
|
89
|
-
|
|
90
|
-
await mcpServer.connect(transport);
|
|
91
|
-
|
|
92
|
-
mcpServer.server.onclose = async () => {
|
|
93
|
-
res.end();
|
|
94
|
-
};
|
|
95
|
-
});
|
|
96
|
-
|
|
97
|
-
app.post("/message", async (req, res) => {
|
|
98
|
-
if (!transport) {
|
|
99
|
-
throw new Error("Server transport not initialized");
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
await transport.handlePostMessage(req, res);
|
|
103
|
-
});
|
|
104
|
-
|
|
105
|
-
const httpServer = app.listen(flags.port, "0.0.0.0", () => {
|
|
106
|
-
const ha = httpServer.address();
|
|
107
|
-
const host = typeof ha === "string" ? ha : `${ha?.address}:${ha?.port}`;
|
|
108
|
-
logger.info("MCP HTTP server started", { host });
|
|
109
|
-
});
|
|
110
|
-
|
|
111
|
-
let closing = false;
|
|
112
|
-
controller.signal.addEventListener("abort", async () => {
|
|
113
|
-
if (closing) {
|
|
114
|
-
logger.info("Received second signal. Forcing shutdown.");
|
|
115
|
-
process.exit(1);
|
|
116
|
-
}
|
|
117
|
-
closing = true;
|
|
118
|
-
|
|
119
|
-
logger.info("Shutting down MCP server");
|
|
120
|
-
|
|
121
|
-
await mcpServer.close();
|
|
122
|
-
|
|
123
|
-
logger.info("Shutting down HTTP server");
|
|
124
|
-
|
|
125
|
-
const timer = setTimeout(() => {
|
|
126
|
-
logger.info("Forcing shutdown");
|
|
127
|
-
process.exit(1);
|
|
128
|
-
}, 5000);
|
|
129
|
-
|
|
130
|
-
httpServer.close(() => {
|
|
131
|
-
clearTimeout(timer);
|
|
132
|
-
logger.info("Graceful shutdown complete");
|
|
133
|
-
process.exit(0);
|
|
134
|
-
});
|
|
135
|
-
});
|
|
136
|
-
|
|
137
|
-
const abort = () => controller.abort();
|
|
138
|
-
process.on("SIGTERM", abort);
|
|
139
|
-
process.on("SIGINT", abort);
|
|
140
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import { CommandContext, StricliProcess } from "@stricli/core";
|
|
6
|
-
|
|
7
|
-
export interface LocalContext extends CommandContext {
|
|
8
|
-
readonly process: StricliProcess;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export function buildContext(process: NodeJS.Process): LocalContext {
|
|
12
|
-
return { process: process as StricliProcess };
|
|
13
|
-
}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
export const consoleLoggerLevels = [
|
|
6
|
-
"debug",
|
|
7
|
-
"warning",
|
|
8
|
-
"info",
|
|
9
|
-
"error",
|
|
10
|
-
] as const;
|
|
11
|
-
|
|
12
|
-
export type ConsoleLoggerLevel = (typeof consoleLoggerLevels)[number];
|
|
13
|
-
|
|
14
|
-
export type ConsoleLogger = {
|
|
15
|
-
[key in ConsoleLoggerLevel]: (
|
|
16
|
-
message: string,
|
|
17
|
-
data?: Record<string, unknown>,
|
|
18
|
-
) => void;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
export function createConsoleLogger(level: ConsoleLoggerLevel): ConsoleLogger {
|
|
22
|
-
const min = consoleLoggerLevels.indexOf(level);
|
|
23
|
-
const noop = () => {};
|
|
24
|
-
|
|
25
|
-
const logger: ConsoleLogger = {
|
|
26
|
-
debug: noop,
|
|
27
|
-
warning: noop,
|
|
28
|
-
info: noop,
|
|
29
|
-
error: noop,
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
return consoleLoggerLevels.reduce((logger, level, i) => {
|
|
33
|
-
if (i < min) {
|
|
34
|
-
return logger;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
logger[level] = log.bind(null, level);
|
|
38
|
-
|
|
39
|
-
return logger;
|
|
40
|
-
}, logger);
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
function log(
|
|
44
|
-
level: ConsoleLoggerLevel,
|
|
45
|
-
message: string,
|
|
46
|
-
data?: Record<string, unknown>,
|
|
47
|
-
) {
|
|
48
|
-
let line = "";
|
|
49
|
-
const allData = [{ msg: message, l: level }, data];
|
|
50
|
-
|
|
51
|
-
for (const ctx of allData) {
|
|
52
|
-
for (const [key, value] of Object.entries(ctx || {})) {
|
|
53
|
-
if (value == null) {
|
|
54
|
-
line += ` ${key}=<${value}>`;
|
|
55
|
-
} else if (typeof value === "function") {
|
|
56
|
-
line += ` ${key}=<function>`;
|
|
57
|
-
} else if (typeof value === "symbol") {
|
|
58
|
-
line += ` ${key}=${value.toString()}`;
|
|
59
|
-
} else if (typeof value === "string") {
|
|
60
|
-
const v = value.search(/\s/g) >= 0 ? JSON.stringify(value) : value;
|
|
61
|
-
line += ` ${key}=${v}`;
|
|
62
|
-
} else if (typeof value !== "object") {
|
|
63
|
-
line += ` ${key}=${value}`;
|
|
64
|
-
} else {
|
|
65
|
-
line += ` ${key}="${JSON.stringify(value)}"`;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
console.error(line);
|
|
71
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import { ZodRawShape } from "zod";
|
|
6
|
-
import { PromptArgsRawShape, PromptDefinition } from "./prompts.js";
|
|
7
|
-
import { ResourceDefinition, ResourceTemplateDefinition } from "./resources.js";
|
|
8
|
-
import { ToolDefinition } from "./tools.js";
|
|
9
|
-
|
|
10
|
-
export type Register = {
|
|
11
|
-
tool: <A extends ZodRawShape | undefined>(def: ToolDefinition<A>) => void;
|
|
12
|
-
resource: (def: ResourceDefinition) => void;
|
|
13
|
-
resourceTemplate: (def: ResourceTemplateDefinition) => void;
|
|
14
|
-
prompt: <A extends PromptArgsRawShape | undefined>(
|
|
15
|
-
prompt: PromptDefinition<A>,
|
|
16
|
-
) => void;
|
|
17
|
-
};
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import { buildApplication, buildRouteMap, run } from "@stricli/core";
|
|
6
|
-
import process from "node:process";
|
|
7
|
-
import { buildContext } from "./cli.js";
|
|
8
|
-
import { startCommand } from "./cli/start/command.js";
|
|
9
|
-
|
|
10
|
-
const routes = buildRouteMap({
|
|
11
|
-
routes: {
|
|
12
|
-
start: startCommand,
|
|
13
|
-
},
|
|
14
|
-
docs: {
|
|
15
|
-
brief: "MCP server CLI",
|
|
16
|
-
},
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
export const app = buildApplication(routes, {
|
|
20
|
-
name: "mcp",
|
|
21
|
-
versionInfo: {
|
|
22
|
-
currentVersion: "3.3.0-rc.34",
|
|
23
|
-
},
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
run(app, process.argv.slice(2), buildContext(process));
|