@samanhappy/mcphub 1.0.28 → 1.0.30
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.fr.md +2 -1
- package/README.md +2 -1
- package/README.zh.md +2 -1
- package/dist/betterAuth.js +3 -6
- package/dist/betterAuth.js.map +1 -1
- package/dist/clients/openapi.js +194 -15
- package/dist/clients/openapi.js.map +1 -1
- package/dist/controllers/serverController.js +108 -16
- package/dist/controllers/serverController.js.map +1 -1
- package/dist/dao/ServerDao.js +3 -1
- package/dist/dao/ServerDao.js.map +1 -1
- package/dist/dao/ServerDaoDbImpl.js +3 -0
- package/dist/dao/ServerDaoDbImpl.js.map +1 -1
- package/dist/db/entities/Server.js +4 -0
- package/dist/db/entities/Server.js.map +1 -1
- package/dist/db/repositories/ServerRepository.js +1 -0
- package/dist/db/repositories/ServerRepository.js.map +1 -1
- package/dist/routes/index.js +2 -1
- package/dist/routes/index.js.map +1 -1
- package/dist/server.js +12 -9
- package/dist/server.js.map +1 -1
- package/dist/services/betterAuthConfig.js +4 -0
- package/dist/services/betterAuthConfig.js.map +1 -1
- package/dist/services/dataService.js +8 -3
- package/dist/services/dataService.js.map +1 -1
- package/dist/services/mcpOAuthProvider.js +13 -4
- package/dist/services/mcpOAuthProvider.js.map +1 -1
- package/dist/services/mcpService.js +47 -12
- package/dist/services/mcpService.js.map +1 -1
- package/dist/services/smartRoutingService.js +4 -3
- package/dist/services/smartRoutingService.js.map +1 -1
- package/dist/utils/migration.js +1 -0
- package/dist/utils/migration.js.map +1 -1
- package/dist/utils/serverConfigPersistence.js +10 -1
- package/dist/utils/serverConfigPersistence.js.map +1 -1
- package/dist/utils/serverShutdown.js +27 -0
- package/dist/utils/serverShutdown.js.map +1 -0
- package/frontend/dist/assets/{ActivityPage-D0SFqsRe.js → ActivityPage-U9om5C9X.js} +2 -2
- package/frontend/dist/assets/{ActivityPage-D0SFqsRe.js.map → ActivityPage-U9om5C9X.js.map} +1 -1
- package/frontend/dist/assets/{Dashboard-DzWkQnht.js → Dashboard-DGqpU4bd.js} +2 -2
- package/frontend/dist/assets/{Dashboard-DzWkQnht.js.map → Dashboard-DGqpU4bd.js.map} +1 -1
- package/frontend/dist/assets/{EndpointCopy-Bqjt3lGe.js → EndpointCopy-DuGmhiMq.js} +2 -2
- package/frontend/dist/assets/{EndpointCopy-Bqjt3lGe.js.map → EndpointCopy-DuGmhiMq.js.map} +1 -1
- package/frontend/dist/assets/{GroupsPage-DsmZMSK0.js → GroupsPage-Dhqy02FY.js} +2 -2
- package/frontend/dist/assets/{GroupsPage-DsmZMSK0.js.map → GroupsPage-Dhqy02FY.js.map} +1 -1
- package/frontend/dist/assets/{LoginPage-_Gr1ere-.js → LoginPage-BXRn47pC.js} +2 -2
- package/frontend/dist/assets/{LoginPage-_Gr1ere-.js.map → LoginPage-BXRn47pC.js.map} +1 -1
- package/frontend/dist/assets/{LogsPage-D2vByutC.js → LogsPage-CiO6LZEJ.js} +2 -2
- package/frontend/dist/assets/LogsPage-CiO6LZEJ.js.map +1 -0
- package/frontend/dist/assets/{MarketPage-BhyrxwBv.js → MarketPage-BEdWfj0u.js} +2 -2
- package/frontend/dist/assets/{MarketPage-BhyrxwBv.js.map → MarketPage-BEdWfj0u.js.map} +1 -1
- package/frontend/dist/assets/{PromptsPage-BLn95Icp.js → PromptsPage-BG6oWgAk.js} +2 -2
- package/frontend/dist/assets/{PromptsPage-BLn95Icp.js.map → PromptsPage-BG6oWgAk.js.map} +1 -1
- package/frontend/dist/assets/{ResourcesPage-B27GVOO6.js → ResourcesPage-BqJUKqnV.js} +2 -2
- package/frontend/dist/assets/{ResourcesPage-B27GVOO6.js.map → ResourcesPage-BqJUKqnV.js.map} +1 -1
- package/frontend/dist/assets/{ServersPage-BuoWpLAq.js → ServersPage-CHbXHEcG.js} +4 -4
- package/frontend/dist/assets/{ServersPage-BuoWpLAq.js.map → ServersPage-CHbXHEcG.js.map} +1 -1
- package/frontend/dist/assets/SettingsPage-B6yl-U9T.js +12 -0
- package/frontend/dist/assets/SettingsPage-B6yl-U9T.js.map +1 -0
- package/frontend/dist/assets/{StatusDot-BUWJw3dA.js → StatusDot-Bz7sBh0t.js} +2 -2
- package/frontend/dist/assets/{StatusDot-BUWJw3dA.js.map → StatusDot-Bz7sBh0t.js.map} +1 -1
- package/frontend/dist/assets/{ToggleGroup-BPAIOm5B.js → ToggleGroup-60voS_0U.js} +2 -2
- package/frontend/dist/assets/{ToggleGroup-BPAIOm5B.js.map → ToggleGroup-60voS_0U.js.map} +1 -1
- package/frontend/dist/assets/{UsersPage-SZrL0bKd.js → UsersPage-Dzzo9CC-.js} +2 -2
- package/frontend/dist/assets/{UsersPage-SZrL0bKd.js.map → UsersPage-Dzzo9CC-.js.map} +1 -1
- package/frontend/dist/assets/{contextCost-BxT09q-Y.js → contextCost-CIOdvJNu.js} +2 -2
- package/frontend/dist/assets/{contextCost-BxT09q-Y.js.map → contextCost-CIOdvJNu.js.map} +1 -1
- package/frontend/dist/assets/index-CGvImZ3F.css +1 -0
- package/frontend/dist/assets/index-Ca9HKIrV.js +3 -0
- package/frontend/dist/assets/index-Ca9HKIrV.js.map +1 -0
- package/frontend/dist/assets/{resourceService-CWKSpa0p.js → resourceService-DIIsi_li.js} +2 -2
- package/frontend/dist/assets/{resourceService-CWKSpa0p.js.map → resourceService-DIIsi_li.js.map} +1 -1
- package/frontend/dist/assets/useSettingsData-C84qj7ge.js +2 -0
- package/frontend/dist/assets/{useSettingsData-0sbahDtL.js.map → useSettingsData-C84qj7ge.js.map} +1 -1
- package/frontend/dist/assets/variableDetection-Y9ymMI80.js +16 -0
- package/frontend/dist/assets/variableDetection-Y9ymMI80.js.map +1 -0
- package/frontend/dist/index.html +2 -2
- package/package.json +4 -3
- package/frontend/dist/assets/LogsPage-D2vByutC.js.map +0 -1
- package/frontend/dist/assets/SettingsPage-BzCwUvx7.js +0 -12
- package/frontend/dist/assets/SettingsPage-BzCwUvx7.js.map +0 -1
- package/frontend/dist/assets/index-Bz_euXvO.js +0 -3
- package/frontend/dist/assets/index-Bz_euXvO.js.map +0 -1
- package/frontend/dist/assets/index-DEAy4k6z.css +0 -1
- package/frontend/dist/assets/useSettingsData-0sbahDtL.js +0 -2
- package/frontend/dist/assets/variableDetection-DfkBZ0gv.js +0 -16
- package/frontend/dist/assets/variableDetection-DfkBZ0gv.js.map +0 -1
package/README.fr.md
CHANGED
|
@@ -16,6 +16,7 @@ MCPHub facilite la gestion et la mise à l'échelle de plusieurs serveurs MCP (M
|
|
|
16
16
|
- **Gestion centralisée** - Surveillez et contrôlez tous les serveurs MCP depuis un tableau de bord unifié
|
|
17
17
|
- **Routage flexible** - Accédez à tous les serveurs, groupes spécifiques ou serveurs individuels via HTTP/SSE
|
|
18
18
|
- **Visibilité granulaire par groupe** - Contrôlez indépendamment la visibilité des Tools, Prompts et Resources de chaque serveur dans un groupe
|
|
19
|
+
- **Partage par serveur** - Gardez un serveur privé, partagez-le avec certains utilisateurs ou rendez-le public
|
|
19
20
|
- **Routage intelligent** - Découverte d'outils propulsée par IA utilisant la recherche sémantique vectorielle ([En savoir plus](https://docs.mcphub.app/features/smart-routing))
|
|
20
21
|
- **Compression des résultats d'outils** - Réduisez automatiquement les grands résultats texte avant qu'ils n'atteignent les clients
|
|
21
22
|
- **Configuration à chaud** - Ajoutez, supprimez ou mettez à jour les serveurs sans temps d'arrêt
|
|
@@ -137,7 +138,7 @@ Les contributions sont les bienvenues ! Rejoignez notre [communauté Discord](ht
|
|
|
137
138
|
|
|
138
139
|
## 🌟 Historique des étoiles
|
|
139
140
|
|
|
140
|
-
[](https://star-history.dera.page/#samanhappy/mcphub&Date)
|
|
141
142
|
|
|
142
143
|
## 📄 Licence
|
|
143
144
|
|
package/README.md
CHANGED
|
@@ -18,6 +18,7 @@ MCPHub makes it easy to manage and scale multiple MCP (Model Context Protocol) s
|
|
|
18
18
|
- **Centralized Management** - Monitor and control all MCP servers from a unified dashboard
|
|
19
19
|
- **Flexible Routing** - Access all servers, specific groups, or individual servers via HTTP/SSE
|
|
20
20
|
- **Granular Group Visibility** - Control Tool, Prompt, and Resource visibility independently for each server inside a group
|
|
21
|
+
- **Per-Server Sharing** - Keep servers private, share them with selected users, or make them public
|
|
21
22
|
- **Smart Routing** - AI-powered tool discovery using vector semantic search ([Learn more](https://docs.mcphub.app/features/smart-routing))
|
|
22
23
|
- **MCP Apps Proxy** - Transparently forward interactive MCP Apps on single-server routes ([Learn more](https://docs.mcphub.app/features/mcp-apps))
|
|
23
24
|
- **Tool Result Compression** - Transparently reduce large text tool outputs before they reach clients
|
|
@@ -160,7 +161,7 @@ Contributions welcome! See our [Discord community](https://discord.gg/2BJehJZVH5
|
|
|
160
161
|
|
|
161
162
|
## 🌟 Star History
|
|
162
163
|
|
|
163
|
-
[](https://star-history.dera.page/#samanhappy/mcphub&Date)
|
|
164
165
|
|
|
165
166
|
## 📄 License
|
|
166
167
|
|
package/README.zh.md
CHANGED
|
@@ -16,6 +16,7 @@ MCPHub 通过将多个 MCP(Model Context Protocol)服务器组织为灵活
|
|
|
16
16
|
- **集中式管理** - 在统一控制台中监控和管理所有 MCP 服务器
|
|
17
17
|
- **灵活路由** - 通过 HTTP/SSE 访问所有服务器、特定分组或单个服务器
|
|
18
18
|
- **细粒度分组可见性** - 在分组中可独立控制每个服务器的 Tool、Prompt 与 Resource 是否对外暴露
|
|
19
|
+
- **服务器级共享** - 服务器可保持私有、共享给指定用户或设为公开
|
|
19
20
|
- **智能路由** - 基于向量语义搜索的 AI 工具发现 ([了解更多](https://docs.mcphub.app/zh/features/smart-routing))
|
|
20
21
|
- **工具结果压缩** - 在返回客户端前透明压缩大型文本工具输出
|
|
21
22
|
- **热插拔配置** - 无需停机即可添加、移除或更新服务器
|
|
@@ -162,7 +163,7 @@ pnpm dev
|
|
|
162
163
|
|
|
163
164
|
## 🌟 Star 历史趋势
|
|
164
165
|
|
|
165
|
-
[](https://star-history.dera.page/#samanhappy/mcphub&Date)
|
|
166
167
|
|
|
167
168
|
## 📄 许可证
|
|
168
169
|
|
package/dist/betterAuth.js
CHANGED
|
@@ -3,8 +3,7 @@ import { genericOAuth } from 'better-auth/plugins';
|
|
|
3
3
|
import { PostgresDialect } from 'kysely';
|
|
4
4
|
import { Pool } from 'pg';
|
|
5
5
|
import defaultConfig, { loadSettings } from './config/index.js';
|
|
6
|
-
import { resolveBetterAuthRuntimeConfig } from './services/betterAuthConfig.js';
|
|
7
|
-
import { resolveInstallBaseUrl } from './utils/installBaseUrl.js';
|
|
6
|
+
import { resolveBetterAuthBaseUrl, resolveBetterAuthRuntimeConfig, } from './services/betterAuthConfig.js';
|
|
8
7
|
import { getCachedSystemConfig, isDatabaseModeEnabled } from './utils/systemConfigCache.js';
|
|
9
8
|
const resolveSystemConfig = () => {
|
|
10
9
|
const cachedSystemConfig = getCachedSystemConfig();
|
|
@@ -73,10 +72,8 @@ const resolveBaseURL = (baseUrl, basePath) => {
|
|
|
73
72
|
return `${trimmedBase}${normalizedPath}`;
|
|
74
73
|
}
|
|
75
74
|
};
|
|
76
|
-
const
|
|
77
|
-
const baseURL = resolveBaseURL(
|
|
78
|
-
systemInstallBaseUrl ||
|
|
79
|
-
`http://localhost:${defaultConfig.port}${defaultConfig.basePath}`, runtimeConfig.basePath);
|
|
75
|
+
const betterAuthBaseUrl = resolveBetterAuthBaseUrl(systemConfig);
|
|
76
|
+
const baseURL = resolveBaseURL(betterAuthBaseUrl || `http://localhost:${defaultConfig.port}${defaultConfig.basePath}`, runtimeConfig.basePath);
|
|
80
77
|
const databaseUrl = process.env.DB_URL;
|
|
81
78
|
if (!databaseUrl) {
|
|
82
79
|
throw new Error('DB_URL is required for Better Auth PostgreSQL storage.');
|
package/dist/betterAuth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"betterAuth.js","sourceRoot":"","sources":["../src/betterAuth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAqB,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC1B,OAAO,aAAa,EAAE,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,
|
|
1
|
+
{"version":3,"file":"betterAuth.js","sourceRoot":"","sources":["../src/betterAuth.ts"],"names":[],"mappings":"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"}
|
package/dist/clients/openapi.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
|
+
import { CookieJar } from 'tough-cookie';
|
|
2
3
|
import SwaggerParser from '@apidevtools/swagger-parser';
|
|
3
|
-
import
|
|
4
|
+
import * as yaml from 'js-yaml';
|
|
5
|
+
import { assertSafeUrl, UnsafeUrlError } from '../utils/ssrf.js';
|
|
4
6
|
import { getUserDao } from '../dao/index.js';
|
|
5
7
|
import { sanitizeStringForLogging, createSafeJSON } from '../utils/serialization.js';
|
|
6
8
|
export class OpenAPIClient {
|
|
@@ -8,6 +10,10 @@ export class OpenAPIClient {
|
|
|
8
10
|
this.config = config;
|
|
9
11
|
this.spec = null;
|
|
10
12
|
this.tools = [];
|
|
13
|
+
// Per-session cookie jars for the dynamic Set-Cookie login flow. Keyed by
|
|
14
|
+
// downstream MCP sessionId so authenticated state never crosses users or
|
|
15
|
+
// sessions. In-memory only; never persisted.
|
|
16
|
+
this.cookieJars = new Map();
|
|
11
17
|
// Resolved in initialize(): admin-owned servers may target internal services
|
|
12
18
|
// and skip the SSRF internal-IP blocklist.
|
|
13
19
|
this.allowInternalNetworks = false;
|
|
@@ -56,7 +62,9 @@ export class OpenAPIClient {
|
|
|
56
62
|
return config;
|
|
57
63
|
});
|
|
58
64
|
}
|
|
59
|
-
|
|
65
|
+
else if (location === 'cookie') {
|
|
66
|
+
this.staticCookieHeader = `${name}=${value}`;
|
|
67
|
+
}
|
|
60
68
|
}
|
|
61
69
|
break;
|
|
62
70
|
case 'http':
|
|
@@ -194,9 +202,41 @@ export class OpenAPIClient {
|
|
|
194
202
|
}
|
|
195
203
|
async initialize() {
|
|
196
204
|
try {
|
|
205
|
+
// Resolve whether this server's owner is an admin first; admin-owned
|
|
206
|
+
// servers may legitimately target internal services and skip the SSRF
|
|
207
|
+
// blocklist. Needed before the URL fetch so the spec-download guard is
|
|
208
|
+
// scoped the same way as callTool's.
|
|
209
|
+
const ownerUser = this.config.owner
|
|
210
|
+
? await getUserDao().findByUsername(this.config.owner)
|
|
211
|
+
: null;
|
|
212
|
+
this.allowInternalNetworks = !!ownerUser?.isAdmin;
|
|
213
|
+
// Obtain/refresh the OAuth2 access token up front so it authenticates the
|
|
214
|
+
// document download (for url configs) and is ready for later API calls.
|
|
215
|
+
// No-op when no OAuth2 security is configured.
|
|
216
|
+
await this.ensureOAuth2AccessToken();
|
|
197
217
|
// Parse and dereference the OpenAPI specification
|
|
198
218
|
if (this.config.openapi?.url) {
|
|
199
|
-
|
|
219
|
+
// Fetch the document through the authenticated httpClient (carries
|
|
220
|
+
// config.headers + security credentials from setupSecurity, and uses
|
|
221
|
+
// maxRedirects: 0 so credentials are never forwarded across a
|
|
222
|
+
// cross-origin redirect). SwaggerParser's own resolver is bypassed for
|
|
223
|
+
// the main document so its (unauthenticated) headers never see the
|
|
224
|
+
// credentials; external $ref resolution still uses that resolver and
|
|
225
|
+
// therefore receives no auth by default.
|
|
226
|
+
const specUrl = this.config.openapi.url;
|
|
227
|
+
await assertSafeUrl(specUrl, { allowInternal: this.allowInternalNetworks });
|
|
228
|
+
const requestConfig = {
|
|
229
|
+
responseType: 'text',
|
|
230
|
+
transformResponse: [(data) => data],
|
|
231
|
+
};
|
|
232
|
+
// The static apiKey.in:'cookie' value is otherwise only injected in
|
|
233
|
+
// callTool; apply it here too so cookie-protected spec URLs load.
|
|
234
|
+
if (this.staticCookieHeader) {
|
|
235
|
+
requestConfig.headers = { Cookie: this.staticCookieHeader };
|
|
236
|
+
}
|
|
237
|
+
const response = await this.httpClient.get(specUrl, requestConfig);
|
|
238
|
+
const raw = typeof response.data === 'string' ? response.data : String(response.data);
|
|
239
|
+
this.spec = (await SwaggerParser.dereference(specUrl, this.parseSpecDocument(raw), {}));
|
|
200
240
|
}
|
|
201
241
|
else if (this.config.openapi?.schema) {
|
|
202
242
|
// For schema object, we need to pass it as a cloned object
|
|
@@ -207,18 +247,27 @@ export class OpenAPIClient {
|
|
|
207
247
|
}
|
|
208
248
|
// Update baseUrl from OpenAPI servers field
|
|
209
249
|
this.updateBaseUrlFromServers();
|
|
210
|
-
// Resolve whether this server's owner is an admin; admin-owned servers
|
|
211
|
-
// may legitimately target internal services and skip the SSRF blocklist.
|
|
212
|
-
const ownerUser = this.config.owner
|
|
213
|
-
? await getUserDao().findByUsername(this.config.owner)
|
|
214
|
-
: null;
|
|
215
|
-
this.allowInternalNetworks = !!ownerUser?.isAdmin;
|
|
216
250
|
this.extractTools();
|
|
217
|
-
await this.ensureOAuth2AccessToken();
|
|
218
251
|
}
|
|
219
252
|
catch (error) {
|
|
253
|
+
// Let SSRF rejections propagate as-is so callers can distinguish a blocked
|
|
254
|
+
// target from a parse/auth failure (matches callTool's handling).
|
|
255
|
+
if (error instanceof UnsafeUrlError) {
|
|
256
|
+
throw error;
|
|
257
|
+
}
|
|
220
258
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
221
|
-
throw new Error(`Failed to load OpenAPI specification: ${errorMessage}`);
|
|
259
|
+
throw new Error(`Failed to load OpenAPI specification: ${sanitizeStringForLogging(errorMessage)}`);
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
// Parse a fetched spec body into an object. JSON first (stricter errors for
|
|
263
|
+
// malformed JSON), YAML fallback so protected YAML documents work without
|
|
264
|
+
// relying on SwaggerParser's own fetch (which cannot carry our credentials).
|
|
265
|
+
parseSpecDocument(raw) {
|
|
266
|
+
try {
|
|
267
|
+
return JSON.parse(raw);
|
|
268
|
+
}
|
|
269
|
+
catch {
|
|
270
|
+
return yaml.load(raw);
|
|
222
271
|
}
|
|
223
272
|
}
|
|
224
273
|
generateOperationName(method, path) {
|
|
@@ -389,13 +438,14 @@ export class OpenAPIClient {
|
|
|
389
438
|
}
|
|
390
439
|
return parameterSchema;
|
|
391
440
|
}
|
|
392
|
-
async callTool(toolName, args, passthroughHeaders, hasRetriedAfterUnauthorized = false) {
|
|
441
|
+
async callTool(toolName, args, passthroughHeaders, hasRetriedAfterUnauthorized = false, sessionId) {
|
|
393
442
|
const tool = this.tools.find((t) => t.name === toolName);
|
|
394
443
|
if (!tool) {
|
|
395
444
|
throw new Error(`Tool '${toolName}' not found`);
|
|
396
445
|
}
|
|
397
446
|
let attemptedUpstreamRequest = false;
|
|
398
447
|
let authorizationUsedForRequest;
|
|
448
|
+
let resolvedTarget = null;
|
|
399
449
|
try {
|
|
400
450
|
await this.ensureOAuth2AccessToken();
|
|
401
451
|
// Build the request URL with path parameters
|
|
@@ -452,7 +502,7 @@ export class OpenAPIClient {
|
|
|
452
502
|
// internal/loopback/link-local address. The baseURL and tool path are
|
|
453
503
|
// both attacker-influenced (via the OpenAPI spec), so validate the
|
|
454
504
|
// final URL rather than trusting either alone.
|
|
455
|
-
|
|
505
|
+
resolvedTarget = null;
|
|
456
506
|
try {
|
|
457
507
|
resolvedTarget = new URL(String(requestConfig.url ?? '/'), this.baseUrl || undefined);
|
|
458
508
|
}
|
|
@@ -464,25 +514,44 @@ export class OpenAPIClient {
|
|
|
464
514
|
allowInternal: this.allowInternalNetworks,
|
|
465
515
|
});
|
|
466
516
|
}
|
|
517
|
+
const cookieSessionEnabled = this.isCookieSessionEnabled(sessionId);
|
|
518
|
+
// Inject cookies when either the dynamic session store is active for this
|
|
519
|
+
// call or a static `apiKey.in: 'cookie'` is configured (static cookies
|
|
520
|
+
// apply to every request regardless of session).
|
|
521
|
+
if ((cookieSessionEnabled || this.staticCookieHeader) && resolvedTarget) {
|
|
522
|
+
this.applyRequestCookies(requestConfig, resolvedTarget.href, cookieSessionEnabled ? sessionId : undefined);
|
|
523
|
+
}
|
|
467
524
|
authorizationUsedForRequest = this.getDefaultAuthorizationHeader();
|
|
468
525
|
attemptedUpstreamRequest = true;
|
|
469
526
|
const response = await this.httpClient.request(requestConfig);
|
|
527
|
+
if (cookieSessionEnabled && resolvedTarget) {
|
|
528
|
+
this.captureResponseCookies(response, resolvedTarget.href, sessionId);
|
|
529
|
+
}
|
|
470
530
|
return response.data;
|
|
471
531
|
}
|
|
472
532
|
catch (error) {
|
|
473
533
|
if (axios.isAxiosError(error)) {
|
|
534
|
+
// Capture Set-Cookie from non-2xx responses too. With maxRedirects: 0,
|
|
535
|
+
// a 3xx login redirect is surfaced as an error; 4xx logout responses
|
|
536
|
+
// may expire cookies. Capture before retry/rethrow so the jar stays
|
|
537
|
+
// current and the 401-retry path can re-inject updated cookies.
|
|
538
|
+
if (this.isCookieSessionEnabled(sessionId) &&
|
|
539
|
+
resolvedTarget &&
|
|
540
|
+
error.response) {
|
|
541
|
+
this.captureResponseCookies(error.response, resolvedTarget.href, sessionId);
|
|
542
|
+
}
|
|
474
543
|
if (attemptedUpstreamRequest &&
|
|
475
544
|
error.response?.status === 401 &&
|
|
476
545
|
!hasRetriedAfterUnauthorized &&
|
|
477
546
|
authorizationUsedForRequest &&
|
|
478
547
|
authorizationUsedForRequest !== this.getDefaultAuthorizationHeader()) {
|
|
479
|
-
return this.callTool(toolName, args, passthroughHeaders, true);
|
|
548
|
+
return this.callTool(toolName, args, passthroughHeaders, true, sessionId);
|
|
480
549
|
}
|
|
481
550
|
if (attemptedUpstreamRequest &&
|
|
482
551
|
error.response?.status === 401 &&
|
|
483
552
|
!hasRetriedAfterUnauthorized &&
|
|
484
553
|
(await this.invalidateRefreshableOAuth2Token())) {
|
|
485
|
-
return this.callTool(toolName, args, passthroughHeaders, true);
|
|
554
|
+
return this.callTool(toolName, args, passthroughHeaders, true, sessionId);
|
|
486
555
|
}
|
|
487
556
|
const status = error.response?.status ?? 'unknown';
|
|
488
557
|
const statusText = error.response?.statusText ?? 'Unknown Error';
|
|
@@ -513,8 +582,118 @@ export class OpenAPIClient {
|
|
|
513
582
|
getSpec() {
|
|
514
583
|
return this.spec;
|
|
515
584
|
}
|
|
585
|
+
isCookieSessionEnabled(sessionId) {
|
|
586
|
+
return !!this.config.openapi?.cookieSession && typeof sessionId === 'string' && sessionId.length > 0;
|
|
587
|
+
}
|
|
588
|
+
// Lazily create a per-session cookie jar, seeded with the static apiKey
|
|
589
|
+
// cookie (if any) so it applies to every request and can be overridden by a
|
|
590
|
+
// dynamic Set-Cookie of the same name.
|
|
591
|
+
getCookieJar(sessionId) {
|
|
592
|
+
let jar = this.cookieJars.get(sessionId);
|
|
593
|
+
if (jar) {
|
|
594
|
+
return jar;
|
|
595
|
+
}
|
|
596
|
+
// Backstop: evict the oldest jar before exceeding the cap. Session-end
|
|
597
|
+
// cleanup is the primary eviction path; this guards against leaks when a
|
|
598
|
+
// session is abandoned without an explicit close.
|
|
599
|
+
if (this.cookieJars.size >= OpenAPIClient.MAX_COOKIE_JARS) {
|
|
600
|
+
const oldest = this.cookieJars.keys().next().value;
|
|
601
|
+
if (oldest !== undefined) {
|
|
602
|
+
this.cookieJars.delete(oldest);
|
|
603
|
+
}
|
|
604
|
+
}
|
|
605
|
+
jar = new CookieJar();
|
|
606
|
+
if (this.staticCookieHeader && this.baseUrl) {
|
|
607
|
+
try {
|
|
608
|
+
jar.setCookieSync(`${this.staticCookieHeader}; Path=/`, this.baseUrl);
|
|
609
|
+
}
|
|
610
|
+
catch {
|
|
611
|
+
// ignore malformed static cookie / unsuitable baseUrl
|
|
612
|
+
}
|
|
613
|
+
}
|
|
614
|
+
this.cookieJars.set(sessionId, jar);
|
|
615
|
+
return jar;
|
|
616
|
+
}
|
|
617
|
+
// Apply stored cookies to an outgoing request. When a session jar exists,
|
|
618
|
+
// use it (it already includes any seeded static cookie and captured dynamic
|
|
619
|
+
// cookies). Otherwise fall back to the static `apiKey.in: 'cookie'` value so
|
|
620
|
+
// static cookie auth works without opting into session handling.
|
|
621
|
+
applyRequestCookies(requestConfig, requestUrl, sessionId) {
|
|
622
|
+
let cookieString = '';
|
|
623
|
+
if (sessionId) {
|
|
624
|
+
const jar = this.cookieJars.get(sessionId);
|
|
625
|
+
if (jar) {
|
|
626
|
+
try {
|
|
627
|
+
cookieString = jar.getCookieStringSync(requestUrl);
|
|
628
|
+
}
|
|
629
|
+
catch {
|
|
630
|
+
return;
|
|
631
|
+
}
|
|
632
|
+
}
|
|
633
|
+
else if (this.staticCookieHeader) {
|
|
634
|
+
cookieString = this.staticCookieHeader;
|
|
635
|
+
}
|
|
636
|
+
}
|
|
637
|
+
else if (this.staticCookieHeader) {
|
|
638
|
+
cookieString = this.staticCookieHeader;
|
|
639
|
+
}
|
|
640
|
+
if (cookieString) {
|
|
641
|
+
const existingHeaders = requestConfig.headers;
|
|
642
|
+
const merged = OpenAPIClient.mergeCookieHeader(existingHeaders?.Cookie, cookieString);
|
|
643
|
+
requestConfig.headers = {
|
|
644
|
+
...existingHeaders,
|
|
645
|
+
Cookie: merged,
|
|
646
|
+
};
|
|
647
|
+
}
|
|
648
|
+
}
|
|
649
|
+
// Merge two Cookie header strings, with `additional` (jar/static) values
|
|
650
|
+
// winning for duplicate names so caller-configured cookies are preserved.
|
|
651
|
+
static mergeCookieHeader(existing, additional) {
|
|
652
|
+
const entries = new Map();
|
|
653
|
+
const parse = (header) => {
|
|
654
|
+
for (const part of header.split(';')) {
|
|
655
|
+
const trimmed = part.trim();
|
|
656
|
+
if (!trimmed) {
|
|
657
|
+
continue;
|
|
658
|
+
}
|
|
659
|
+
const eq = trimmed.indexOf('=');
|
|
660
|
+
if (eq <= 0) {
|
|
661
|
+
continue;
|
|
662
|
+
}
|
|
663
|
+
entries.set(trimmed.slice(0, eq).trim(), trimmed.slice(eq + 1));
|
|
664
|
+
}
|
|
665
|
+
};
|
|
666
|
+
if (existing) {
|
|
667
|
+
parse(existing);
|
|
668
|
+
}
|
|
669
|
+
parse(additional);
|
|
670
|
+
return [...entries].map(([k, v]) => `${k}=${v}`).join('; ');
|
|
671
|
+
}
|
|
672
|
+
// Capture Set-Cookie headers from an upstream response into the session jar.
|
|
673
|
+
captureResponseCookies(response, requestUrl, sessionId) {
|
|
674
|
+
const setCookie = response.headers?.['set-cookie'];
|
|
675
|
+
if (!setCookie) {
|
|
676
|
+
return;
|
|
677
|
+
}
|
|
678
|
+
const jar = this.getCookieJar(sessionId);
|
|
679
|
+
const headers = Array.isArray(setCookie) ? setCookie : [setCookie];
|
|
680
|
+
for (const header of headers) {
|
|
681
|
+
try {
|
|
682
|
+
jar.setCookieSync(header, requestUrl);
|
|
683
|
+
}
|
|
684
|
+
catch {
|
|
685
|
+
// skip unparseable Set-Cookie rather than failing the tool call
|
|
686
|
+
}
|
|
687
|
+
}
|
|
688
|
+
}
|
|
689
|
+
// Drop the cookie jar for a session. Called from session-end cleanup.
|
|
690
|
+
clearSessionCookies(sessionId) {
|
|
691
|
+
this.cookieJars.delete(sessionId);
|
|
692
|
+
}
|
|
516
693
|
disconnect() {
|
|
517
694
|
// No persistent connection to close for OpenAPI
|
|
695
|
+
this.cookieJars.clear();
|
|
518
696
|
}
|
|
519
697
|
}
|
|
698
|
+
OpenAPIClient.MAX_COOKIE_JARS = 1000;
|
|
520
699
|
//# sourceMappingURL=openapi.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/clients/openapi.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/clients/openapi.ts"],"names":[],"mappings":"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"}
|