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

# LlamaIndex

> LlamaIndex is a framework for building LLM-powered applications that use your own data.

## Prerequisites

Before you can configure and use LlamaIndex with Connect AI, you must do the following:

* Connect a data source to your Connect AI account. See [Sources](/en/Sources) for more information.
* Generate a Personal Access Token (PAT) on the [Settings](/en/Settings#personal-access-tokens) page. Copy this down, as it acts as your password during authentication.
* Obtain an OpenAI API key: [https://platform.openai.com](https://platform.openai.com/).
* Make sure you have Python >= 3.10 in order to install the LlamaIndex packages.

## Create the Python Files

<Steps>
  <Step>
    Create a folder for LlamaIndex MCP.
  </Step>

  <Step>
    Create a Python file within the folder called `llamaindex.py`.
  </Step>

  <Step>
    In `llamaindex.py`, set up your MCP server and MCP client to call the tools and prompts. For `Authorization`, you need to provide your Base64-encoded Connect AI username and PAT (obtained in the prerequisites) after `Basic`.
  </Step>
</Steps>

```python theme={null}
from llama_index.llms.openai import OpenAI
from llama_index.tools.mcp import BasicMCPClient, aget_tools_from_mcp_url
from llama_index.core.agent import ReActAgent
import asyncio

client = BasicMCPClient(
    "https://mcp.cloud.cdata.com/mcp",
    headers={"Authorization": "Basic Base64-encoded (CONNECTAI_USERNAME:PAT)"}
)

async def main():
    # List available tools
    tools = await aget_tools_from_mcp_url("https://mcp.cloud.cdata.com/mcp", client=client)
   
    llm = OpenAI(model="gpt-4o", api_key="YOUR_OPENAI_KEY")   
    # Create ReActAgent
    agent = ReActAgent(tools=tools, llm=llm, verbose=True)
    # # Run a query
    response = await agent.run("List all the catalogs for me please")
    print(response)

asyncio.run(main())
```

## Install the LlamaIndex Packages

Run `pip install llama-index llama-index-llms-openai llama-index-tools-mcp` in your project terminal.

## Run the Python Script

<Steps>
  <Step>
    When the installation finishes, run `python llamaindex.py` to execute the script.
  </Step>

  <Step>
    The script discovers the Connect AI MCP tools needed for the LLM to query the connected data.
  </Step>

  <Step>
    Supply a prompt for the agent. The agent provides a response.
  </Step>
</Steps>

<Frame>
  <img src="https://mintcdn.com/cdata/6FDv4aMDihHt3ws_/en/images/llamaindex_client_terminal.png?fit=max&auto=format&n=6FDv4aMDihHt3ws_&q=85&s=4e3d924d6d86e32561355a0cc38a74d9" alt="LlamaIndex Terminal" width="1191" height="715" data-path="en/images/llamaindex_client_terminal.png" />
</Frame>
