*   [](/v0.2/)
*   [How-to guides](/v0.2/docs/how_to/)
*   How to use built-in tools and toolkits

On this page

How to use built-in tools and toolkits
======================================

Prerequisites

This guide assumes familiarity with the following concepts:

*   [LangChain Tools](/v0.2/docs/concepts/#tools)
*   [LangChain Toolkits](/v0.2/docs/concepts/#tools)

Tools[​](#tools "Direct link to Tools")
---------------------------------------

LangChain has a large collection of 3rd party tools. Please visit [Tool Integrations](/v0.2/docs/integrations/tools/) for a list of the available tools.

info

When using 3rd party tools, make sure that you understand how the tool works, what permissions it has. Read over its documentation and check if anything is required from you from a security point of view. Please see our [security](https://python.langchain.com/v0.2/docs/security/) guidelines for more information.

Let's try out the [Wikipedia integration](/v0.2/docs/integrations/tools/wikipedia/).

    !pip install -qU wikipedia

    from langchain_community.tools import WikipediaQueryRunfrom langchain_community.utilities import WikipediaAPIWrapperapi_wrapper = WikipediaAPIWrapper(top_k_results=1, doc_content_chars_max=100)tool = WikipediaQueryRun(api_wrapper=api_wrapper)print(tool.invoke({"query": "langchain"}))

**API Reference:**[WikipediaQueryRun](https://api.python.langchain.com/en/latest/tools/langchain_community.tools.wikipedia.tool.WikipediaQueryRun.html) | [WikipediaAPIWrapper](https://api.python.langchain.com/en/latest/utilities/langchain_community.utilities.wikipedia.WikipediaAPIWrapper.html)

    Page: LangChainSummary: LangChain is a framework designed to simplify the creation of applications

The tool has the following defaults associated with it:

    print(f"Name: {tool.name}")print(f"Description: {tool.description}")print(f"args schema: {tool.args}")print(f"returns directly?: {tool.return_direct}")

    Name: wiki-toolDescription: look up things in wikipediaargs schema: {'query': {'title': 'Query', 'description': 'query to look up in Wikipedia, should be 3 or less words', 'type': 'string'}}returns directly?: True

Customizing Default Tools[​](#customizing-default-tools "Direct link to Customizing Default Tools")
---------------------------------------------------------------------------------------------------

We can also modify the built in name, description, and JSON schema of the arguments.

When defining the JSON schema of the arguments, it is important that the inputs remain the same as the function, so you shouldn't change that. But you can define custom descriptions for each input easily.

    from langchain_community.tools import WikipediaQueryRunfrom langchain_community.utilities import WikipediaAPIWrapperfrom langchain_core.pydantic_v1 import BaseModel, Fieldclass WikiInputs(BaseModel):    """Inputs to the wikipedia tool."""    query: str = Field(        description="query to look up in Wikipedia, should be 3 or less words"    )tool = WikipediaQueryRun(    name="wiki-tool",    description="look up things in wikipedia",    args_schema=WikiInputs,    api_wrapper=api_wrapper,    return_direct=True,)print(tool.run("langchain"))

**API Reference:**[WikipediaQueryRun](https://api.python.langchain.com/en/latest/tools/langchain_community.tools.wikipedia.tool.WikipediaQueryRun.html) | [WikipediaAPIWrapper](https://api.python.langchain.com/en/latest/utilities/langchain_community.utilities.wikipedia.WikipediaAPIWrapper.html)

    Page: LangChainSummary: LangChain is a framework designed to simplify the creation of applications

    print(f"Name: {tool.name}")print(f"Description: {tool.description}")print(f"args schema: {tool.args}")print(f"returns directly?: {tool.return_direct}")

    Name: wiki-toolDescription: look up things in wikipediaargs schema: {'query': {'title': 'Query', 'description': 'query to look up in Wikipedia, should be 3 or less words', 'type': 'string'}}returns directly?: True

How to use built-in toolkits[​](#how-to-use-built-in-toolkits "Direct link to How to use built-in toolkits")
------------------------------------------------------------------------------------------------------------

Toolkits are collections of tools that are designed to be used together for specific tasks. They have convenient loading methods.

For a complete list of available ready-made toolkits, visit [Integrations](/v0.2/docs/integrations/toolkits/).

All Toolkits expose a `get_tools` method which returns a list of tools.

You're usually meant to use them this way:

    # Initialize a toolkittoolkit = ExampleTookit(...)# Get list of toolstools = toolkit.get_tools()

[Edit this page](https://github.com/langchain-ai/langchain/edit/master/docs/docs/how_to/tools_builtin.ipynb)

* * *

#### Was this page helpful?

  

#### You can also leave detailed feedback [on GitHub](https://github.com/langchain-ai/langchain/issues/new?assignees=&labels=03+-+Documentation&projects=&template=documentation.yml&title=DOC%3A+%3CPlease+write+a+comprehensive+title+after+the+%27DOC%3A+%27+prefix%3E).

[

Previous

How to handle multiple queries when doing query analysis

](/v0.2/docs/how_to/query_multiple_queries/)[

Next

How to pass through arguments from one step to the next

](/v0.2/docs/how_to/passthrough/)

*   [Tools](#tools)
*   [Customizing Default Tools](#customizing-default-tools)
*   [How to use built-in toolkits](#how-to-use-built-in-toolkits)