# load_tools

> **Function** in `langchain_community`

📖 [View in docs](https://reference.langchain.com/python/langchain-community/agent_toolkits/load_tools/load_tools)

Load tools based on their name.

Tools allow agents to interact with various resources and services like
APIs, databases, file systems, etc.

Please scope the permissions of each tools to the minimum required for the
application.

For example, if an application only needs to read from a database,
the database tool should not be given write permissions. Moreover
consider scoping the permissions to only allow accessing specific
tables and impose user-level quota for limiting resource usage.

Please read the APIs of the individual tools to determine which configuration
they support.

See [Security](https://python.langchain.com/docs/security) for more information.

## Signature

```python
load_tools(
    tool_names: List[str],
    llm: Optional[BaseLanguageModel] = None,
    callbacks: Callbacks = None,
    allow_dangerous_tools: bool = False,
    **kwargs: Any = {},
) -> List[BaseTool]
```

## Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `tool_names` | `List[str]` | Yes | name of tools to load. |
| `llm` | `Optional[BaseLanguageModel]` | No | An optional language model may be needed to initialize certain tools. Defaults to None. (default: `None`) |
| `callbacks` | `Callbacks` | No | Optional callback manager or list of callback handlers. If not provided, default global callback manager will be used. (default: `None`) |
| `allow_dangerous_tools` | `bool` | No | Optional flag to allow dangerous tools. Tools that contain some level of risk. Please use with caution and read the documentation of these tools to understand the risks and how to mitigate them. Refer to https://python.langchain.com/docs/security for more information. Please note that this list may not be fully exhaustive. It is your responsibility to understand which tools you're using and the risks associated with them. Defaults to False. (default: `False`) |
| `kwargs` | `Any` | No | Additional keyword arguments. (default: `{}`) |

## Returns

`List[BaseTool]`

List of tools.

---

[View source on GitHub](https://github.com/langchain-ai/langchain-community/blob/4b280287bd55b99b44db2dd849f02d66c89534d5/libs/community/langchain_community/agent_toolkits/load_tools.py#L637)