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(
"http://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("http://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())