@samanhappy/mcphub 1.2.1 → 1.2.3
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/constants/oauthServerDefaults.js +2 -0
- package/dist/constants/oauthServerDefaults.js.map +1 -1
- package/dist/controllers/bearerKeyController.js +50 -2
- package/dist/controllers/bearerKeyController.js.map +1 -1
- package/dist/controllers/credentialBindingController.js +30 -1
- package/dist/controllers/credentialBindingController.js.map +1 -1
- package/dist/controllers/oauthApprovalController.js +63 -0
- package/dist/controllers/oauthApprovalController.js.map +1 -0
- package/dist/controllers/oauthServerController.js +55 -20
- package/dist/controllers/oauthServerController.js.map +1 -1
- package/dist/controllers/serverController.js +19 -1
- package/dist/controllers/serverController.js.map +1 -1
- package/dist/dao/DaoFactory.js +7 -0
- package/dist/dao/DaoFactory.js.map +1 -1
- package/dist/dao/DatabaseDaoFactory.js +4 -0
- package/dist/dao/DatabaseDaoFactory.js.map +1 -1
- package/dist/dao/OAuthApprovalDao.js +52 -0
- package/dist/dao/OAuthApprovalDao.js.map +1 -0
- package/dist/dao/OAuthApprovalDaoDbImpl.js +26 -0
- package/dist/dao/OAuthApprovalDaoDbImpl.js.map +1 -0
- package/dist/dao/OAuthTokenDaoDbImpl.js +2 -0
- package/dist/dao/OAuthTokenDaoDbImpl.js.map +1 -1
- package/dist/dao/index.js +1 -0
- package/dist/dao/index.js.map +1 -1
- package/dist/db/entities/OAuthApproval.js +58 -0
- package/dist/db/entities/OAuthApproval.js.map +1 -0
- package/dist/db/entities/OAuthToken.js +4 -0
- package/dist/db/entities/OAuthToken.js.map +1 -1
- package/dist/db/entities/index.js +3 -1
- package/dist/db/entities/index.js.map +1 -1
- package/dist/middlewares/auth.js +2 -2
- package/dist/middlewares/auth.js.map +1 -1
- package/dist/middlewares/userContext.js +26 -5
- package/dist/middlewares/userContext.js.map +1 -1
- package/dist/models/OAuth.js +19 -3
- package/dist/models/OAuth.js.map +1 -1
- package/dist/routes/index.js +6 -1
- package/dist/routes/index.js.map +1 -1
- package/dist/services/credentialBindingService.js +39 -3
- package/dist/services/credentialBindingService.js.map +1 -1
- package/dist/services/forwardAuthService.js +27 -11
- package/dist/services/forwardAuthService.js.map +1 -1
- package/dist/services/mcpService.js +131 -5
- package/dist/services/mcpService.js.map +1 -1
- package/dist/services/oauthApprovalService.js +74 -0
- package/dist/services/oauthApprovalService.js.map +1 -0
- package/dist/services/oauthClientRegistration.js +9 -4
- package/dist/services/oauthClientRegistration.js.map +1 -1
- package/dist/services/oauthServerService.js +24 -7
- package/dist/services/oauthServerService.js.map +1 -1
- package/dist/services/personalOAuthService.js +3 -1
- package/dist/services/personalOAuthService.js.map +1 -1
- package/dist/services/sseService.js +23 -11
- package/dist/services/sseService.js.map +1 -1
- package/dist/services/userService.js +2 -0
- package/dist/services/userService.js.map +1 -1
- package/dist/services/vectorSearchService.js +139 -73
- package/dist/services/vectorSearchService.js.map +1 -1
- package/dist/utils/bearerAuth.js +23 -0
- package/dist/utils/bearerAuth.js.map +1 -1
- package/dist/utils/migration.js +1 -0
- package/dist/utils/migration.js.map +1 -1
- package/dist/utils/passthroughHeaders.js +4 -3
- package/dist/utils/passthroughHeaders.js.map +1 -1
- package/dist/utils/resourceTemplateMatch.js +229 -0
- package/dist/utils/resourceTemplateMatch.js.map +1 -0
- package/dist/utils/upstreamError.js +10 -1
- package/dist/utils/upstreamError.js.map +1 -1
- package/frontend/dist/assets/{ActivityPage-DZFLY-Um.js → ActivityPage-DhNQ7kmd.js} +2 -2
- package/frontend/dist/assets/{ActivityPage-DZFLY-Um.js.map → ActivityPage-DhNQ7kmd.js.map} +1 -1
- package/frontend/dist/assets/CredentialsPage-DysT6EhJ.js +2 -0
- package/frontend/dist/assets/CredentialsPage-DysT6EhJ.js.map +1 -0
- package/frontend/dist/assets/{Dashboard-BRU2Gk9z.js → Dashboard-CIkS2wIr.js} +2 -2
- package/frontend/dist/assets/{Dashboard-BRU2Gk9z.js.map → Dashboard-CIkS2wIr.js.map} +1 -1
- package/frontend/dist/assets/{EndpointCopy-3f1Uw-gu.js → EndpointCopy-zuPM6wTV.js} +2 -2
- package/frontend/dist/assets/{EndpointCopy-3f1Uw-gu.js.map → EndpointCopy-zuPM6wTV.js.map} +1 -1
- package/frontend/dist/assets/{GroupsPage-D_E7QL_o.js → GroupsPage-DXE8on9r.js} +2 -2
- package/frontend/dist/assets/{GroupsPage-D_E7QL_o.js.map → GroupsPage-DXE8on9r.js.map} +1 -1
- package/frontend/dist/assets/{LoginPage-Bsfdp4yD.js → LoginPage-DP5A-fpr.js} +2 -2
- package/frontend/dist/assets/{LoginPage-Bsfdp4yD.js.map → LoginPage-DP5A-fpr.js.map} +1 -1
- package/frontend/dist/assets/{LogsPage-CCHmA5cZ.js → LogsPage-kFZF0A3x.js} +2 -2
- package/frontend/dist/assets/{LogsPage-CCHmA5cZ.js.map → LogsPage-kFZF0A3x.js.map} +1 -1
- package/frontend/dist/assets/{MarketPage-DrQQT14y.js → MarketPage-DaodfOD8.js} +2 -2
- package/frontend/dist/assets/{MarketPage-DrQQT14y.js.map → MarketPage-DaodfOD8.js.map} +1 -1
- package/frontend/dist/assets/OAuthApprovalsPage-BbkfaOs3.js +2 -0
- package/frontend/dist/assets/OAuthApprovalsPage-BbkfaOs3.js.map +1 -0
- package/frontend/dist/assets/{OAuthConsentPage-934ieVvL.js → OAuthConsentPage-BX5MIl4y.js} +2 -2
- package/frontend/dist/assets/{OAuthConsentPage-934ieVvL.js.map → OAuthConsentPage-BX5MIl4y.js.map} +1 -1
- package/frontend/dist/assets/{PromptsPage-QAI8kF63.js → PromptsPage-DEIMpdNn.js} +2 -2
- package/frontend/dist/assets/{PromptsPage-QAI8kF63.js.map → PromptsPage-DEIMpdNn.js.map} +1 -1
- package/frontend/dist/assets/{ResourcesPage-TclV1l2q.js → ResourcesPage-CjkaRPQd.js} +2 -2
- package/frontend/dist/assets/{ResourcesPage-TclV1l2q.js.map → ResourcesPage-CjkaRPQd.js.map} +1 -1
- package/frontend/dist/assets/{ServersPage-Bc0tS2uo.js → ServersPage-LpIlO6by.js} +4 -4
- package/frontend/dist/assets/{ServersPage-Bc0tS2uo.js.map → ServersPage-LpIlO6by.js.map} +1 -1
- package/frontend/dist/assets/SettingsPage-fL5-63Ve.js +14 -0
- package/frontend/dist/assets/SettingsPage-fL5-63Ve.js.map +1 -0
- package/frontend/dist/assets/{StatusDot-C_UTW6B7.js → StatusDot-DyEnhqJV.js} +2 -2
- package/frontend/dist/assets/{StatusDot-C_UTW6B7.js.map → StatusDot-DyEnhqJV.js.map} +1 -1
- package/frontend/dist/assets/{ToggleGroup-CUUsTJDm.js → ToggleGroup-CNkUGOeP.js} +2 -2
- package/frontend/dist/assets/{ToggleGroup-CUUsTJDm.js.map → ToggleGroup-CNkUGOeP.js.map} +1 -1
- package/frontend/dist/assets/{UsersPage-MpTb3xJ-.js → UsersPage-DeGScomQ.js} +2 -2
- package/frontend/dist/assets/{UsersPage-MpTb3xJ-.js.map → UsersPage-DeGScomQ.js.map} +1 -1
- package/frontend/dist/assets/{clipboard-DVbqnePj.js → clipboard-PC3TyCTa.js} +2 -2
- package/frontend/dist/assets/{clipboard-DVbqnePj.js.map → clipboard-PC3TyCTa.js.map} +1 -1
- package/frontend/dist/assets/{costRevision-DXEYAFUy.js → costRevision-DkLRM8DI.js} +2 -2
- package/frontend/dist/assets/{costRevision-DXEYAFUy.js.map → costRevision-DkLRM8DI.js.map} +1 -1
- package/frontend/dist/assets/index-8GliUQTA.js +3 -0
- package/frontend/dist/assets/index-8GliUQTA.js.map +1 -0
- package/frontend/dist/assets/index-CyD60EHI.css +1 -0
- package/frontend/dist/assets/{resourceService-DPjgql8Z.js → resourceService-BN-FT_uq.js} +2 -2
- package/frontend/dist/assets/{resourceService-DPjgql8Z.js.map → resourceService-BN-FT_uq.js.map} +1 -1
- package/frontend/dist/assets/{useCostData-CDNXYHZf.js → useCostData-DNk0WL-a.js} +2 -2
- package/frontend/dist/assets/{useCostData-CDNXYHZf.js.map → useCostData-DNk0WL-a.js.map} +1 -1
- package/frontend/dist/assets/{variableDetection-DGr_LErx.js → variableDetection-DQg-vRNn.js} +2 -2
- package/frontend/dist/assets/{variableDetection-DGr_LErx.js.map → variableDetection-DQg-vRNn.js.map} +1 -1
- package/frontend/dist/index.html +2 -2
- package/mcp_settings.json +2 -0
- package/package.json +1 -1
- package/frontend/dist/assets/CredentialsPage-BqEsnkMx.js +0 -2
- package/frontend/dist/assets/CredentialsPage-BqEsnkMx.js.map +0 -1
- package/frontend/dist/assets/SettingsPage-Dfhl51E1.js +0 -14
- package/frontend/dist/assets/SettingsPage-Dfhl51E1.js.map +0 -1
- package/frontend/dist/assets/index-BNm-68Gn.js +0 -3
- package/frontend/dist/assets/index-BNm-68Gn.js.map +0 -1
- package/frontend/dist/assets/index-C33aH9Y7.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sseService.js","sourceRoot":"","sources":["../../src/services/sseService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sseService.js","sourceRoot":"","sources":["../../src/services/sseService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { getOAuthApprovalDao } from '../dao/index.js';
|
|
1
2
|
import { revokeUserTokens } from '../models/OAuth.js';
|
|
2
3
|
import { getBearerKeyDao, getUserDao, getGroupDao, getServerDao } from '../dao/index.js';
|
|
3
4
|
import { logger } from '../utils/logger.js';
|
|
@@ -100,6 +101,7 @@ export const deleteUser = async (username) => {
|
|
|
100
101
|
if (userToDelete) {
|
|
101
102
|
await getBearerKeyDao().deleteByOwner(username);
|
|
102
103
|
await revokeUserTokens(username);
|
|
104
|
+
await getOAuthApprovalDao().deleteByUsername(username);
|
|
103
105
|
const groupDao = getGroupDao();
|
|
104
106
|
for (const group of await groupDao.findAll()) {
|
|
105
107
|
if (group.sharedWithUsers?.includes(username)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userService.js","sourceRoot":"","sources":["../../src/services/userService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"userService.js","sourceRoot":"","sources":["../../src/services/userService.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,8 +48,8 @@ const normalizeEmbedding = (embedding) => {
|
|
|
48
48
|
return embedding.map((value) => value / magnitude);
|
|
49
49
|
};
|
|
50
50
|
// Get LLM provider configuration from smartRouting settings or fallback to environment variables
|
|
51
|
-
const getLlmProviderConfig = async () => {
|
|
52
|
-
const smartRoutingConfig = await getSmartRoutingConfig();
|
|
51
|
+
const getLlmProviderConfig = async (snapshot) => {
|
|
52
|
+
const smartRoutingConfig = snapshot ?? (await getSmartRoutingConfig());
|
|
53
53
|
return {
|
|
54
54
|
apiKey: smartRoutingConfig.llmProviderApiKey,
|
|
55
55
|
baseURL: smartRoutingConfig.llmProviderBaseUrl,
|
|
@@ -572,7 +572,7 @@ const getDimensionsForModel = (model, configuredDimensions) => {
|
|
|
572
572
|
*/
|
|
573
573
|
const supportsDimensionsParameter = (model) => {
|
|
574
574
|
const normalized = model.toLowerCase();
|
|
575
|
-
return
|
|
575
|
+
return normalized.includes('text-embedding-3') || normalized.includes('gemini-embedding');
|
|
576
576
|
};
|
|
577
577
|
/**
|
|
578
578
|
* Decide whether the `dimensions` request parameter should be forwarded to the
|
|
@@ -590,8 +590,8 @@ const shouldForwardDimensionsToApi = (model, configuredDimensions, forcePassthro
|
|
|
590
590
|
return forcePassthrough === true || supportsDimensionsParameter(model);
|
|
591
591
|
};
|
|
592
592
|
// Initialize the OpenAI client with smartRouting configuration
|
|
593
|
-
const getOpenAIClient = async () => {
|
|
594
|
-
const config = await getLlmProviderConfig();
|
|
593
|
+
const getOpenAIClient = async (snapshot) => {
|
|
594
|
+
const config = await getLlmProviderConfig(snapshot);
|
|
595
595
|
return new OpenAI({
|
|
596
596
|
apiKey: config.apiKey, // Get API key from smartRouting settings or environment variables
|
|
597
597
|
baseURL: config.baseURL, // Get base URL from smartRouting settings or fallback to default
|
|
@@ -637,8 +637,8 @@ const decodeEmbedding = (value) => {
|
|
|
637
637
|
* configured task prefix (embeddingQueryPrefix / embeddingDocumentPrefix)
|
|
638
638
|
* @returns Promise with vector embedding as number array
|
|
639
639
|
*/
|
|
640
|
-
async function generateEmbedding(text, kind) {
|
|
641
|
-
const smartRoutingConfig = await getSmartRoutingConfig();
|
|
640
|
+
async function generateEmbedding(text, kind, snapshot) {
|
|
641
|
+
const smartRoutingConfig = snapshot ?? (await getSmartRoutingConfig());
|
|
642
642
|
applyConfiguredBasePacingDelay(smartRoutingConfig.basePacingDelayMs);
|
|
643
643
|
const provider = smartRoutingConfig.embeddingProvider || 'openai';
|
|
644
644
|
// Normalize whitespace before generating the embedding (issue #639):
|
|
@@ -678,8 +678,8 @@ async function generateEmbedding(text, kind) {
|
|
|
678
678
|
throw error;
|
|
679
679
|
}
|
|
680
680
|
}
|
|
681
|
-
const config = await getLlmProviderConfig();
|
|
682
|
-
const openai = await getOpenAIClient();
|
|
681
|
+
const config = await getLlmProviderConfig(smartRoutingConfig);
|
|
682
|
+
const openai = await getOpenAIClient(smartRoutingConfig);
|
|
683
683
|
// Check if API key is configured
|
|
684
684
|
if (!openai.apiKey) {
|
|
685
685
|
logger.warn('OpenAI API key is not configured. Using fallback embedding method.');
|
|
@@ -1002,6 +1002,41 @@ const buildToolSearchableText = (tool) => [
|
|
|
1002
1002
|
]
|
|
1003
1003
|
.filter(Boolean)
|
|
1004
1004
|
.join(' ');
|
|
1005
|
+
// Only database mutations share this barrier. Provider generation remains outside
|
|
1006
|
+
// it so cleanup does not wait for a slow provider or its retries. Dimension resets
|
|
1007
|
+
// affect the entire table, so the persistence barrier is global, not per server.
|
|
1008
|
+
let embeddingMutationTail = Promise.resolve();
|
|
1009
|
+
const withEmbeddingMutation = (operation) => {
|
|
1010
|
+
const run = embeddingMutationTail.then(operation);
|
|
1011
|
+
embeddingMutationTail = run.then(() => undefined, () => undefined);
|
|
1012
|
+
return run;
|
|
1013
|
+
};
|
|
1014
|
+
const activeEmbeddingBatches = new Map();
|
|
1015
|
+
const invalidateEmbeddingBatches = (serverName) => {
|
|
1016
|
+
for (const batch of activeEmbeddingBatches.get(serverName) ?? []) {
|
|
1017
|
+
batch.invalidated = true;
|
|
1018
|
+
}
|
|
1019
|
+
};
|
|
1020
|
+
// Compare only settings that affect document vectors or their destination. Keep
|
|
1021
|
+
// secrets in memory only; neither this identity nor the config is logged.
|
|
1022
|
+
const embeddingConfigIdentity = (config) => JSON.stringify([
|
|
1023
|
+
config.enabled,
|
|
1024
|
+
config.dbUrl,
|
|
1025
|
+
config.embeddingProvider,
|
|
1026
|
+
config.embeddingModel,
|
|
1027
|
+
config.embeddingDimensions,
|
|
1028
|
+
config.embeddingDimensionsApiPassthrough,
|
|
1029
|
+
config.embeddingEncodingFormat,
|
|
1030
|
+
config.embeddingDocumentPrefix,
|
|
1031
|
+
config.embeddingMaxTokens,
|
|
1032
|
+
config.llmProviderBaseUrl,
|
|
1033
|
+
config.llmProviderApiKey,
|
|
1034
|
+
config.azureOpenaiEndpoint,
|
|
1035
|
+
config.azureOpenaiApiKey,
|
|
1036
|
+
config.azureOpenaiApiVersion,
|
|
1037
|
+
config.azureOpenaiEmbeddingDeployment,
|
|
1038
|
+
config.azureOpenaiEmbeddingModel,
|
|
1039
|
+
]);
|
|
1005
1040
|
export const saveToolsAsVectorEmbeddings = async (serverName, tools, options = {}) => {
|
|
1006
1041
|
tools = filterModelVisibleTools(tools);
|
|
1007
1042
|
const shouldReport = options.reportProgress === true;
|
|
@@ -1019,6 +1054,12 @@ export const saveToolsAsVectorEmbeddings = async (serverName, tools, options = {
|
|
|
1019
1054
|
progress: { serverName, current, total: tools.length, status },
|
|
1020
1055
|
});
|
|
1021
1056
|
};
|
|
1057
|
+
const batch = {
|
|
1058
|
+
invalidated: false,
|
|
1059
|
+
};
|
|
1060
|
+
const batches = activeEmbeddingBatches.get(serverName) ?? new Set();
|
|
1061
|
+
batches.add(batch);
|
|
1062
|
+
activeEmbeddingBatches.set(serverName, batches);
|
|
1022
1063
|
try {
|
|
1023
1064
|
if (tools.length === 0) {
|
|
1024
1065
|
if (options.partial)
|
|
@@ -1026,7 +1067,8 @@ export const saveToolsAsVectorEmbeddings = async (serverName, tools, options = {
|
|
|
1026
1067
|
await removeServerToolEmbeddings(serverName);
|
|
1027
1068
|
return;
|
|
1028
1069
|
}
|
|
1029
|
-
const smartRoutingConfig = await getSmartRoutingConfig();
|
|
1070
|
+
const smartRoutingConfig = { ...(await getSmartRoutingConfig()) };
|
|
1071
|
+
const configIdentity = embeddingConfigIdentity(smartRoutingConfig);
|
|
1030
1072
|
if (!smartRoutingConfig.enabled) {
|
|
1031
1073
|
return;
|
|
1032
1074
|
}
|
|
@@ -1035,13 +1077,15 @@ export const saveToolsAsVectorEmbeddings = async (serverName, tools, options = {
|
|
|
1035
1077
|
logger.log('Database not initialized, initializing...');
|
|
1036
1078
|
await initializeDatabase();
|
|
1037
1079
|
}
|
|
1038
|
-
const config = await getLlmProviderConfig();
|
|
1080
|
+
const config = await getLlmProviderConfig(smartRoutingConfig);
|
|
1039
1081
|
const embeddingProvider = smartRoutingConfig.embeddingProvider || 'openai';
|
|
1040
1082
|
const persistedEmbeddingModel = embeddingProvider === 'azure_openai'
|
|
1041
1083
|
? smartRoutingConfig.azureOpenaiEmbeddingModel || 'text-embedding-3-small'
|
|
1042
1084
|
: config.embeddingModel;
|
|
1043
1085
|
const serverConfig = await getServerDao().findById(serverName);
|
|
1044
|
-
|
|
1086
|
+
if (!serverConfig || serverConfig.enabled === false || batch.invalidated)
|
|
1087
|
+
return;
|
|
1088
|
+
const serverDescription = serverConfig.description || '';
|
|
1045
1089
|
const serverSearchableText = buildServerSearchableText(serverName, serverDescription);
|
|
1046
1090
|
const expectedContentIds = tools
|
|
1047
1091
|
.map((tool) => `${serverName}:${tool.name}`)
|
|
@@ -1123,7 +1167,7 @@ export const saveToolsAsVectorEmbeddings = async (serverName, tools, options = {
|
|
|
1123
1167
|
const searchableText = buildToolSearchableText(tool);
|
|
1124
1168
|
logger.debug(`[Embedding] [${serverName}] Tool ${_toolIdx + 1}/${tools.length}: "${tool.name}" | raw text: ${searchableText.length} chars | preview: "${searchableText.substring(0, 200).replace(/\s+/g, ' ')}"`);
|
|
1125
1169
|
try {
|
|
1126
|
-
const embedding = await generateEmbedding(searchableText, 'document');
|
|
1170
|
+
const embedding = await generateEmbedding(searchableText, 'document', smartRoutingConfig);
|
|
1127
1171
|
toolEmbeddings.push({ tool, searchableText, embedding });
|
|
1128
1172
|
emitProgress(_toolIdx + 1, 'in_progress');
|
|
1129
1173
|
}
|
|
@@ -1141,7 +1185,7 @@ export const saveToolsAsVectorEmbeddings = async (serverName, tools, options = {
|
|
|
1141
1185
|
}
|
|
1142
1186
|
let serverEmbedding;
|
|
1143
1187
|
try {
|
|
1144
|
-
serverEmbedding = await generateEmbedding(serverSearchableText, 'document');
|
|
1188
|
+
serverEmbedding = await generateEmbedding(serverSearchableText, 'document', smartRoutingConfig);
|
|
1145
1189
|
}
|
|
1146
1190
|
catch (error) {
|
|
1147
1191
|
const status = extractErrorStatus(error);
|
|
@@ -1153,51 +1197,65 @@ export const saveToolsAsVectorEmbeddings = async (serverName, tools, options = {
|
|
|
1153
1197
|
emitProgress(toolEmbeddings.length, 'error');
|
|
1154
1198
|
throw error;
|
|
1155
1199
|
}
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
else {
|
|
1164
|
-
try {
|
|
1165
|
-
await getAppDataSource().query('SELECT 1');
|
|
1200
|
+
const persisted = await withEmbeddingMutation(async () => {
|
|
1201
|
+
// ── Phase 2: Persist embeddings to DB ──────────────────────────────────────
|
|
1202
|
+
// Probe the connection before writing; reconnect if it went stale during the
|
|
1203
|
+
// (potentially long) embedding-generation phase above.
|
|
1204
|
+
if (!isDatabaseConnected()) {
|
|
1205
|
+
logger.info('Database connection lost during embedding generation, reinitializing...');
|
|
1206
|
+
await initializeDatabase();
|
|
1166
1207
|
}
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1208
|
+
else {
|
|
1209
|
+
try {
|
|
1210
|
+
await getAppDataSource().query('SELECT 1');
|
|
1211
|
+
}
|
|
1212
|
+
catch {
|
|
1213
|
+
logger.warn('DB connection stale after embedding generation for server %s — reconnecting...', serverName);
|
|
1214
|
+
await reconnectDatabase();
|
|
1215
|
+
}
|
|
1170
1216
|
}
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1217
|
+
const currentServer = await getServerDao().findById(serverName);
|
|
1218
|
+
if (batch.invalidated || !currentServer || currentServer.enabled === false) {
|
|
1219
|
+
logger.log('[Embedding] Discarding stale server batch', { serverName });
|
|
1220
|
+
emitProgress(toolEmbeddings.length, 'error');
|
|
1221
|
+
return false;
|
|
1222
|
+
}
|
|
1223
|
+
if (configIdentity !== embeddingConfigIdentity(await getSmartRoutingConfig())) {
|
|
1224
|
+
throw new Error('Embedding configuration changed during generation; discarding stale batch');
|
|
1225
|
+
}
|
|
1226
|
+
const vectorRepository = getRepositoryFactory('vectorEmbeddings')();
|
|
1227
|
+
// Check DB vector dimensions exactly once for the whole batch (all embeddings
|
|
1228
|
+
// produced by the same model always share the same dimension count).
|
|
1229
|
+
if (toolEmbeddings.length > 0 || serverEmbedding.length > 0) {
|
|
1230
|
+
vectorDimensionsReset = await checkDatabaseVectorDimensions(toolEmbeddings[0]?.embedding.length ?? serverEmbedding.length);
|
|
1231
|
+
}
|
|
1232
|
+
for (const { tool, searchableText, embedding } of toolEmbeddings) {
|
|
1233
|
+
await vectorRepository.saveEmbedding('tool', `${serverName}:${tool.name}`, searchableText, embedding, {
|
|
1234
|
+
serverName,
|
|
1235
|
+
toolName: tool.name,
|
|
1236
|
+
description: tool.description,
|
|
1237
|
+
inputSchema: tool.inputSchema,
|
|
1238
|
+
toolSetHash: expectedToolSetHash,
|
|
1239
|
+
}, persistedEmbeddingModel);
|
|
1240
|
+
}
|
|
1241
|
+
// Remove stale tool embeddings left over from previously-removed tools.
|
|
1242
|
+
// Without this, count(existing) > count(expected) and the skip check on the
|
|
1243
|
+
// next restart would always fail, forcing a full re-generation every time.
|
|
1244
|
+
if (!options.partial && toolEmbeddings.length > 0) {
|
|
1245
|
+
const currentContentIds = toolEmbeddings.map(({ tool }) => `${serverName}:${tool.name}`);
|
|
1246
|
+
const staleCount = await vectorRepository.deleteStaleToolEmbeddings(serverName, currentContentIds, persistedEmbeddingModel);
|
|
1247
|
+
if (staleCount > 0) {
|
|
1248
|
+
logger.log(`[Embedding] [${serverName}] Removed ${staleCount} stale tool embedding(s)`);
|
|
1249
|
+
}
|
|
1250
|
+
}
|
|
1251
|
+
await vectorRepository.saveEmbedding('server', serverName, serverSearchableText, serverEmbedding, {
|
|
1180
1252
|
serverName,
|
|
1181
|
-
|
|
1182
|
-
description: tool.description,
|
|
1183
|
-
inputSchema: tool.inputSchema,
|
|
1184
|
-
toolSetHash: expectedToolSetHash,
|
|
1253
|
+
description: serverDescription,
|
|
1185
1254
|
}, persistedEmbeddingModel);
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
if (!options.partial && toolEmbeddings.length > 0) {
|
|
1191
|
-
const currentContentIds = toolEmbeddings.map(({ tool }) => `${serverName}:${tool.name}`);
|
|
1192
|
-
const staleCount = await vectorRepository.deleteStaleToolEmbeddings(serverName, currentContentIds, persistedEmbeddingModel);
|
|
1193
|
-
if (staleCount > 0) {
|
|
1194
|
-
logger.log(`[Embedding] [${serverName}] Removed ${staleCount} stale tool embedding(s)`);
|
|
1195
|
-
}
|
|
1196
|
-
}
|
|
1197
|
-
await vectorRepository.saveEmbedding('server', serverName, serverSearchableText, serverEmbedding, {
|
|
1198
|
-
serverName,
|
|
1199
|
-
description: serverDescription,
|
|
1200
|
-
}, persistedEmbeddingModel);
|
|
1255
|
+
return true;
|
|
1256
|
+
});
|
|
1257
|
+
if (!persisted)
|
|
1258
|
+
return;
|
|
1201
1259
|
emitProgress(toolEmbeddings.length, 'completed');
|
|
1202
1260
|
if (vectorDimensionsReset) {
|
|
1203
1261
|
scheduleFullEmbeddingResync(`Vector dimensions changed while syncing server "${serverName}"`);
|
|
@@ -1211,6 +1269,11 @@ export const saveToolsAsVectorEmbeddings = async (serverName, tools, options = {
|
|
|
1211
1269
|
logger.error('Error saving tool embeddings', safeStringify({ serverName, error }));
|
|
1212
1270
|
throw error;
|
|
1213
1271
|
}
|
|
1272
|
+
finally {
|
|
1273
|
+
batches.delete(batch);
|
|
1274
|
+
if (batches.size === 0)
|
|
1275
|
+
activeEmbeddingBatches.delete(serverName);
|
|
1276
|
+
}
|
|
1214
1277
|
};
|
|
1215
1278
|
/**
|
|
1216
1279
|
* Search for tools using vector similarity
|
|
@@ -1402,26 +1465,29 @@ export const getAllVectorizedTools = async (serverNames) => {
|
|
|
1402
1465
|
* @param serverName Server name
|
|
1403
1466
|
*/
|
|
1404
1467
|
export const removeServerToolEmbeddings = async (serverName) => {
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1468
|
+
invalidateEmbeddingBatches(serverName);
|
|
1469
|
+
await withEmbeddingMutation(async () => {
|
|
1470
|
+
try {
|
|
1471
|
+
const smartRoutingConfig = await getSmartRoutingConfig();
|
|
1472
|
+
if (!smartRoutingConfig.dbUrl && !process.env.DB_URL) {
|
|
1473
|
+
logger.warn('Skipping embedding cleanup because DB URL is not configured', {
|
|
1474
|
+
serverName,
|
|
1475
|
+
});
|
|
1476
|
+
return;
|
|
1477
|
+
}
|
|
1478
|
+
// Ensure database is initialized before using repository
|
|
1479
|
+
if (!isDatabaseConnected()) {
|
|
1480
|
+
logger.info('Database not initialized, initializing...');
|
|
1481
|
+
await initializeDatabase();
|
|
1482
|
+
}
|
|
1483
|
+
const vectorRepository = getRepositoryFactory('vectorEmbeddings')();
|
|
1484
|
+
const removedCount = await vectorRepository.deleteByServerName(serverName);
|
|
1485
|
+
logger.log('Removed server embeddings', safeStringify({ serverName, removedCount }));
|
|
1412
1486
|
}
|
|
1413
|
-
|
|
1414
|
-
|
|
1415
|
-
logger.info('Database not initialized, initializing...');
|
|
1416
|
-
await initializeDatabase();
|
|
1487
|
+
catch (error) {
|
|
1488
|
+
logger.error('Error removing server embeddings', safeStringify({ serverName, error }));
|
|
1417
1489
|
}
|
|
1418
|
-
|
|
1419
|
-
const removedCount = await vectorRepository.deleteByServerName(serverName);
|
|
1420
|
-
logger.log('Removed server embeddings', safeStringify({ serverName, removedCount }));
|
|
1421
|
-
}
|
|
1422
|
-
catch (error) {
|
|
1423
|
-
logger.error('Error removing server embeddings', safeStringify({ serverName, error }));
|
|
1424
|
-
}
|
|
1490
|
+
});
|
|
1425
1491
|
};
|
|
1426
1492
|
/**
|
|
1427
1493
|
* Remove the embeddings of specific tools of a server, e.g. tools disabled in
|