mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-12-23 03:40:14 +01:00
refactor: remove getCustomConfig dependency in config route
This commit is contained in:
parent
2229672929
commit
677481dde6
2 changed files with 27 additions and 13 deletions
|
|
@ -1,10 +1,14 @@
|
||||||
const express = require('express');
|
const express = require('express');
|
||||||
const { isEnabled } = require('@librechat/api');
|
const { isEnabled } = require('@librechat/api');
|
||||||
const { logger } = require('@librechat/data-schemas');
|
const { logger } = require('@librechat/data-schemas');
|
||||||
const { CacheKeys, defaultSocialLogins, Constants } = require('librechat-data-provider');
|
const {
|
||||||
const { getCustomConfig } = require('~/server/services/Config/getCustomConfig');
|
Constants,
|
||||||
const { getAppConfig } = require('~/server/services/Config/getAppConfig');
|
CacheKeys,
|
||||||
|
removeNullishValues,
|
||||||
|
defaultSocialLogins,
|
||||||
|
} = require('librechat-data-provider');
|
||||||
const { getLdapConfig } = require('~/server/services/Config/ldap');
|
const { getLdapConfig } = require('~/server/services/Config/ldap');
|
||||||
|
const { getAppConfig } = require('~/server/services/Config/app');
|
||||||
const { getProjectByName } = require('~/models/Project');
|
const { getProjectByName } = require('~/models/Project');
|
||||||
const { getMCPManager } = require('~/config');
|
const { getMCPManager } = require('~/config');
|
||||||
const { getLogStores } = require('~/cache');
|
const { getLogStores } = require('~/cache');
|
||||||
|
|
@ -112,25 +116,30 @@ router.get('/', async function (req, res) {
|
||||||
};
|
};
|
||||||
|
|
||||||
payload.mcpServers = {};
|
payload.mcpServers = {};
|
||||||
const config = await getCustomConfig();
|
const getMCPServers = () => {
|
||||||
if (config?.mcpServers != null) {
|
|
||||||
try {
|
try {
|
||||||
const mcpManager = getMCPManager();
|
const mcpManager = getMCPManager();
|
||||||
|
if (!mcpManager) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const mcpServers = mcpManager.getAllServers();
|
||||||
|
if (!mcpServers) return;
|
||||||
const oauthServers = mcpManager.getOAuthServers();
|
const oauthServers = mcpManager.getOAuthServers();
|
||||||
for (const serverName in config.mcpServers) {
|
for (const serverName in mcpServers) {
|
||||||
const serverConfig = config.mcpServers[serverName];
|
const serverConfig = mcpServers[serverName];
|
||||||
payload.mcpServers[serverName] = {
|
payload.mcpServers[serverName] = removeNullishValues({
|
||||||
startup: serverConfig?.startup,
|
startup: serverConfig?.startup,
|
||||||
chatMenu: serverConfig?.chatMenu,
|
chatMenu: serverConfig?.chatMenu,
|
||||||
isOAuth: oauthServers?.has(serverName),
|
isOAuth: oauthServers?.has(serverName),
|
||||||
customUserVars: serverConfig?.customUserVars || {},
|
customUserVars: serverConfig?.customUserVars,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
logger.error('Error loading MCP servers', error);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
|
||||||
} catch (err) {
|
|
||||||
logger.error('Error loading MCP servers', err);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
getMCPServers();
|
||||||
const webSearchConfig = appConfig.webSearch;
|
const webSearchConfig = appConfig.webSearch;
|
||||||
if (
|
if (
|
||||||
webSearchConfig != null &&
|
webSearchConfig != null &&
|
||||||
|
|
|
||||||
|
|
@ -54,6 +54,11 @@ export class MCPManager extends UserConnectionManager {
|
||||||
return this.serversRegistry.oauthServers!;
|
return this.serversRegistry.oauthServers!;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Get all servers */
|
||||||
|
public getAllServers(): t.MCPServers | null {
|
||||||
|
return this.serversRegistry.rawConfigs!;
|
||||||
|
}
|
||||||
|
|
||||||
/** Returns all available tool functions from app-level connections */
|
/** Returns all available tool functions from app-level connections */
|
||||||
public getAppToolFunctions(): t.LCAvailableTools | null {
|
public getAppToolFunctions(): t.LCAvailableTools | null {
|
||||||
return this.serversRegistry.toolFunctions!;
|
return this.serversRegistry.toolFunctions!;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue