Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Configuratiestructuur

Let op: Velden die niet specifiek als vereist worden genoemd, zijn optioneel.

version

  • vereist
KeyTypeDescriptionExample
versionStringSpecificeert de versie van het configuratiebestand.version: 1.3.13

cache

KeyTypeDescriptionExample
cacheBooleanSchakelt caching in of uit. Stel in op `true` om caching in te schakelen (standaard).cache: true

skillSync

KeyTypeDescriptionExample
skillSyncObjectConfigureert externe Skill-mirroring. In v1.3.13 wordt GitHub Skill Sync ondersteund.

zie: Skill Sync Object Structure

messageFilter

KeyTypeDescriptionExample
messageFilterObjectConfigureert server-side berichtfilters. In v1.3.13 kan `messageFilter.pii` tekst die eruitziet als inloggegevens weigeren voordat modelaanroepen en persistentie plaatsvinden.

zie: Message Filter Object Structure

fileStrategy

  • Opties: "local" | "firebase" | "s3" | "azure_blob" | "cloudfront"
KeyTypeDescriptionExample
fileStrategyStringBepaalt waar door gebruikers geüploade/gegenereerde bestanden worden opgeslagen. Standaard ingesteld op `"local"` indien weggelaten.fileStrategy: "firebase"
  • Opmerkingen:
    • "cloudfront" slaat bestanden op in S3 en retourneert CloudFront-URL's voor stabiele media-aflevering, ondertekende cookies en ondertekende downloads.
    • "firebase" serveert bestanden via Firebase Storage en Firebase Hosting edge-locaties.
    • S3 serveert bestanden via presigned URLs (tijdelijke ondertekende tokens) die verlopen. Zodra deze zijn verlopen, zal elke afbeelding of avatar die naar die URL verwijst, als defect worden weergegeven in de UI. Dit maakt S3 ongeschikt als primaire strategie voor visuele assets. Zie de gerelateerde discussie voor details.
    • Voor de beste prestaties van afbeeldingen en avatars, gebruik "cloudfront" of "firebase", of configureer fileStrategies om avatar en image naar een strategie met CDN-ondersteuning te routeren.
    • Raadpleeg de File Storage & CDN documentation voor details over de installatie.

fileStrategies

Biedt gedetailleerde controle over bestandsopslagstrategieën voor verschillende bestandstypen.

  • Beschikbare strategieën: "local" | "firebase" | "s3" | "azure_blob" | "cloudfront"
KeyTypeDescriptionExample
fileStrategiesObjectConfigureert verschillende opslagstrategieën voor verschillende bestandstypen. Flexibeler dan de enkele fileStrategy optie.

Sub-keys:

