@moovio/sdk 0.0.0-dev.17 → 0.0.0-dev.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -2
- package/bin/mcp-server.js +56 -11
- package/bin/mcp-server.js.map +10 -9
- package/hooks/access-token-hook.d.ts +25 -0
- package/hooks/access-token-hook.d.ts.map +1 -0
- package/hooks/access-token-hook.js +60 -0
- package/hooks/access-token-hook.js.map +1 -0
- package/hooks/registration.d.ts.map +1 -1
- package/hooks/registration.js +4 -0
- package/hooks/registration.js.map +1 -1
- package/jsr.json +1 -1
- package/lib/config.d.ts +7 -3
- package/lib/config.d.ts.map +1 -1
- package/lib/config.js +3 -3
- package/lib/config.js.map +1 -1
- package/mcp-server/cli/start/command.d.ts.map +1 -1
- package/mcp-server/cli/start/command.js +8 -0
- package/mcp-server/cli/start/command.js.map +1 -1
- package/mcp-server/cli/start/impl.d.ts +1 -0
- package/mcp-server/cli/start/impl.d.ts.map +1 -1
- package/mcp-server/cli/start/impl.js +2 -0
- package/mcp-server/cli/start/impl.js.map +1 -1
- package/mcp-server/mcp-server.js +1 -1
- package/mcp-server/server.d.ts +1 -0
- package/mcp-server/server.d.ts.map +1 -1
- package/mcp-server/server.js +2 -1
- package/mcp-server/server.js.map +1 -1
- package/package.json +1 -1
- package/src/hooks/access-token-hook.ts +73 -0
- package/src/hooks/registration.ts +5 -0
- package/src/lib/config.ts +8 -3
- package/src/mcp-server/cli/start/command.ts +9 -0
- package/src/mcp-server/cli/start/impl.ts +3 -0
- package/src/mcp-server/mcp-server.ts +1 -1
- package/src/mcp-server/server.ts +3 -1
- package/test/tests/accessToken.test.ts +86 -0
package/README.md
CHANGED
|
@@ -95,7 +95,8 @@ Add the following server definition to your `claude_desktop_config.json` file:
|
|
|
95
95
|
"--",
|
|
96
96
|
"mcp", "start",
|
|
97
97
|
"--username", "...",
|
|
98
|
-
"--password", "..."
|
|
98
|
+
"--password", "...",
|
|
99
|
+
"--access-token", "..."
|
|
99
100
|
]
|
|
100
101
|
}
|
|
101
102
|
}
|
|
@@ -119,7 +120,8 @@ Create a `.cursor/mcp.json` file in your project root with the following content
|
|
|
119
120
|
"--",
|
|
120
121
|
"mcp", "start",
|
|
121
122
|
"--username", "...",
|
|
122
|
-
"--password", "..."
|
|
123
|
+
"--password", "...",
|
|
124
|
+
"--access-token", "..."
|
|
123
125
|
]
|
|
124
126
|
}
|
|
125
127
|
}
|
package/bin/mcp-server.js
CHANGED
|
@@ -53512,6 +53512,36 @@ var init_mcp = __esm(() => {
|
|
|
53512
53512
|
};
|
|
53513
53513
|
});
|
|
53514
53514
|
|
|
53515
|
+
// src/hooks/access-token-hook.ts
|
|
53516
|
+
class AccessTokenHook {
|
|
53517
|
+
sdkInit(opts) {
|
|
53518
|
+
const token = opts.accessToken;
|
|
53519
|
+
const hasToken = typeof token === "string" && token.length > 0;
|
|
53520
|
+
if (hasToken && opts.security != null) {
|
|
53521
|
+
throw new Error("Moov SDK: `accessToken` and `security.username`/`password` cannot " + "both be set. Use `accessToken` for OAuth2 bearer auth " + "(typically client-side) or `security.username`/`password` for " + "HTTP Basic auth with API keys (server-side).");
|
|
53522
|
+
}
|
|
53523
|
+
if (isBrowserLike && opts.security != null) {
|
|
53524
|
+
throw new Error("Moov SDK: HTTP Basic credentials were provided in a browser-like " + "environment. API keys must never be embedded in client-side " + "code. Mint a short-lived OAuth2 access token on your server " + "and pass it via the `accessToken` option instead.");
|
|
53525
|
+
}
|
|
53526
|
+
return opts;
|
|
53527
|
+
}
|
|
53528
|
+
beforeRequest(ctx, request) {
|
|
53529
|
+
const token = ctx.options.accessToken;
|
|
53530
|
+
if (!token || request.headers.has("Authorization")) {
|
|
53531
|
+
return request;
|
|
53532
|
+
}
|
|
53533
|
+
const next = new Request(request);
|
|
53534
|
+
next.headers.set("Authorization", `Bearer ${token}`);
|
|
53535
|
+
return next;
|
|
53536
|
+
}
|
|
53537
|
+
}
|
|
53538
|
+
var gt, webWorkerLike, isBrowserLike;
|
|
53539
|
+
var init_access_token_hook = __esm(() => {
|
|
53540
|
+
gt = typeof globalThis === "undefined" ? null : globalThis;
|
|
53541
|
+
webWorkerLike = typeof gt === "object" && gt != null && "importScripts" in gt && typeof gt["importScripts"] === "function";
|
|
53542
|
+
isBrowserLike = webWorkerLike || typeof navigator !== "undefined" && "serviceWorker" in navigator || typeof window === "object" && typeof window.document !== "undefined";
|
|
53543
|
+
});
|
|
53544
|
+
|
|
53515
53545
|
// src/lib/url.ts
|
|
53516
53546
|
function pathToFunc(pathPattern, options) {
|
|
53517
53547
|
const paramRE = /\{([a-zA-Z0-9_][a-zA-Z0-9_-]*?)\}/g;
|
|
@@ -53556,9 +53586,9 @@ var init_config = __esm(() => {
|
|
|
53556
53586
|
SDK_METADATA = {
|
|
53557
53587
|
language: "typescript",
|
|
53558
53588
|
openapiDocVersion: "dev",
|
|
53559
|
-
sdkVersion: "0.0.0-dev.
|
|
53560
|
-
genVersion: "2.
|
|
53561
|
-
userAgent: "speakeasy-sdk/typescript 0.0.0-dev.
|
|
53589
|
+
sdkVersion: "0.0.0-dev.18",
|
|
53590
|
+
genVersion: "2.882.0",
|
|
53591
|
+
userAgent: "speakeasy-sdk/typescript 0.0.0-dev.18 2.882.0 dev @moovio/sdk"
|
|
53562
53592
|
};
|
|
53563
53593
|
});
|
|
53564
53594
|
|
|
@@ -53578,8 +53608,12 @@ var init_moov_version_hook = __esm(() => {
|
|
|
53578
53608
|
function initHooks(hooks) {
|
|
53579
53609
|
const versionHook = new MoovVersionHook;
|
|
53580
53610
|
hooks.registerBeforeRequestHook(versionHook);
|
|
53611
|
+
const accessTokenHook = new AccessTokenHook;
|
|
53612
|
+
hooks.registerSDKInitHook(accessTokenHook);
|
|
53613
|
+
hooks.registerBeforeRequestHook(accessTokenHook);
|
|
53581
53614
|
}
|
|
53582
53615
|
var init_registration = __esm(() => {
|
|
53616
|
+
init_access_token_hook();
|
|
53583
53617
|
init_moov_version_hook();
|
|
53584
53618
|
});
|
|
53585
53619
|
|
|
@@ -54362,7 +54396,7 @@ class ClientSDK {
|
|
|
54362
54396
|
for (const [k2, v2] of userHeaders) {
|
|
54363
54397
|
headers.set(k2, v2);
|
|
54364
54398
|
}
|
|
54365
|
-
if (!
|
|
54399
|
+
if (!isBrowserLike2) {
|
|
54366
54400
|
headers.set(conf.uaHeader ?? "user-agent", conf.userAgent ?? SDK_METADATA.userAgent);
|
|
54367
54401
|
}
|
|
54368
54402
|
const fetchOptions = {
|
|
@@ -54507,7 +54541,7 @@ async function logResponse(logger, res, req) {
|
|
|
54507
54541
|
logger.groupEnd();
|
|
54508
54542
|
logger.groupEnd();
|
|
54509
54543
|
}
|
|
54510
|
-
var
|
|
54544
|
+
var gt2, webWorkerLike2, isBrowserLike2, jsonLikeContentTypeRE, jsonlLikeContentTypeRE;
|
|
54511
54545
|
var init_sdks = __esm(() => {
|
|
54512
54546
|
init_hooks();
|
|
54513
54547
|
init_httpclienterrors();
|
|
@@ -54516,9 +54550,9 @@ var init_sdks = __esm(() => {
|
|
|
54516
54550
|
init_encodings();
|
|
54517
54551
|
init_http();
|
|
54518
54552
|
init_retries();
|
|
54519
|
-
|
|
54520
|
-
|
|
54521
|
-
|
|
54553
|
+
gt2 = typeof globalThis === "undefined" ? null : globalThis;
|
|
54554
|
+
webWorkerLike2 = typeof gt2 === "object" && gt2 != null && "importScripts" in gt2 && typeof gt2["importScripts"] === "function";
|
|
54555
|
+
isBrowserLike2 = webWorkerLike2 || typeof navigator !== "undefined" && "serviceWorker" in navigator || typeof window === "object" && typeof window.document !== "undefined";
|
|
54522
54556
|
jsonLikeContentTypeRE = /^(application|text)\/([^+]+\+)*json.*/;
|
|
54523
54557
|
jsonlLikeContentTypeRE = /^(application|text)\/([^+]+\+)*(jsonl|x-ndjson)\b.*/;
|
|
54524
54558
|
});
|
|
@@ -104171,10 +104205,11 @@ var init_webhooksUpdate2 = __esm(() => {
|
|
|
104171
104205
|
function createMCPServer(deps) {
|
|
104172
104206
|
const server = new McpServer({
|
|
104173
104207
|
name: "Moov",
|
|
104174
|
-
version: "0.0.0-dev.
|
|
104208
|
+
version: "0.0.0-dev.18"
|
|
104175
104209
|
});
|
|
104176
104210
|
const client = new MoovCore({
|
|
104177
104211
|
security: deps.security,
|
|
104212
|
+
accessToken: deps.accessToken,
|
|
104178
104213
|
serverURL: deps.serverURL,
|
|
104179
104214
|
serverIdx: deps.serverIdx
|
|
104180
104215
|
});
|
|
@@ -104598,6 +104633,7 @@ async function startStdio(flags) {
|
|
|
104598
104633
|
username: flags.username ?? "",
|
|
104599
104634
|
password: flags.password ?? ""
|
|
104600
104635
|
}),
|
|
104636
|
+
accessToken: flags["access-token"],
|
|
104601
104637
|
serverURL: flags["server-url"],
|
|
104602
104638
|
serverIdx: flags["server-index"]
|
|
104603
104639
|
});
|
|
@@ -104619,6 +104655,7 @@ async function startSSE(flags) {
|
|
|
104619
104655
|
username: flags.username ?? "",
|
|
104620
104656
|
password: flags.password ?? ""
|
|
104621
104657
|
}),
|
|
104658
|
+
accessToken: flags["access-token"],
|
|
104622
104659
|
serverURL: flags["server-url"],
|
|
104623
104660
|
serverIdx: flags["server-index"]
|
|
104624
104661
|
});
|
|
@@ -105699,6 +105736,14 @@ var startCommand = tn({
|
|
|
105699
105736
|
return stringType().parse(value);
|
|
105700
105737
|
}
|
|
105701
105738
|
},
|
|
105739
|
+
"access-token": {
|
|
105740
|
+
kind: "parsed",
|
|
105741
|
+
brief: "Allows setting the accessToken parameter for all supported operations",
|
|
105742
|
+
optional: true,
|
|
105743
|
+
parse: (value) => {
|
|
105744
|
+
return stringType().parse(value);
|
|
105745
|
+
}
|
|
105746
|
+
},
|
|
105702
105747
|
"server-url": {
|
|
105703
105748
|
kind: "parsed",
|
|
105704
105749
|
brief: "Overrides the default server URL used by the SDK",
|
|
@@ -105758,7 +105803,7 @@ var routes = rn({
|
|
|
105758
105803
|
var app = Ve(routes, {
|
|
105759
105804
|
name: "mcp",
|
|
105760
105805
|
versionInfo: {
|
|
105761
|
-
currentVersion: "0.0.0-dev.
|
|
105806
|
+
currentVersion: "0.0.0-dev.18"
|
|
105762
105807
|
}
|
|
105763
105808
|
});
|
|
105764
105809
|
_t(app, process3.argv.slice(2), buildContext(process3));
|
|
@@ -105766,5 +105811,5 @@ export {
|
|
|
105766
105811
|
app
|
|
105767
105812
|
};
|
|
105768
105813
|
|
|
105769
|
-
//# debugId=
|
|
105814
|
+
//# debugId=2EDF81C8E59DA61764756E2164756E21
|
|
105770
105815
|
//# sourceMappingURL=mcp-server.js.map
|