Agno
Connect an Agno agent to Leadovaro using MCPTools with Streamable HTTP transport. Agno's MCPTools context manager handles connection lifecycle and exposes all discovered tools to your agent.
Prerequisites
- Python 3.11+
- A Leadovaro account at app.leadovaro.com with a configured toolkit
- A Leadovaro token and an Anthropic API key
Installation
pip install agno anthropic python-dotenv
Environment Variables
LEADOVARO_URL=/_sites/app.leadovaro.com/hub/mcp?profile=your-toolkit
LEADOVARO_TOKEN=your-leadovaro-token
ANTHROPIC_API_KEY=your-anthropic-key
Get Your Credentials
How to generate a Leadovaro token and configure toolkit URL parameters
Connecting to Leadovaro
Use MCPTools as an async context manager to connect to the Leadovaro Hub and pass the tools to your agent:
import os
import asyncio
from dotenv import load_dotenv
from agno.agent import Agent
from agno.tools.mcp import MCPTools
from agno.tools.mcp.params import StreamableHTTPClientParams
from agno.models.anthropic import Claude
load_dotenv()
async def main():
async with MCPTools(
server_params=StreamableHTTPClientParams(
url=os.environ["LEADOVARO_URL"],
headers={"Authorization": f"Bearer {os.environ['LEADOVARO_TOKEN']}"},
),
transport="streamable-http",
) as mcp_tools:
agent = Agent(
model=Claude(id="claude-sonnet-4-6"),
tools=[mcp_tools],
instructions="You are a helpful assistant with access to Leadovaro tools.",
)
response = await agent.arun(
"What events do I have today?",
stream=False,
)
print(response.content)
asyncio.run(main())
note
Use server_params=StreamableHTTPClientParams(...) — not params=. Also set transport="streamable-http" explicitly.
Production Configuration
For production agents, lock to a specific toolkit using the profile URL parameter:
LEADOVARO_URL=/_sites/app.leadovaro.com/hub/mcp?profile=your-production-toolkit
Reference Implementation
agno-reference-implementation-leadovaro
Complete implementation with FastAPI chat UI and deployment guide