Skip to main content

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

Next Steps​