> ## Documentation Index
> Fetch the complete documentation index at: https://docs.keenable.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# LangChain

> langchain-keenable — KeenableSearch and KeenableFetch tools for any LangChain agent.

*Tool package*

A standalone partner package (LangChain's sanctioned path for third-party integrations), listed in the official LangChain docs: in the provider index and in the web-search tools comparison table next to Exa, Tavily and Linkup.

→ [langchain-keenable on PyPI](https://pypi.org/project/langchain-keenable/)

<video controls poster="https://app.keenable.ai/integrations/langchain.jpg" src="https://app.keenable.ai/integrations/langchain.mp4" style={{ width: '100%', borderRadius: '12px' }} />

pip install, then `KeenableSearch().invoke` returns live web results.

## Install

### Install

```bash theme={"dark"}
pip install langchain-keenable
```

### Use the tools

```python theme={"dark"}
from langchain_keenable import KeenableSearch, KeenableFetch

# reads KEENABLE_API_KEY from the environment
results = KeenableSearch().invoke({"query": "typescript best practices"})
page = KeenableFetch().invoke({"url": results[0]["url"]})
```

<Note>
  Set `KEENABLE_API_KEY` to authenticate — this removes the hourly request cap. Without a key, calls run on the shared public tier at [lower rate limits](/rate-limits).
</Note>