KeyTypeDescriptionExample
defaultStringFallback-opslagstrategie wanneer een specifiek type niet is gedefinieerd. Standaard ingesteld op "local".
avatarStringOpslagstrategie voor gebruikers- en agent-avatar-afbeeldingen. Het wordt aanbevolen om een CDN-ondersteunde strategie (`"cloudfront"` of `"firebase"`) te gebruiken voor de beste prestaties.
imageStringOpslagstrategie voor afbeeldingen die in chats zijn geüpload. Het wordt aanbevolen om een strategie met CDN-ondersteuning (`"cloudfront"` of `"firebase"`) te gebruiken voor de beste prestaties.
documentStringOpslagstrategie voor documentuploads (PDF's, tekstbestanden, enz.).
skillsStringOpslagstrategie voor bestanden gebundeld met Skills.
  • Opmerkingen:
    • Deze instelling heeft voorrang op de enkele fileStrategy optie
    • Als een specifiek bestandstype niet is geconfigureerd, valt het terug op default, daarna op fileStrategy en uiteindelijk op "local"
    • Afbeeldingen en avatars hebben persistente, stabiele URL's nodig om correct te worden weergegeven in de UI. S3 presigned URL's verlopen (AWS-limiet: 7 dagen voor IAM-gebruikers, uren voor STS/op rollen gebaseerde credentials), wat leidt tot kapotte afbeeldingen in de model selector en chat UI. Zie de gerelateerde discussie voor de volledige context. Gebruik "cloudfront" of "firebase" voor avatar en image om dit te voorkomen.
    • S3 en Azure Blob Storage zijn zeer geschikt voor document opslag, waarbij kortstondige presigned download-URL's passend zijn.
    • Raadpleeg de File Storage & CDN documentation voor installatiedetails voor elke opslagprovider.

Voorbeelden:

# Use a single strategy for all file types
fileStrategies:
  default: 's3'
# Route images and avatars to CDN, keep documents in object storage
fileStrategies:
  avatar: 'cloudfront' # CDN delivery for avatars
  image: 'cloudfront' # CDN delivery for generated/uploaded images
  document: 's3' # Object storage for documents
# Only configure specific types, others use default
fileStrategies:
  default: 'local'
  avatar: 'firebase' # Only avatars use Firebase CDN, everything else is local

cloudfront

Sleutel:

KeyTypeDescriptionExample
cloudfrontObjectConfigureert CloudFront-levering voor bestanden die zijn opgeslagen in S3.

Subkeys:

KeyTypeDescriptionExample
domainStringCloudFront distributiedomein of CNAME. Vereist wanneer een bestandsstrategie `"cloudfront"` gebruikt.domain: "https://cdn.example.com"
distributionIdStringCloudFront distributie-ID. Vereist wanneer `invalidateOnDelete` true is.distributionId: "E1234ABCD"
invalidateOnDeleteBooleanMaakt een CloudFront-invalidation aan voor verwijderde bestanden. Standaard: false.invalidateOnDelete: false
imageSigningStringBeheert de toegang tot inline afbeeldingen/avatars. Opties: `"none"` of `"cookies"`. `"url"` is gereserveerd en niet geïmplementeerd voor afbeeldingen.imageSigning: "cookies"
cookieDomainStringGedeeld bovenliggend cookiedomein vereist voor ondertekende cookies. Moet beginnen met een punt.cookieDomain: ".example.com"
cookieExpiryNumberLevensduur van ondertekende cookie in seconden. Standaard: 1800, maximum: 604800.cookieExpiry: 1800
urlExpiryNumberLevensduur van de ondertekende CloudFront-download-URL in seconden. Standaard: 3600.urlExpiry: 3600
storageRegionStringOptioneel regio-label dat wordt gebruikt in gegenereerde object-keys wanneer regio-paden zijn ingeschakeld.storageRegion: "us-east-2"
includeRegionInPathBooleanBevat de opslagregio in nieuw gegenereerde object-keys. Standaard: false.includeRegionInPath: false
requireSignedAccessBooleanWeigert opstarten wanneer signed-cookie CloudFront-toegang niet kan worden geïnitialiseerd. Standaard: false.requireSignedAccess: true

zie: CloudFront Object Structure en CloudFront with S3

filteredTools

KeyTypeDescriptionExample
filteredToolsArray of StringsFiltert specifieke tools uit zowel Plugins als OpenAI Assistants endpoint.filteredTools: ["scholarai", "calculator"]
  • Opmerkingen:
    • Als zowel includedTools als filteredTools zijn opgegeven, wordt alleen includedTools herkend.
    • Is van invloed op zowel de gptPlugins als de assistants endpoint
    • Je kunt de namen van de tools om te filteren vinden in api/app/clients/tools/manifest.json
      • Gebruik de pluginKey waarde
    • Ook alle bestanden die onder de map ".well-known" staan: api/app/clients/tools/.well-known
      • Gebruik de name_for_model waarde

includedTools

KeyTypeDescriptionExample
includedToolsArray of StringsBevat specifieke tools van zowel Plugins als OpenAI Assistants endpoints.includedTools: ["calculator"]
  • Opmerkingen:
    • Als zowel includedTools als filteredTools zijn opgegeven, wordt alleen includedTools herkend.
    • Is van invloed op zowel de gptPlugins als de assistants endpoint
    • Je kunt de namen van de tools om te filteren vinden in api/app/clients/tools/manifest.json
      • Gebruik de pluginKey waarde
    • Ook alle bestanden die onder de map ".well-known" staan: api/app/clients/tools/.well-known
      • Gebruik de name_for_model waarde
KeyTypeDescriptionExample
secureImageLinksBooleanOf de toegang tot afbeeldingslinks die lokaal door de app worden gehost al dan niet moet worden beveiligd. Standaard: false.secureImageLinks: true

imageOutputType

  • Let op: Hoofdlettergevoelig. Het Google endpoint ondersteunt alleen "jpeg" en "png" output-types.
  • Opties: "png" | "webp" | "jpeg"
KeyTypeDescriptionExample
imageOutputTypeStringHet type afbeeldingsuitvoer voor afbeeldingsreacties. Standaard ingesteld op "png" indien weggelaten.imageOutputType: "webp"

ocr

Sleutel:

KeyTypeDescriptionExample
ocrObjectConfigureert Optical Character Recognition (OCR)-instellingen voor het extraheren van tekst uit afbeeldingen.

Subkeys:

KeyTypeDescriptionExample
apiKeyStringDe API-sleutel voor de OCR-service.
baseURLStringDe basis-URL voor de OCR-service API.
strategyStringDe te gebruiken OCR-strategie. Opties zijn "mistral_ocr", "azure_mistral_ocr", "vertexai_mistral_ocr", "document_parser" of "custom_ocr".
mistralModelStringHet Mistral-model dat moet worden gebruikt voor OCR-verwerking.

zie: OCR Config Object Structure

webSearch

Sleutel:

KeyTypeDescriptionExample
webSearchObjectConfigureert de functionaliteit voor webzoeken, inclusief zoekproviders, content-scrapers en resultaat-rerankers.

Subkeys:

KeyTypeDescriptionExample
serperApiKeyStringOmgevingsvariabele voor de Serper API-sleutel. Indien niet ingesteld in .env, wordt gebruikers gevraagd deze via de UI in te voeren.
searxngInstanceUrlStringOmgevingsvariabele voor de URL van de SearXNG-instantie. Indien niet ingesteld in .env, worden gebruikers via de UI gevraagd deze op te geven.
searxngApiKeyStringOmgevingsvariabele voor de SearXNG API-sleutel. Indien niet ingesteld in .env, zullen gebruikers via de UI worden gevraagd deze op te geven.
tavilyApiKeyStringOmgevingsvariabele voor de Tavily API-sleutel. Wordt gebruikt voor zowel zoeken als scrapen. Indien niet ingesteld in .env, wordt gebruikers gevraagd deze via de UI op te geven.
tavilySearchUrlStringOmgevingsvariabele voor een aangepaste Tavily Search API URL. Optioneel; standaard ingesteld op de door Tavily gehoste zoekfunctie indien niet opgegeven.
tavilyExtractUrlStringOmgevingsvariabele voor een aangepaste Tavily Extract API URL. Optioneel; standaard ingesteld op de door Tavily gehoste extractie indien niet opgegeven.
firecrawlApiKeyStringOmgevingsvariabele voor de Firecrawl API-sleutel. Indien niet ingesteld in .env, wordt gebruikers gevraagd deze via de UI op te geven.
firecrawlApiUrlStringOmgevingsvariabele voor de Firecrawl API URL. Indien niet ingesteld in .env, wordt gebruikers gevraagd deze via de UI op te geven.
jinaApiKeyStringOmgevingsvariabele voor de Jina API-sleutel. Indien niet ingesteld in .env, zullen gebruikers via de UI worden gevraagd deze op te geven.
cohereApiKeyStringOmgevingsvariabele voor de Cohere API-sleutel. Indien niet ingesteld in .env, wordt gebruikers gevraagd deze via de UI in te voeren.
searchProviderStringSpecificeert welke zoekprovider moet worden gebruikt. Opties: "serper", "searxng", "tavily".
scraperProviderStringSpecificeert welke scraper-service moet worden gebruikt. Opties: "firecrawl", "serper", "tavily".
firecrawlVersionStringSpecificeert de Firecrawl API-versie (v0 of v1).
rerankerTypeStringSpecificeert welke reranker-service moet worden gebruikt. Stel in op "none" om reranking over te slaan. Opties: "jina", "cohere", "none".
scraperTimeoutIntegerTime-out in milliseconden voor scraper-verzoeken. Moet een niet-negatief geheel getal zijn.
safeSearchNumberFilteringsniveau voor veilig zoeken. 0 = UIT, 1 = GEMATIGD (standaard), 2 = STRIKT.

zie: Web Search Object Structure

fileConfig

Sleutel:

KeyTypeDescriptionExample
fileConfigObjectConfigureert instellingen voor bestandsafhandeling voor de applicatie, inclusief groottelimieten en beperkingen voor MIME-types.

Subkeys:

KeyTypeDescriptionExample
endpointsRecord/ObjectSpecificeert configuraties voor bestandsafhandeling voor individuele endpoints, wat aanpassing per endpoint mogelijk maakt.
serverFileSizeLimitNumberDe maximale bestandsgrootte (in MB) die de server accepteert. Is wereldwijd van toepassing op alle endpoints, tenzij overschreven door endpoint-specifieke instellingen.
avatarSizeLimitNumberMaximale grootte (in MB) voor gebruikersavatar-afbeeldingen.
clientImageResizeObjectConfigureert client-side afbeeldingsverkleining om bestandsuploads te optimaliseren en uploadfouten door grote afbeeldingsformaten te voorkomen.
ocrObjectInstellingen voor Optical Character Recognition (OCR) bestandsverwerking.
textObjectInstellingen voor het direct parsen van tekstbestanden.
sttObjectInstellingen voor Speech-to-Text (STT) audiobestandverwerking.
fileTokenLimitNumberMaximaal aantal tokens uit tekstbestanden om op te nemen in prompts vóór afkapping.fileTokenLimit: 100000

clientImageResize

Sleutel:

KeyTypeDescriptionExample
clientImageResizeObjectConfigureert client-side afbeeldingsverkleining om bestandsuploads te optimaliseren en uploadfouten door grote afbeeldingsformaten te voorkomen.

Subkeys:

KeyTypeDescriptionExample
enabledBooleanSchakelt de functionaliteit voor het aanpassen van de grootte van afbeeldingen aan de clientzijde in of uit. Standaard: false.enabled: true
maxWidthNumberMaximale breedte in pixels voor aangepaste afbeeldingen. Afbeeldingen die breder zijn dan dit worden aangepast. Standaard: 1920.maxWidth: 1024
maxHeightNumberMaximale hoogte in pixels voor aangepaste afbeeldingen. Afbeeldingen die hoger zijn dan dit worden aangepast. Standaard: 1080.maxHeight: 768
qualityNumberJPEG-compressiekwaliteit (0.1 tot 1.0). Hogere waarden betekenen een betere kwaliteit maar grotere bestandsgroottes. Standaard: 0.8.quality: 0.9
compressFormatStringUitvoerformaat voor gecomprimeerde afbeeldingen. Opties: "jpeg", "webp". Standaard: "jpeg".compressFormat: "webp"

Beschrijving:

De clientImageResize configuratie maakt automatische beeldvergroting aan de clientzijde mogelijk vóór het uploaden. Deze functie helpt bij:

  • Voorkom uploadfouten doordat grote afbeeldingsbestanden de serverlimieten overschrijden
  • Verminder bandbreedtegebruik door afbeeldingen te comprimeren vóór verzending
  • Verbeter de uploadprestaties met kleinere bestandsgroottes
  • Behoud de beeldkwaliteit terwijl de bestandsgrootte wordt geoptimaliseerd

Wanneer ingeschakeld, worden afbeeldingen die de opgegeven maxWidth of maxHeight dimensies overschrijden, automatisch aan de clientzijde aangepast voordat ze naar de server worden geüpload. De schaling behoudt de oorspronkelijke beeldverhouding en zorgt er tegelijkertijd voor dat de afbeelding binnen de opgegeven grenzen past.

Voorbeeld:

fileConfig:
  clientImageResize:
    enabled: true
    maxWidth: 1920
    maxHeight: 1080
    quality: 0.8
    compressFormat: 'jpeg'

Opmerkingen:

  • Alleen van toepassing op afbeeldingsbestanden (JPEG, PNG, WebP, enz.)
  • Het formaat wordt automatisch aangepast wanneer afbeeldingen de opgegeven afmetingen overschrijden
  • De oorspronkelijke beeldverhouding blijft behouden tijdens het wijzigen van het formaat
  • Deze functie werkt met alle ondersteunde image upload endpoints
  • De kwaliteitsinstelling is alleen van toepassing op JPEG- en WebP-formaten
  • Het instellen van de kwaliteit op een te lage waarde (< 0,5) kan leiden tot merkbare beeldverslechtering.

zie: File Config Object Structure

rateLimits

Sleutel:

KeyTypeDescriptionExample
rateLimitsObjectDefinieert rate limiting-beleid om misbruik te voorkomen door het aantal verzoeken te beperken.

Subkeys:

KeyTypeDescriptionExample
fileUploadsObjectConfigureert snelheidslimieten specifiek voor bestandsupload-bewerkingen.
conversationsImportObjectConfigureert rate limits specifiek voor importbewerkingen van gesprekken.
sttObjectConfigureert snelheidslimieten specifiek voor speech-to-text (stt) verzoeken
ttsObjectConfigureert snelheidslimieten specifiek voor text-to-speech (tts) verzoeken

fileUploads Subkeys:

KeyTypeDescriptionExample
ipMaxNumberMaximaal aantal toegestane uploads per IP-adres per venster.
ipWindowInMinutesNumberTijdvenster in minuten voor de IP-gebaseerde uploadlimiet.
userMaxNumberMaximaal aantal uploads toegestaan per gebruiker per venster.
userWindowInMinutesNumberTijdvenster in minuten voor de uploadlimiet per gebruiker.

conversationsImport Subkeys:

KeyTypeDescriptionExample
ipMaxNumberMaximaal aantal imports toegestaan per IP-adres per venster.
ipWindowInMinutesNumberTijdvenster in minuten voor de IP-gebaseerde importlimiet.
userMaxNumberMaximaal aantal imports per gebruiker per venster.
userWindowInMinutesNumberTijdvenster in minuten voor de gebruikersgebaseerde importlimiet.

tts Subkeys:

KeyTypeDescriptionExample
ipMaxNumberMaximaal aantal toegestane verzoeken per IP-adres per tijdvenster.
ipWindowInMinutesNumberTijdvenster in minuten voor de IP-gebaseerde verzoeklimiet.
userMaxNumberMaximaal aantal verzoeken per gebruiker per venster.
userWindowInMinutesNumberTijdvenster in minuten voor de limiet van gebruikersgebaseerde verzoeken.

stt Subkeys:

KeyTypeDescriptionExample
ipMaxNumberMaximaal aantal toegestane verzoeken per IP-adres per tijdvenster.
ipWindowInMinutesNumberTijdvenster in minuten voor de IP-gebaseerde verzoeklimiet.
userMaxNumberMaximaal aantal verzoeken per gebruiker per venster.
userWindowInMinutesNumberTijdvenster in minuten voor de limiet van gebruikersgebaseerde verzoeken.
  • Voorbeeld:
rateLimits:
  fileUploads:
    ipMax: 100
    ipWindowInMinutes: 60
    userMax: 50
    userWindowInMinutes: 60
  conversationsImport:
    ipMax: 100
    ipWindowInMinutes: 60
    userMax: 50
    userWindowInMinutes: 60
  stt:
    ipMax: 100
    ipWindowInMinutes: 1
    userMax: 50
    userWindowInMinutes: 1
  tts:
    ipMax: 100
    ipWindowInMinutes: 1
    userMax: 50
    userWindowInMinutes: 1

registration

Sleutel:

KeyTypeDescriptionExample
registrationObjectConfigureert registratie-gerelateerde instellingen voor de applicatie.

Subkeys:

KeyTypeDescriptionExample
socialLoginsConfiguraties voor sociaal inloggen.
allowedDomainsSpecificeert toegestane domeinen voor registratie.

zie ook:

memory

Sleutel:

KeyTypeDescriptionExample
memoryObjectConfigureert gespreksgeheugen en personalisatiefuncties voor de applicatie.

Subkeys:

KeyTypeDescriptionExample
disabledBooleanSchakelt de geheugenfunctionaliteit uit wanneer ingesteld op true.
validKeysArray of StringsSpecificeert welke sleutels geldig zijn voor geheugenopslag.
tokenLimitNumberStelt het maximale aantal tokens in voor geheugenopslag en verwerking.
charLimitNumberStelt het maximale aantal tekens in voor geheugenopslag. Standaard: 10000.
maxInputTokensNumberLimiteert het aantal tokens van recente chats die naar de automatische geheugenagent worden verzonden vóór extractie. Standaard: 12000.
personalizeBooleanSchakelt personalisatiefuncties in of uit.
messageWindowSizeNumberSpecificeert het aantal recente berichten dat moet worden opgenomen in de geheugencontext.
agentObject | UnionConfigureert de agent die verantwoordelijk is voor geheugenverwerking.

zie: Memory Object Structure

summarization

Sleutel:

KeyTypeDescriptionExample
summarizationObjectConfigureert het samenvatten van gesprekken en het snoeien van context. Vervangt de `summarize` en `summaryModel` velden per endpoint.

Subkeys:

KeyTypeDescriptionExample
providerStringLLM-provider voor samenvattingsaanroepen. Standaard ingesteld op de eigen provider van de agent.
modelStringModel voor samenvattingsaanroepen. Standaard ingesteld op het eigen model van de agent.
parametersObjectAanvullende LLM-parameters voor samenvattingsverzoeken.
promptStringAangepaste prompt voor initiële samenvatting.
updatePromptStringAangepaste prompt voor her-compactering wanneer er al een samenvatting bestaat.
triggerObjectDefinieert wanneer samenvatting wordt geactiveerd (op basis van tokenverhouding, resterende tokens of berichtaantal).
maxSummaryTokensNumberMaximaal aantal output-tokens voor de respons van het samenvattingsmodel.
reserveRatioNumberFractie van het tokenbudget gereserveerd als reserve (0–1). Standaard: 0.05.
contextPruningObjectConfigureert op positie gebaseerde degradatie van toolresultaten voor oudere berichten.

zie: Summarization Object Structure

actions

Sleutel:

KeyTypeDescriptionExample
actionsObjectConfigureert actie-gerelateerde instellingen, gebruikt door Agents en Assistants

Subkeys:

KeyTypeDescriptionExample
allowedDomainsArray of StringsStrikte whitelist van domeinen voor acties. Indien ingesteld, zijn alleen de vermelde domeinen bereikbaar.
allowedAddressesArray of StringsSSRF-vrijstellingslijst (alleen voor privé-IP-bereik). Staat specifieke privé host:poort-services toe zonder publieke bestemmingen te beperken wanneer `allowedDomains` niet is geconfigureerd.

zie ook:

interface

Sleutel:

KeyTypeDescriptionExample
interfaceObjectConfigureert gebruikersinterface-elementen binnen de applicatie, waardoor aanpassing van de zichtbaarheid en het gedrag van verschillende componenten mogelijk is.

Subkeys:

KeyTypeDescriptionExample
privacyPolicyObjectBevat instellingen met betrekking tot de verstrekte link naar het privacybeleid.
termsOfServiceObjectBevat instellingen met betrekking tot de verstrekte link naar de servicevoorwaarden.
modelSelectBooleanBepaalt of de functie voor modelselectie beschikbaar is.
parametersBooleanSchakelt de zichtbaarheid van parameterconfiguratie-opties in, ook wel bekend als gespreksinstellingen.
presetsBooleanSchakelt het menu met voorinstellingen in of uit
promptsBoolean or ObjectSchakelt alle prompt-gerelateerde functies in of uit voor alle gebruikers
bookmarksBooleanSchakelt alle functies met betrekking tot bladwijzers in of uit voor alle gebruikers
memoriesBooleanSchakelt de memories-functie in of uit voor alle gebruikers
multiConvoBooleanSchakelt alle "multi convo", oftewel multiple response streaming, gerelateerde functies in of uit voor alle gebruikers
agentsBoolean or ObjectSchakelt alle agents-functies in of uit voor alle gebruikers
temporaryChatBooleanSchakelt de tijdelijke chatfunctie in of uit
temporaryChatRetentionNumberConfigureert de bewaartermijn voor tijdelijke chats in uren. Min: 1, Max: 8760. Standaard: 720 (30 dagen).
autoSubmitFromUrlBooleanBepaalt of `/c/new?prompt=…&submit=true` automatisch wordt verzonden naar het model. Wanneer `false`, wordt de prompt vooraf ingevuld maar niet verzonden.
mcpServersObjectBevat instellingen met betrekking tot MCP-serverselectie en toegangscontrole.
customWelcomeStringAangepast welkomstbericht dat wordt weergegeven in de chatinterface.
runCodeBooleanSchakelt de "Run Code"-knop voor Markdown-codeblokken in of uit
webSearchBooleanSchakelt de zoekknop op het web in of uit in de chatinterface
fileSearchBooleanSchakelt de knop voor bestandszoekopdrachten in of uit in de chatinterface
fileCitationsBooleanSchakelt wereldwijd bestandscitaties in of uit voor alle gebruikers
peoplePickerObjectConfigureert welke principal-types beschikbaar zijn als besturingselementen in de interface voor het kiezen van personen
marketplaceObjectSchakelt toegang tot de Agent Marketplace in of uit

zie: Interface Object Structure

modelSpecs

Sleutel:

KeyTypeDescriptionExample
modelSpecsObjectConfigureert Model Specs, wat gedetailleerde instellingen en aanpassingen van AI-modellen en hun gedrag binnen de applicatie mogelijk maakt.

Subkeys:

KeyTypeDescriptionExample
enforceBooleanBepaalt of de Model Specs strikt voorrang moeten krijgen op andere configuratie-instellingen.
prioritizeBooleanGeeft aan of Model Specs voorrang moeten krijgen op de standaardconfiguratie wanneer beide van toepassing zijn.
listArray of ObjectsBevat een lijst met individuele Model Specs die verschillende configuraties en gedragingen specificeren.

zie: Model Specs Object Structure

endpoints

Sleutel:

KeyTypeDescriptionExample
endpointsObjectDefinieert aangepaste API-endpoints voor de applicatie.

Subkeys:

KeyTypeDescriptionExample
customArray of ObjectsElk object in de array vertegenwoordigt een unieke endpoint configuratie.
azureOpenAIObjectAzure OpenAI endpoint-specifieke configuratie
assistantsObjectConfiguratie specifiek voor het Assistants endpoint.
azureAssistantsObjectAzure Assistants endpoint-specifieke configuratie.
agentsObjectAgents endpoint-specifieke configuratie.
allObjectAlgemene endpoint-instellingen die van toepassing zijn op alle endpoints. Zie Shared Endpoint Settings.
allowedAddressesArray of StringsSSRF-vrijstellingslijst (alleen private IP-ruimte). Staat toe dat door de gebruiker opgegeven baseURLs verwijzen naar specifieke private host:port-services (bijv. self-hosted Ollama) zonder SSRF-beveiliging voor al het overige uit te schakelen.

Let op: Endpoints ondersteunen Shared Endpoint Settings zoals streamRate, headers, titleModel, titleMethod, titlePrompt, titlePromptTemplate, titleEndpoint en maxToolResultChars. Deze kunnen individueel per endpoint worden geconfigureerd of globaal met behulp van de all sleutel. headers worden samengevoegd, waarbij waarden op endpoint-niveau voorrang krijgen bij sleutelconflicten. De all sleutel accepteert geen baseURL.

Let op: endpoints.allowedAddresses is van toepassing op door de gebruiker opgegeven baseURL-waarden (wanneer een beheerder een aangepast endpoint configureert met apiKey: 'user_provided' en baseURL: 'user_provided'). Elke door de gebruiker opgegeven baseURL wordt op het moment van het verzoek gevalideerd tegen de SSRF-blokkering; de hier vermelde items zijn hiervan vrijgesteld. Zie mcpSettings.allowedAddresses voor de semantiek van het veld — dezelfde regels zijn van toepassing (alleen privé IP-bereik, poort vereist, geen URL's/paden/CIDR/kale hosts/openbare IP-literals).

mcpSettings

Sleutel:

KeyTypeDescriptionExample
mcpSettingsObjectDefinieert globale instellingen voor Model Context Protocol (MCP) servers

Subkeys:

KeyTypeDescriptionExample
allowedDomainsArray of StringsStrikte whitelist van domeinen voor MCP serververbindingen. Indien ingesteld, zijn alleen de vermelde items bereikbaar.
allowedAddressesArray of StringsSSRF-vrijstellingslijst (alleen privé-IP-bereik). Staat specifieke privé host:poort-services toe zonder `allowedDomains` in de strikte whitelist-modus te zetten.
  • Opmerkingen:
    • Dit is een beveiligingsfunctie ter bescherming tegen misbruik van interne adressen via MCP servers
    • Standaard beperkt LibreChat MCP-servers in het verbinden met interne, lokale of privénetwerkadressen.
    • MCP-servers die lokale IP-adressen of domeinen gebruiken, kunnen ofwel worden toegevoegd aan de strikte allowedDomains whitelist (die dan de enige bereikbare set wordt), of — om publieke bestemmingen bereikbaar te houden — worden vrijgesteld als exacte host:port-services via allowedAddresses.
    • Zoals bij alle yaml-configuratiewijzigingen, is een herstart van LibreChat vereist om deze van kracht te laten worden.
    • Ondersteunt domeinen, wildcard-subdomeinen (*.example.com), Docker-domeinen en IP-adressen

Voorbeeld:

mcpSettings:
  # Strict whitelist mode:
  # allowedDomains:
  #   - "example.com"           # Specific domain
  #   - "*.example.com"         # All subdomains
  #   - "http://mcp-server:3000" # Internal service, explicitly whitelisted

  # Default SSRF mode with private service exemptions:
  allowedAddresses:
    - 'host.docker.internal:8080' # Permit one private host on one port
    - '10.0.0.5:8000' # Permit one private IP on one port

zie: MCP Settings Object Structure

mcpServers

Sleutel:

KeyTypeDescriptionExample
mcpServersObjectDefinieert de configuratie voor Model Context Protocol (MCP) servers, waardoor dynamische integratie van MCP servers binnen de applicatie mogelijk is.

Subkeys:

KeyTypeDescriptionExample
<serverName>ObjectElke sleutel onder `mcpServers` vertegenwoordigt een individuele MCP serverconfiguratie, geïdentificeerd door een unieke naam.
  • Opmerkingen:
    • Initialisatie vindt plaats bij het opstarten en de app moet opnieuw worden opgestart om wijzigingen door te voeren.
    • De <serverName> is een unieke identificatie voor elke MCP serverconfiguratie.
    • Elke MCP server kan worden geconfigureerd met behulp van een van de vier verbindingstypen:
      • stdio
      • websocket
      • sse
      • streamable-http
    • Het type veld specificeert het verbindingstype naar de MCP server.
    • Als type wordt weggelaten, wordt de standaardwaarde bepaald op basis van de aanwezigheid en het formaat van url of command:
      • Als url is opgegeven en begint met http of https, dan is de standaardwaarde voor type sse.
      • Als url is opgegeven en begint met ws of wss, dan is de standaardwaarde voor type websocket.
      • Als command is opgegeven, is de standaardwaarde voor type stdio.
    • Aanvullende configuratieopties zijn onder andere:
      • timeout: Time-out in milliseconden voor MCP server-verzoeken. Bepaalt hoe lang er gewacht moet worden op een antwoord voor tool-verzoeken.
      • initTimeout: Timeout in milliseconden voor MCP server-initialisatie. Bepaalt hoe lang er gewacht moet worden tot de server is geïnitialiseerd.
      • serverInstructions: Bepaalt of serverinstructies worden opgenomen in de context van de agent. Kan true (gebruik door de server verstrekte), false (uitgeschakeld) of een aangepaste string (overschrijft door de server verstrekte) zijn.
      • customUserVars: (Optioneel) Definieert aangepaste variabelen (bijv. API-sleutels, URL's) die individuele gebruikers kunnen instellen voor een MCP-server. Deze waarden per gebruiker, die via de UI worden verstrekt, kunnen vervolgens worden verwezen in de headers of env configuraties van de server met behulp van de {{VARIABLE_NAME}} syntaxis. Dit maakt authenticatie of aanpassing per gebruiker voor MCP-tools mogelijk.
    • zie: MCP Servers Object Structure

Voorbeeld:

mcpServers:
  everything:
    # type: sse # type can optionally be omitted
    url: http://localhost:3001/sse
    timeout: 30000
    initTimeout: 10000
    serverInstructions: true # Use server-provided instructions
  puppeteer:
    type: stdio
    command: npx
    args:
      - -y
      - '@modelcontextprotocol/server-puppeteer'
    timeout: 30000
    initTimeout: 10000
    serverInstructions: 'Do not access any local files or local/internal IP addresses'
  filesystem:
    # type: stdio
    command: npx
    args:
      - -y
      - '@modelcontextprotocol/server-filesystem'
      - /home/user/LibreChat/
    iconPath: /home/user/LibreChat/client/public/assets/logo.svg
  mcp-obsidian:
    command: npx
    args:
      - -y
      - 'mcp-obsidian'
      - /path/to/obsidian/vault
  streamable-http-example:
    type: streamable-http
    url: https://example.com/mcp
    headers:
      Authorization: 'Bearer ${API_TOKEN}'
    timeout: 30000
  per-user-crendentials-example:
    type: sse
    url: 'https//some.mcp/sse'
    headers:
      X-Custom-Auth-Token: '{{USER_API_KEY}}' # Placeholder for the user-provided API key, defined in `customUserVars` below.
    customUserVars:
      USER_API_KEY:
        title: 'Service API Key'
        description: "Your personal API key for this service. You can get it <a href='https://example.com/api-keys' target='_blank'>here</a>."
    serverInstructions: true

zie: MCP Servers Object Structure

speech

Sleutel:

KeyTypeDescriptionExample
speechObjectConfigureert Text-to-Speech (TTS) en Speech-to-Text (STT) providers voor de applicatie.

Subkeys:

KeyTypeDescriptionExample
ttsObjectConfiguraties voor Text-to-Speech-providers (OpenAI, Azure OpenAI, ElevenLabs, LocalAI).
sttObjectConfiguraties voor Speech-to-Text providers (OpenAI, Azure OpenAI).
speechTabObjectStandaard UI-instellingen voor spraakfuncties.

zie: Speech Object Structure

turnstile

Sleutel:

KeyTypeDescriptionExample
turnstileObjectConfigureert Cloudflare Turnstile voor bot-bescherming op registratie- en inlogformulieren.

Subkeys:

KeyTypeDescriptionExample
siteKeyStringUw Cloudflare Turnstile site key (vereist).
optionsObjectAanvullende Turnstile widget-opties (optioneel).

zie: Turnstile Object Structure

transactions

Sleutel:

KeyTypeDescriptionExample
transactionsObjectBeheert functies voor transactielogboekregistratie en zichtbaarheid.

Subkeys:

KeyTypeDescriptionExample
enabledBooleanSchakelt transactielogboekregistratie in of uit. Standaard: true.

zie: Transactions Object Structure

Hoe is deze gids?