chatbot-nc 2.2.38 → 2.2.40
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/dist/cjs/utils/exception.d.ts +23 -0
- package/dist/cjs/utils/exception.js +52 -0
- package/dist/cjs/utils/exception.js.map +1 -0
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/mcp-oauth.js +23 -18
- package/dist/cjs/utils/mcp-oauth.js.map +1 -1
- package/dist/cjs/utils/oauth.js +5 -6
- package/dist/cjs/utils/oauth.js.map +1 -1
- package/dist/esm/utils/exception.d.ts +23 -0
- package/dist/esm/utils/exception.js +45 -0
- package/dist/esm/utils/exception.js.map +1 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/mcp-oauth.js +23 -18
- package/dist/esm/utils/mcp-oauth.js.map +1 -1
- package/dist/esm/utils/oauth.js +5 -6
- package/dist/esm/utils/oauth.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
type ExceptionOptions = {
|
|
2
|
+
name?: string;
|
|
3
|
+
statusCode?: number;
|
|
4
|
+
error?: string;
|
|
5
|
+
code?: string;
|
|
6
|
+
};
|
|
7
|
+
type RequestOptions = Omit<ExceptionOptions, "name">;
|
|
8
|
+
export declare class HttpException extends Error {
|
|
9
|
+
statusCode: number;
|
|
10
|
+
error: string;
|
|
11
|
+
code: string;
|
|
12
|
+
constructor(message: string, options?: ExceptionOptions);
|
|
13
|
+
}
|
|
14
|
+
export declare class BadRequestRequest extends HttpException {
|
|
15
|
+
constructor(message: string, options?: RequestOptions);
|
|
16
|
+
}
|
|
17
|
+
export declare class OuthError extends HttpException {
|
|
18
|
+
constructor(message: string, options?: RequestOptions);
|
|
19
|
+
}
|
|
20
|
+
export declare class MCPOuthError extends HttpException {
|
|
21
|
+
constructor(message: string, options?: RequestOptions);
|
|
22
|
+
}
|
|
23
|
+
export {};
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MCPOuthError = exports.OuthError = exports.BadRequestRequest = exports.HttpException = void 0;
|
|
4
|
+
class HttpException extends Error {
|
|
5
|
+
constructor(message, options = {}) {
|
|
6
|
+
var _a, _b, _c, _d;
|
|
7
|
+
super(message);
|
|
8
|
+
this.name = (_a = options.name) !== null && _a !== void 0 ? _a : new.target.name;
|
|
9
|
+
this.statusCode = (_b = options.statusCode) !== null && _b !== void 0 ? _b : 500;
|
|
10
|
+
this.error = (_c = options.error) !== null && _c !== void 0 ? _c : "Internal_Server_Error";
|
|
11
|
+
this.code = (_d = options.code) !== null && _d !== void 0 ? _d : "INTERNAL_SERVER_ERROR";
|
|
12
|
+
Object.setPrototypeOf(this, new.target.prototype);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.HttpException = HttpException;
|
|
16
|
+
class BadRequestRequest extends HttpException {
|
|
17
|
+
constructor(message, options = {}) {
|
|
18
|
+
var _a, _b, _c;
|
|
19
|
+
super(message, {
|
|
20
|
+
name: "BadRequestRequest",
|
|
21
|
+
statusCode: (_a = options.statusCode) !== null && _a !== void 0 ? _a : 400,
|
|
22
|
+
error: (_b = options.error) !== null && _b !== void 0 ? _b : "Bad_Request",
|
|
23
|
+
code: (_c = options.code) !== null && _c !== void 0 ? _c : "BAD_REQUEST",
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.BadRequestRequest = BadRequestRequest;
|
|
28
|
+
class OuthError extends HttpException {
|
|
29
|
+
constructor(message, options = {}) {
|
|
30
|
+
var _a, _b, _c;
|
|
31
|
+
super(message, {
|
|
32
|
+
name: "OuthError",
|
|
33
|
+
statusCode: (_a = options.statusCode) !== null && _a !== void 0 ? _a : 400,
|
|
34
|
+
error: (_b = options.error) !== null && _b !== void 0 ? _b : "OuthError",
|
|
35
|
+
code: (_c = options.code) !== null && _c !== void 0 ? _c : "OUTH_ERROR",
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.OuthError = OuthError;
|
|
40
|
+
class MCPOuthError extends HttpException {
|
|
41
|
+
constructor(message, options = {}) {
|
|
42
|
+
var _a, _b, _c;
|
|
43
|
+
super(message, {
|
|
44
|
+
name: "MCPOuthError",
|
|
45
|
+
statusCode: (_a = options.statusCode) !== null && _a !== void 0 ? _a : 400,
|
|
46
|
+
error: (_b = options.error) !== null && _b !== void 0 ? _b : "MCPOuthError",
|
|
47
|
+
code: (_c = options.code) !== null && _c !== void 0 ? _c : "MCP_OUTH_ERROR",
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
exports.MCPOuthError = MCPOuthError;
|
|
52
|
+
//# sourceMappingURL=exception.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exception.js","sourceRoot":"","sources":["../../../utils/exception.ts"],"names":[],"mappings":";;;AASA,MAAa,aAAc,SAAQ,KAAK;IAKtC,YACE,OAAe,EACf,UAA4B,EAAE;;QAE9B,KAAK,CAAC,OAAO,CAAC,CAAC;QAEf,IAAI,CAAC,IAAI,GAAG,MAAA,OAAO,CAAC,IAAI,mCAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QAC5C,IAAI,CAAC,UAAU,GAAG,MAAA,OAAO,CAAC,UAAU,mCAAI,GAAG,CAAC;QAC5C,IAAI,CAAC,KAAK,GAAG,MAAA,OAAO,CAAC,KAAK,mCAAI,uBAAuB,CAAC;QACtD,IAAI,CAAC,IAAI,GAAG,MAAA,OAAO,CAAC,IAAI,mCAAI,uBAAuB,CAAC;QAEpD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;CACF;AAlBD,sCAkBC;AAED,MAAa,iBAAkB,SAAQ,aAAa;IAClD,YACE,OAAe,EACf,UAA0B,EAAE;;QAE5B,KAAK,CAAC,OAAO,EAAE;YACb,IAAI,EAAE,mBAAmB;YACzB,UAAU,EAAE,MAAA,OAAO,CAAC,UAAU,mCAAI,GAAG;YACrC,KAAK,EAAE,MAAA,OAAO,CAAC,KAAK,mCAAI,aAAa;YACrC,IAAI,EAAE,MAAA,OAAO,CAAC,IAAI,mCAAI,aAAa;SACpC,CAAC,CAAC;IACL,CAAC;CACF;AAZD,8CAYC;AAED,MAAa,SAAU,SAAQ,aAAa;IAC1C,YACE,OAAe,EACf,UAA0B,EAAE;;QAE5B,KAAK,CAAC,OAAO,EAAE;YACb,IAAI,EAAE,WAAW;YACjB,UAAU,EAAE,MAAA,OAAO,CAAC,UAAU,mCAAI,GAAG;YACrC,KAAK,EAAE,MAAA,OAAO,CAAC,KAAK,mCAAI,WAAW;YACnC,IAAI,EAAE,MAAA,OAAO,CAAC,IAAI,mCAAI,YAAY;SACnC,CAAC,CAAC;IACL,CAAC;CACF;AAZD,8BAYC;AAED,MAAa,YAAa,SAAQ,aAAa;IAC7C,YACE,OAAe,EACf,UAA0B,EAAE;;QAE5B,KAAK,CAAC,OAAO,EAAE;YACb,IAAI,EAAE,cAAc;YACpB,UAAU,EAAE,MAAA,OAAO,CAAC,UAAU,mCAAI,GAAG;YACrC,KAAK,EAAE,MAAA,OAAO,CAAC,KAAK,mCAAI,cAAc;YACtC,IAAI,EAAE,MAAA,OAAO,CAAC,IAAI,mCAAI,gBAAgB;SACvC,CAAC,CAAC;IACL,CAAC;CACF;AAZD,oCAYC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,qCAAkC;AAClC,qCAAmC;AACnC,+CAA2C;AAC3C,kDAAoC;AACpC,iCAA8B;AAC9B,mCAAgC;AAChC,2CAAuC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,qCAAkC;AAClC,qCAAmC;AACnC,+CAA2C;AAC3C,kDAAoC;AACpC,iCAA8B;AAC9B,mCAAgC;AAChC,2CAAuC;AAG1B,QAAA,KAAK,GAAG;IACjB,OAAO,EAAP,gBAAO;IACP,MAAM,EAAN,eAAM;IACN,UAAU,EAAV,wBAAU;IACV,IAAI,EAAJ,WAAI;IACJ,GAAG;IACH,KAAK,EAAL,aAAK;IACL,QAAQ,EAAR,oBAAQ;CACX,CAAA"}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.MCPOAuth = void 0;
|
|
7
7
|
const axios_1 = __importDefault(require("axios"));
|
|
8
8
|
const logger_1 = __importDefault(require("../logger"));
|
|
9
|
+
const exception_1 = require("./exception");
|
|
9
10
|
/**
|
|
10
11
|
*
|
|
11
12
|
* @param mcpServerUrl
|
|
@@ -13,12 +14,11 @@ const logger_1 = __importDefault(require("../logger"));
|
|
|
13
14
|
*/
|
|
14
15
|
const discoverOAuthResourceMetadata = async (mcpServerUrl) => {
|
|
15
16
|
const url = new URL(mcpServerUrl);
|
|
16
|
-
const protectedResourceUrl = new URL(
|
|
17
|
+
const protectedResourceUrl = new URL(`/.well-known/oauth-protected-resource${url.pathname}`, url.origin);
|
|
17
18
|
// Step 1: RFC 9470 - Get Protected Resource Metadata
|
|
18
19
|
const protectedResourceResponse = await fetch(protectedResourceUrl.toString());
|
|
19
20
|
if (!protectedResourceResponse.ok) {
|
|
20
|
-
throw new
|
|
21
|
-
`${protectedResourceResponse.status}`);
|
|
21
|
+
throw new exception_1.MCPOuthError(`Failed to fetch protected resource metadata`, { error: "Fetch_Error", code: "FETCH_ERROR" });
|
|
22
22
|
}
|
|
23
23
|
const protectedResource = (await protectedResourceResponse.json());
|
|
24
24
|
return protectedResource;
|
|
@@ -31,25 +31,30 @@ const discoverOAuthMetadata = async (mcpServerUrl) => {
|
|
|
31
31
|
const protectedResource = (await discoverOAuthResourceMetadata(mcpServerUrl));
|
|
32
32
|
const authServers = protectedResource.authorization_servers;
|
|
33
33
|
if (!Array.isArray(authServers) || authServers.length === 0) {
|
|
34
|
-
throw new
|
|
34
|
+
throw new exception_1.MCPOuthError("No authorization servers found in protected resource metadata", { error: "Resource_not_found", code: "RESOURCE_NOT_FOUND" });
|
|
35
35
|
}
|
|
36
|
-
// Use the first authorization server
|
|
36
|
+
// Use the first authorization server"
|
|
37
37
|
const authServerUrl = authServers[0];
|
|
38
38
|
// Step 2: RFC 8414 - Get Authorization Server Metadata
|
|
39
|
-
|
|
40
|
-
const
|
|
39
|
+
let url = new URL(authServerUrl);
|
|
40
|
+
const metadataUrl = new URL(`/.well-known/oauth-authorization-server${url.pathname}`, url.origin);
|
|
41
|
+
let metadataResponse = await fetch(metadataUrl.toString());
|
|
41
42
|
if (!metadataResponse.ok) {
|
|
42
|
-
|
|
43
|
-
|
|
43
|
+
url = new URL(authServerUrl);
|
|
44
|
+
const secondMetaDataUrl = new URL(`/.well-known/oauth-authorization-server${url.pathname}`, url.origin);
|
|
45
|
+
metadataResponse = await fetch(secondMetaDataUrl.toString());
|
|
46
|
+
if (!metadataResponse.ok) {
|
|
47
|
+
throw new exception_1.MCPOuthError(`Failed to fetch authorization server metadata`, { error: "Resource_data_not_found", code: "RESOURCE_DATA_NOT_FOUND" });
|
|
48
|
+
}
|
|
44
49
|
}
|
|
45
50
|
const metadata = (await metadataResponse.json());
|
|
46
51
|
// Validate required fields
|
|
47
52
|
if (!metadata.authorization_endpoint || !metadata.token_endpoint) {
|
|
48
|
-
throw new
|
|
53
|
+
throw new exception_1.MCPOuthError("Missing required OAuth endpoints in metadata");
|
|
49
54
|
}
|
|
50
55
|
// Warn if PKCE support isn't advertised
|
|
51
56
|
if (!((_a = metadata.code_challenge_methods_supported) === null || _a === void 0 ? void 0 : _a.includes("S256"))) {
|
|
52
|
-
|
|
57
|
+
logger_1.default.warn("Server does not advertise S256 PKCE support, " +
|
|
53
58
|
"but we will use it anyway");
|
|
54
59
|
}
|
|
55
60
|
return metadata;
|
|
@@ -64,7 +69,7 @@ const discoverOAuthMetadata = async (mcpServerUrl) => {
|
|
|
64
69
|
const registerClient = async (metadata, redirectUris, client_Name = "AuroCX") => {
|
|
65
70
|
var _a, _b, _c, _d, _e;
|
|
66
71
|
if (!metadata.registration_endpoint)
|
|
67
|
-
throw new
|
|
72
|
+
throw new exception_1.MCPOuthError("Server does not support dynamic client registration", { error: "Dcr_not_support", code: "DCE_NOT_SUPPORT" });
|
|
68
73
|
const registrationRequest = {
|
|
69
74
|
client_name: client_Name,
|
|
70
75
|
redirect_uris: redirectUris,
|
|
@@ -84,7 +89,7 @@ const registerClient = async (metadata, redirectUris, client_Name = "AuroCX") =>
|
|
|
84
89
|
});
|
|
85
90
|
if (!response.ok) {
|
|
86
91
|
const errorBody = await response.text();
|
|
87
|
-
throw new
|
|
92
|
+
throw new exception_1.MCPOuthError(`Client registration failed`, { error: "Registration_Failed", code: "REGISTRATION_FAILD" });
|
|
88
93
|
}
|
|
89
94
|
const credentials = (await response.json());
|
|
90
95
|
// Store credentials securely
|
|
@@ -132,14 +137,14 @@ const buildAuthorizationUrl = async (metadata, clientId, redirectUri, state, cod
|
|
|
132
137
|
const handleCallBack = async (callbackUrl, storedState, codeVerifier) => {
|
|
133
138
|
const params = parseCallback(callbackUrl);
|
|
134
139
|
if (params.error) {
|
|
135
|
-
throw new
|
|
140
|
+
throw new exception_1.MCPOuthError(`OAuth error: ${params.error} - ` +
|
|
136
141
|
`${params.error_description || "Unknown error"}`);
|
|
137
142
|
}
|
|
138
143
|
if (params.state !== storedState) {
|
|
139
|
-
throw new
|
|
144
|
+
throw new exception_1.MCPOuthError("Invalid state parameter - possible CSRF attack");
|
|
140
145
|
}
|
|
141
146
|
if (!params.code) {
|
|
142
|
-
throw new
|
|
147
|
+
throw new exception_1.MCPOuthError("Missing authorization code");
|
|
143
148
|
}
|
|
144
149
|
return params.code;
|
|
145
150
|
};
|
|
@@ -166,11 +171,11 @@ const parseCallback = (url) => {
|
|
|
166
171
|
// return tokenInfo;
|
|
167
172
|
// }
|
|
168
173
|
// if (!tokenInfo?.access_token || tokenInfo?.accessToken)
|
|
169
|
-
// throw new
|
|
174
|
+
// throw new BadRequestException("Token Not Found");
|
|
170
175
|
// // 🔹 Step 2: Check expiry
|
|
171
176
|
// let refresh_token = tokenInfo.refresh_token || tokenInfo?.refreshToken;
|
|
172
177
|
// if (!refresh_token)
|
|
173
|
-
// throw new
|
|
178
|
+
// throw new BadRequestException("Refresh Token Not Found");
|
|
174
179
|
// const isExpired = !tokenInfo.expire_at || Number(tokenInfo.expire_at) <= Date.now();
|
|
175
180
|
// if (isExpired && refresh_token) {
|
|
176
181
|
// tokenInfo = await GetOAuthMCPRefreshToken(metaData,clientCredentials,refresh_token);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-oauth.js","sourceRoot":"","sources":["../../../utils/mcp-oauth.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,uDAA4B;
|
|
1
|
+
{"version":3,"file":"mcp-oauth.js","sourceRoot":"","sources":["../../../utils/mcp-oauth.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/utils/oauth.js
CHANGED
|
@@ -7,6 +7,7 @@ exports.OAuth = void 0;
|
|
|
7
7
|
const axios_1 = __importDefault(require("axios"));
|
|
8
8
|
const crypto_1 = require("crypto");
|
|
9
9
|
const logger_1 = __importDefault(require("../logger"));
|
|
10
|
+
const exception_1 = require("./exception");
|
|
10
11
|
const OPENID_CONFIGURATION_URLS = {
|
|
11
12
|
// Google
|
|
12
13
|
google: "https://accounts.google.com",
|
|
@@ -68,9 +69,8 @@ const resolveProviderUrl = (provider) => {
|
|
|
68
69
|
catch (_a) {
|
|
69
70
|
// lookup provider name
|
|
70
71
|
const url = OPENID_CONFIGURATION_URLS[provider.toLowerCase()];
|
|
71
|
-
if (!url)
|
|
72
|
-
throw new
|
|
73
|
-
}
|
|
72
|
+
if (!url)
|
|
73
|
+
throw new exception_1.OuthError(`Unsupported OAuth Provider: ${provider}`, { code: "RESOURCE_META_REQUIRED", error: "Resoucr_meta_required" });
|
|
74
74
|
return url;
|
|
75
75
|
}
|
|
76
76
|
};
|
|
@@ -87,8 +87,7 @@ const discoverOAuthOpenIdMetadata = async (providerUrl) => {
|
|
|
87
87
|
// Step 1: RFC 9470 - Get OpenId Configuration
|
|
88
88
|
const openIdResponse = await fetch(discoveryUrl.toString());
|
|
89
89
|
if (!openIdResponse.ok) {
|
|
90
|
-
throw new
|
|
91
|
-
`${openIdResponse.status}`);
|
|
90
|
+
throw new exception_1.OuthError(`Failed to fetch OpenID configuration:`, { code: "RESOURCE_META_REQUIRED", error: "Resoucr_meta_required" });
|
|
92
91
|
}
|
|
93
92
|
const metadata = (await openIdResponse.json());
|
|
94
93
|
return metadata;
|
|
@@ -100,7 +99,7 @@ const discoverOAuthOpenIdMetadata = async (providerUrl) => {
|
|
|
100
99
|
*/
|
|
101
100
|
const oauthToken = async (authValue) => {
|
|
102
101
|
if (!authValue)
|
|
103
|
-
throw new
|
|
102
|
+
throw new exception_1.BadRequestRequest("OAuth Config Not Found");
|
|
104
103
|
const provisionList = JSON.parse(authValue);
|
|
105
104
|
if (!Array.isArray(provisionList))
|
|
106
105
|
return "";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../../utils/oauth.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,mCAAiD;AACjD,uDAA4B;
|
|
1
|
+
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../../utils/oauth.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
type ExceptionOptions = {
|
|
2
|
+
name?: string;
|
|
3
|
+
statusCode?: number;
|
|
4
|
+
error?: string;
|
|
5
|
+
code?: string;
|
|
6
|
+
};
|
|
7
|
+
type RequestOptions = Omit<ExceptionOptions, "name">;
|
|
8
|
+
export declare class HttpException extends Error {
|
|
9
|
+
statusCode: number;
|
|
10
|
+
error: string;
|
|
11
|
+
code: string;
|
|
12
|
+
constructor(message: string, options?: ExceptionOptions);
|
|
13
|
+
}
|
|
14
|
+
export declare class BadRequestRequest extends HttpException {
|
|
15
|
+
constructor(message: string, options?: RequestOptions);
|
|
16
|
+
}
|
|
17
|
+
export declare class OuthError extends HttpException {
|
|
18
|
+
constructor(message: string, options?: RequestOptions);
|
|
19
|
+
}
|
|
20
|
+
export declare class MCPOuthError extends HttpException {
|
|
21
|
+
constructor(message: string, options?: RequestOptions);
|
|
22
|
+
}
|
|
23
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export class HttpException extends Error {
|
|
2
|
+
constructor(message, options = {}) {
|
|
3
|
+
var _a, _b, _c, _d;
|
|
4
|
+
super(message);
|
|
5
|
+
this.name = (_a = options.name) !== null && _a !== void 0 ? _a : new.target.name;
|
|
6
|
+
this.statusCode = (_b = options.statusCode) !== null && _b !== void 0 ? _b : 500;
|
|
7
|
+
this.error = (_c = options.error) !== null && _c !== void 0 ? _c : "Internal_Server_Error";
|
|
8
|
+
this.code = (_d = options.code) !== null && _d !== void 0 ? _d : "INTERNAL_SERVER_ERROR";
|
|
9
|
+
Object.setPrototypeOf(this, new.target.prototype);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export class BadRequestRequest extends HttpException {
|
|
13
|
+
constructor(message, options = {}) {
|
|
14
|
+
var _a, _b, _c;
|
|
15
|
+
super(message, {
|
|
16
|
+
name: "BadRequestRequest",
|
|
17
|
+
statusCode: (_a = options.statusCode) !== null && _a !== void 0 ? _a : 400,
|
|
18
|
+
error: (_b = options.error) !== null && _b !== void 0 ? _b : "Bad_Request",
|
|
19
|
+
code: (_c = options.code) !== null && _c !== void 0 ? _c : "BAD_REQUEST",
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export class OuthError extends HttpException {
|
|
24
|
+
constructor(message, options = {}) {
|
|
25
|
+
var _a, _b, _c;
|
|
26
|
+
super(message, {
|
|
27
|
+
name: "OuthError",
|
|
28
|
+
statusCode: (_a = options.statusCode) !== null && _a !== void 0 ? _a : 400,
|
|
29
|
+
error: (_b = options.error) !== null && _b !== void 0 ? _b : "OuthError",
|
|
30
|
+
code: (_c = options.code) !== null && _c !== void 0 ? _c : "OUTH_ERROR",
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export class MCPOuthError extends HttpException {
|
|
35
|
+
constructor(message, options = {}) {
|
|
36
|
+
var _a, _b, _c;
|
|
37
|
+
super(message, {
|
|
38
|
+
name: "MCPOuthError",
|
|
39
|
+
statusCode: (_a = options.statusCode) !== null && _a !== void 0 ? _a : 400,
|
|
40
|
+
error: (_b = options.error) !== null && _b !== void 0 ? _b : "MCPOuthError",
|
|
41
|
+
code: (_c = options.code) !== null && _c !== void 0 ? _c : "MCP_OUTH_ERROR",
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=exception.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exception.js","sourceRoot":"","sources":["../../../utils/exception.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,aAAc,SAAQ,KAAK;IAKtC,YACE,OAAe,EACf,UAA4B,EAAE;;QAE9B,KAAK,CAAC,OAAO,CAAC,CAAC;QAEf,IAAI,CAAC,IAAI,GAAG,MAAA,OAAO,CAAC,IAAI,mCAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QAC5C,IAAI,CAAC,UAAU,GAAG,MAAA,OAAO,CAAC,UAAU,mCAAI,GAAG,CAAC;QAC5C,IAAI,CAAC,KAAK,GAAG,MAAA,OAAO,CAAC,KAAK,mCAAI,uBAAuB,CAAC;QACtD,IAAI,CAAC,IAAI,GAAG,MAAA,OAAO,CAAC,IAAI,mCAAI,uBAAuB,CAAC;QAEpD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,aAAa;IAClD,YACE,OAAe,EACf,UAA0B,EAAE;;QAE5B,KAAK,CAAC,OAAO,EAAE;YACb,IAAI,EAAE,mBAAmB;YACzB,UAAU,EAAE,MAAA,OAAO,CAAC,UAAU,mCAAI,GAAG;YACrC,KAAK,EAAE,MAAA,OAAO,CAAC,KAAK,mCAAI,aAAa;YACrC,IAAI,EAAE,MAAA,OAAO,CAAC,IAAI,mCAAI,aAAa;SACpC,CAAC,CAAC;IACL,CAAC;CACF;AAED,MAAM,OAAO,SAAU,SAAQ,aAAa;IAC1C,YACE,OAAe,EACf,UAA0B,EAAE;;QAE5B,KAAK,CAAC,OAAO,EAAE;YACb,IAAI,EAAE,WAAW;YACjB,UAAU,EAAE,MAAA,OAAO,CAAC,UAAU,mCAAI,GAAG;YACrC,KAAK,EAAE,MAAA,OAAO,CAAC,KAAK,mCAAI,WAAW;YACnC,IAAI,EAAE,MAAA,OAAO,CAAC,IAAI,mCAAI,YAAY;SACnC,CAAC,CAAC;IACL,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,aAAa;IAC7C,YACE,OAAe,EACf,UAA0B,EAAE;;QAE5B,KAAK,CAAC,OAAO,EAAE;YACb,IAAI,EAAE,cAAc;YACpB,UAAU,EAAE,MAAA,OAAO,CAAC,UAAU,mCAAI,GAAG;YACrC,KAAK,EAAE,MAAA,OAAO,CAAC,KAAK,mCAAI,cAAc;YACtC,IAAI,EAAE,MAAA,OAAO,CAAC,IAAI,mCAAI,gBAAgB;SACvC,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../utils/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../utils/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,MAAM,CAAC,MAAM,KAAK,GAAG;IACjB,OAAO;IACP,MAAM;IACN,UAAU;IACV,IAAI;IACJ,GAAG;IACH,KAAK;IACL,QAAQ;CACX,CAAA"}
|
|
@@ -9,6 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
};
|
|
10
10
|
import axios from "axios";
|
|
11
11
|
import log from "../logger";
|
|
12
|
+
import { MCPOuthError } from "./exception";
|
|
12
13
|
/**
|
|
13
14
|
*
|
|
14
15
|
* @param mcpServerUrl
|
|
@@ -16,12 +17,11 @@ import log from "../logger";
|
|
|
16
17
|
*/
|
|
17
18
|
const discoverOAuthResourceMetadata = (mcpServerUrl) => __awaiter(void 0, void 0, void 0, function* () {
|
|
18
19
|
const url = new URL(mcpServerUrl);
|
|
19
|
-
const protectedResourceUrl = new URL(
|
|
20
|
+
const protectedResourceUrl = new URL(`/.well-known/oauth-protected-resource${url.pathname}`, url.origin);
|
|
20
21
|
// Step 1: RFC 9470 - Get Protected Resource Metadata
|
|
21
22
|
const protectedResourceResponse = yield fetch(protectedResourceUrl.toString());
|
|
22
23
|
if (!protectedResourceResponse.ok) {
|
|
23
|
-
throw new
|
|
24
|
-
`${protectedResourceResponse.status}`);
|
|
24
|
+
throw new MCPOuthError(`Failed to fetch protected resource metadata`, { error: "Fetch_Error", code: "FETCH_ERROR" });
|
|
25
25
|
}
|
|
26
26
|
const protectedResource = (yield protectedResourceResponse.json());
|
|
27
27
|
return protectedResource;
|
|
@@ -34,25 +34,30 @@ const discoverOAuthMetadata = (mcpServerUrl) => __awaiter(void 0, void 0, void 0
|
|
|
34
34
|
const protectedResource = (yield discoverOAuthResourceMetadata(mcpServerUrl));
|
|
35
35
|
const authServers = protectedResource.authorization_servers;
|
|
36
36
|
if (!Array.isArray(authServers) || authServers.length === 0) {
|
|
37
|
-
throw new
|
|
37
|
+
throw new MCPOuthError("No authorization servers found in protected resource metadata", { error: "Resource_not_found", code: "RESOURCE_NOT_FOUND" });
|
|
38
38
|
}
|
|
39
|
-
// Use the first authorization server
|
|
39
|
+
// Use the first authorization server"
|
|
40
40
|
const authServerUrl = authServers[0];
|
|
41
41
|
// Step 2: RFC 8414 - Get Authorization Server Metadata
|
|
42
|
-
|
|
43
|
-
const
|
|
42
|
+
let url = new URL(authServerUrl);
|
|
43
|
+
const metadataUrl = new URL(`/.well-known/oauth-authorization-server${url.pathname}`, url.origin);
|
|
44
|
+
let metadataResponse = yield fetch(metadataUrl.toString());
|
|
44
45
|
if (!metadataResponse.ok) {
|
|
45
|
-
|
|
46
|
-
|
|
46
|
+
url = new URL(authServerUrl);
|
|
47
|
+
const secondMetaDataUrl = new URL(`/.well-known/oauth-authorization-server${url.pathname}`, url.origin);
|
|
48
|
+
metadataResponse = yield fetch(secondMetaDataUrl.toString());
|
|
49
|
+
if (!metadataResponse.ok) {
|
|
50
|
+
throw new MCPOuthError(`Failed to fetch authorization server metadata`, { error: "Resource_data_not_found", code: "RESOURCE_DATA_NOT_FOUND" });
|
|
51
|
+
}
|
|
47
52
|
}
|
|
48
53
|
const metadata = (yield metadataResponse.json());
|
|
49
54
|
// Validate required fields
|
|
50
55
|
if (!metadata.authorization_endpoint || !metadata.token_endpoint) {
|
|
51
|
-
throw new
|
|
56
|
+
throw new MCPOuthError("Missing required OAuth endpoints in metadata");
|
|
52
57
|
}
|
|
53
58
|
// Warn if PKCE support isn't advertised
|
|
54
59
|
if (!((_a = metadata.code_challenge_methods_supported) === null || _a === void 0 ? void 0 : _a.includes("S256"))) {
|
|
55
|
-
|
|
60
|
+
log.warn("Server does not advertise S256 PKCE support, " +
|
|
56
61
|
"but we will use it anyway");
|
|
57
62
|
}
|
|
58
63
|
return metadata;
|
|
@@ -67,7 +72,7 @@ const discoverOAuthMetadata = (mcpServerUrl) => __awaiter(void 0, void 0, void 0
|
|
|
67
72
|
const registerClient = (metadata_1, redirectUris_1, ...args_1) => __awaiter(void 0, [metadata_1, redirectUris_1, ...args_1], void 0, function* (metadata, redirectUris, client_Name = "AuroCX") {
|
|
68
73
|
var _a, _b, _c, _d, _e;
|
|
69
74
|
if (!metadata.registration_endpoint)
|
|
70
|
-
throw new
|
|
75
|
+
throw new MCPOuthError("Server does not support dynamic client registration", { error: "Dcr_not_support", code: "DCE_NOT_SUPPORT" });
|
|
71
76
|
const registrationRequest = {
|
|
72
77
|
client_name: client_Name,
|
|
73
78
|
redirect_uris: redirectUris,
|
|
@@ -87,7 +92,7 @@ const registerClient = (metadata_1, redirectUris_1, ...args_1) => __awaiter(void
|
|
|
87
92
|
});
|
|
88
93
|
if (!response.ok) {
|
|
89
94
|
const errorBody = yield response.text();
|
|
90
|
-
throw new
|
|
95
|
+
throw new MCPOuthError(`Client registration failed`, { error: "Registration_Failed", code: "REGISTRATION_FAILD" });
|
|
91
96
|
}
|
|
92
97
|
const credentials = (yield response.json());
|
|
93
98
|
// Store credentials securely
|
|
@@ -135,14 +140,14 @@ const buildAuthorizationUrl = (metadata, clientId, redirectUri, state, codeChall
|
|
|
135
140
|
const handleCallBack = (callbackUrl, storedState, codeVerifier) => __awaiter(void 0, void 0, void 0, function* () {
|
|
136
141
|
const params = parseCallback(callbackUrl);
|
|
137
142
|
if (params.error) {
|
|
138
|
-
throw new
|
|
143
|
+
throw new MCPOuthError(`OAuth error: ${params.error} - ` +
|
|
139
144
|
`${params.error_description || "Unknown error"}`);
|
|
140
145
|
}
|
|
141
146
|
if (params.state !== storedState) {
|
|
142
|
-
throw new
|
|
147
|
+
throw new MCPOuthError("Invalid state parameter - possible CSRF attack");
|
|
143
148
|
}
|
|
144
149
|
if (!params.code) {
|
|
145
|
-
throw new
|
|
150
|
+
throw new MCPOuthError("Missing authorization code");
|
|
146
151
|
}
|
|
147
152
|
return params.code;
|
|
148
153
|
});
|
|
@@ -169,11 +174,11 @@ const parseCallback = (url) => {
|
|
|
169
174
|
// return tokenInfo;
|
|
170
175
|
// }
|
|
171
176
|
// if (!tokenInfo?.access_token || tokenInfo?.accessToken)
|
|
172
|
-
// throw new
|
|
177
|
+
// throw new BadRequestException("Token Not Found");
|
|
173
178
|
// // 🔹 Step 2: Check expiry
|
|
174
179
|
// let refresh_token = tokenInfo.refresh_token || tokenInfo?.refreshToken;
|
|
175
180
|
// if (!refresh_token)
|
|
176
|
-
// throw new
|
|
181
|
+
// throw new BadRequestException("Refresh Token Not Found");
|
|
177
182
|
// const isExpired = !tokenInfo.expire_at || Number(tokenInfo.expire_at) <= Date.now();
|
|
178
183
|
// if (isExpired && refresh_token) {
|
|
179
184
|
// tokenInfo = await GetOAuthMCPRefreshToken(metaData,clientCredentials,refresh_token);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-oauth.js","sourceRoot":"","sources":["../../../utils/mcp-oauth.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-oauth.js","sourceRoot":"","sources":["../../../utils/mcp-oauth.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/utils/oauth.js
CHANGED
|
@@ -10,6 +10,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
import axios from "axios";
|
|
11
11
|
import { createHash, randomBytes } from "crypto";
|
|
12
12
|
import log from "../logger";
|
|
13
|
+
import { BadRequestRequest, OuthError } from "./exception";
|
|
13
14
|
const OPENID_CONFIGURATION_URLS = {
|
|
14
15
|
// Google
|
|
15
16
|
google: "https://accounts.google.com",
|
|
@@ -71,9 +72,8 @@ const resolveProviderUrl = (provider) => {
|
|
|
71
72
|
catch (_a) {
|
|
72
73
|
// lookup provider name
|
|
73
74
|
const url = OPENID_CONFIGURATION_URLS[provider.toLowerCase()];
|
|
74
|
-
if (!url)
|
|
75
|
-
throw new
|
|
76
|
-
}
|
|
75
|
+
if (!url)
|
|
76
|
+
throw new OuthError(`Unsupported OAuth Provider: ${provider}`, { code: "RESOURCE_META_REQUIRED", error: "Resoucr_meta_required" });
|
|
77
77
|
return url;
|
|
78
78
|
}
|
|
79
79
|
};
|
|
@@ -90,8 +90,7 @@ const discoverOAuthOpenIdMetadata = (providerUrl) => __awaiter(void 0, void 0, v
|
|
|
90
90
|
// Step 1: RFC 9470 - Get OpenId Configuration
|
|
91
91
|
const openIdResponse = yield fetch(discoveryUrl.toString());
|
|
92
92
|
if (!openIdResponse.ok) {
|
|
93
|
-
throw new
|
|
94
|
-
`${openIdResponse.status}`);
|
|
93
|
+
throw new OuthError(`Failed to fetch OpenID configuration:`, { code: "RESOURCE_META_REQUIRED", error: "Resoucr_meta_required" });
|
|
95
94
|
}
|
|
96
95
|
const metadata = (yield openIdResponse.json());
|
|
97
96
|
return metadata;
|
|
@@ -103,7 +102,7 @@ const discoverOAuthOpenIdMetadata = (providerUrl) => __awaiter(void 0, void 0, v
|
|
|
103
102
|
*/
|
|
104
103
|
const oauthToken = (authValue) => __awaiter(void 0, void 0, void 0, function* () {
|
|
105
104
|
if (!authValue)
|
|
106
|
-
throw new
|
|
105
|
+
throw new BadRequestRequest("OAuth Config Not Found");
|
|
107
106
|
const provisionList = JSON.parse(authValue);
|
|
108
107
|
if (!Array.isArray(provisionList))
|
|
109
108
|
return "";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../../utils/oauth.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,GAAG,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../../utils/oauth.ts"],"names":[],"mappings":"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"}
|