diff --git a/api/server/routes/config.js b/api/server/routes/config.js index 4fbeb639c8..4304c4e789 100644 --- a/api/server/routes/config.js +++ b/api/server/routes/config.js @@ -3,9 +3,9 @@ const { logger } = require('@librechat/data-schemas'); const { CacheKeys, defaultSocialLogins, Constants } = require('librechat-data-provider'); const { getCustomConfig } = require('~/server/services/Config/getCustomConfig'); const { getLdapConfig } = require('~/server/services/Config/ldap'); +const { getMCPManager } = require('~/config'); const { getProjectByName } = require('~/models/Project'); const { isEnabled } = require('~/server/utils'); -const { getMCPManager } = require('~/config'); const { getLogStores } = require('~/cache'); const router = express.Router(); @@ -105,12 +105,14 @@ router.get('/', async function (req, res) { if (config?.mcpServers != null) { const mcpManager = getMCPManager(); const oauthServers = mcpManager.getOAuthServers(); + for (const serverName in config.mcpServers) { const serverConfig = config.mcpServers[serverName]; payload.mcpServers[serverName] = { customUserVars: serverConfig?.customUserVars || {}, chatMenu: serverConfig?.chatMenu, isOAuth: oauthServers.has(serverName), + startup: serverConfig?.startup, }; } } diff --git a/client/src/hooks/Nav/useSideNavLinks.ts b/client/src/hooks/Nav/useSideNavLinks.ts index 3f1e7904fd..93f96de068 100644 --- a/client/src/hooks/Nav/useSideNavLinks.ts +++ b/client/src/hooks/Nav/useSideNavLinks.ts @@ -157,7 +157,8 @@ export default function useSideNavLinks({ Object.values(startupConfig.mcpServers).some( (server: any) => (server.customUserVars && Object.keys(server.customUserVars).length > 0) || - server.isOAuth, + server.isOAuth || + server.startup === false, ) ) { links.push({ diff --git a/packages/data-provider/src/config.ts b/packages/data-provider/src/config.ts index f77272a1f6..4d53fba805 100644 --- a/packages/data-provider/src/config.ts +++ b/packages/data-provider/src/config.ts @@ -614,6 +614,7 @@ export type TStartupConfig = { >; chatMenu?: boolean; isOAuth?: boolean; + startup?: boolean; } >; mcpPlaceholder?: string;