![]() |
VOOZH | about |
Agno is a developer-first Python framework for building AI agents that reason, plan, and take actions using tools. Agno emphasizes a clean, code-driven architecture where the agent runtime remains fully under developer control.
CData Connect AI provides a secure cloud-to-cloud interface for integrating hundreds of enterprise data sources with AI systems. Using Connect AI, live SingleStore data data can be exposed through a remote MCP endpoint without replication.
In this guide, we build a production-ready Agno agent using the Agno Python SDK. The agent connects to CData Connect AI via MCP using streamable HTTP, dynamically discovers available tools, and invokes them to query live SingleStore data.
Here is a high-level overview of the process:
To enable Agno to query live SingleStore data, first create a SingleStore connection in CData Connect AI. This connection is exposed through the CData Remote MCP Server.
The following connection properties are required in order to connect to data.
To authenticate using standard authentication, set the following:
As an alternative to providing the standard username and password, you can set IntegratedSecurity to True to authenticate trusted users to the server via Windows Authentication.
You can leverage SSL authentication to connect to SingleStore data via a secure session. Configure the following connection properties to connect to data:
Using SSH, you can securely login to a remote machine. To access SingleStore data via SSH, configure the following connection properties:
A Personal Access Token (PAT) authenticates MCP requests from Agno to CData Connect AI.
Install Agno and the MCP adapter dependencies. LangChain is included strictly for MCP tool compatibility.
pip install agno agno-mcp langchain-mcp-adapters
Configure environment variables:
export CDATA_MCP_URL="https://mcp.cloud.cdata.com/mcp" export CDATA_MCP_AUTH="Base64EncodedCredentials" export OPENAI_API_KEY="your-openai-key"
Where "Base64EncodedCredentials" is your Connect AI user email and your Personal Access Token joined by a colon (":") and Base64 Encoded: Base64([email protected]:MY_CONNECT_AI_PAT)
Create an MCP client using streamable HTTP. This establishes a secure connection to CData Connect AI.
import os
from langchain_mcp_adapters.client import MultiServerMCPClient
mcp_client = MultiServerMCPClient(
connections={
"default": {
"transport": "streamable_http",
"url": os.environ["CDATA_MCP_URL"],
"headers": {
"Authorization": f"Basic {os.environ['CDATA_MCP_AUTH']}"
}
}
}
)
CData Connect AI exposes operations as MCP tools. These are retrieved dynamically at runtime.
langchain_tools = await mcp_client.get_tools() for tool in langchain_tools: print(tool.name)
Each MCP tool is wrapped as an Agno function so it can be used by the agent.
NOTE: Agno performs all reasoning, planning, and tool selection.LangChain is used only as a lightweight MCP compatibility layer to consume tools exposed by CData Connect AI.
from agno.tools import Function def make_tool_caller(lc_tool): async def call_tool(**kwargs): return await lc_tool.ainvoke(kwargs) return call_tool
Agno performs all reasoning, planning, and tool invocation. LangChain plays no role beyond MCP compatibility.
from agno.agent import Agent from agno.models.openai import OpenAIChat agent = Agent( model=OpenAIChat( id="gpt-4o", temperature=0.2, api_key=os.environ["OPENAI_API_KEY"] ), tools=agno_tools, markdown=True ) await agent.aprint_response( "Show me the top 5 records from the available data source" ) if __name__ == "__main__": asyncio.run(main())
The results below show an Agno agent invoking MCP tools through CData Connect AI and returning live SingleStore data data.
π Running the Agno agentYou can now query live SingleStore data using natural language through your Agno agent.
To get live data access to hundreds of SaaS, Big Data, and NoSQL sources directly from your cloud applications, try CData Connect AI today!
Learn more about CData Connect AI or sign up for free trial access:
Free Trial