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

Tools

Configure built-in agent tools in LibreChat

LibreChat tools are selected from the Agent Builder and run when an agent decides they are useful. This section covers built-in agent tools such as image generation, search, weather, computation, and private index lookup.

Not the same as Web Search or MCP

The search tools on this page are tools you add to a specific agent. LibreChat's built-in Web Search feature is configured separately, and custom third-party tools are usually added through MCP or Actions.

Quick Setup

Pick the Tool

Choose a tool from the table below and collect any required API keys, service URLs, or index names.

Add Credentials

Add the required values to your .env file, or let users provide their own credentials from the LibreChat UI when the tool prompts for them.

Restart LibreChat

Environment variable changes are loaded on restart.

DeploymentCommand
Dockerdocker compose down && docker compose up -d
LocalStop the server, then run npm run backend again

Add the Tool to an Agent

In LibreChat, select Agents, create or edit an agent, open the agent's Tools list, select the tool, and save the agent.

Test in Chat

Start a chat with that agent and ask for something that requires the tool, such as a search, calculation, weather report, or image.

Current Built-In Tools

ToolUse it forRequired configurationDetails
OpenAI Image ToolsGenerate and edit images with OpenAI image modelsIMAGE_GEN_OAI_API_KEY; optional IMAGE_GEN_OAI_MODELImage Generation
Gemini Image ToolsGenerate images and edit with image context using GeminiGEMINI_API_KEY, GOOGLE_KEY, or GOOGLE_SERVICE_KEY_FILE; optional GEMINI_IMAGE_MODELGemini Image Generation
DALL-E-3Legacy OpenAI image generationDALLE3_API_KEY or DALLE_API_KEYDALL-E
FluxCloud image generation and fine-tuned image modelsFLUX_API_KEY; optional FLUX_API_BASE_URLFlux
Stable DiffusionLocal or self-hosted image generation through Automatic1111SD_WEBUI_URLStable Diffusion
Google SearchGoogle Custom Search results for an agentGOOGLE_SEARCH_API_KEY and GOOGLE_CSE_IDGoogle Search
Tavily SearchCurrent web results optimized for agentsTAVILY_API_KEYTavily Search
TraversaalAI search results with sourcesTRAVERSAAL_API_KEYTraversaal
Azure AI SearchSearch a private Azure AI Search indexAZURE_AI_SEARCH_SERVICE_ENDPOINT, AZURE_AI_SEARCH_INDEX_NAME, AZURE_AI_SEARCH_API_KEYAzure AI Search
OpenWeatherCurrent, forecast, historical, and daily weather dataOPENWEATHER_API_KEYOpenWeather
Wolfram|AlphaMath, computation, units, curated knowledge, and real-time dataWOLFRAM_APP_IDWolfram|Alpha
CalculatorBasic and complex calculationsNoneCalculator

Creating Custom Tools

Most custom tools should be added without editing LibreChat source code.

  • Use MCP when you want to connect an agent to a local script, internal service, database, browser automation server, or a custom API wrapper. For example, a DuckDuckGo search tool can be exposed through an MCP server and then selected from the Agent Builder.
  • Use Actions when the tool is an HTTP API that can be described with an OpenAPI schema.
  • Edit LibreChat's source-level structured tools only when you are developing LibreChat itself. The legacy Tools and Plugins development guide remains available for contributors, but MCP and Actions are the recommended extension paths for deployments.

Tool Availability

Tools are identified internally by their pluginKey from LibreChat's api/app/clients/tools/manifest.json.

Use filteredTools to hide tools, or includedTools to allow only specific tools:

includedTools:
  - calculator
  - image_gen_oai
  - google

If a tool is not visible in the Agent Builder after restart, check the tool's environment variables, includedTools, filteredTools, and whether the agent's tools capability is enabled.

How is this guide?