AgentOS with MCPTools
AgentOS whose agent connects to an external MCP server through MCPTools.
Code
from agno.agent import Agent
from agno.db.sqlite import SqliteDb
from agno.models.anthropic import Claude
from agno.os import AgentOS
from agno.tools.mcp import MCPTools
# Setup the database
db = SqliteDb(db_file="tmp/agentos.db")
mcp_tools = MCPTools(transport="streamable-http", url="https://docs.agno.com/mcp")
# Setup basic agent
agno_support_agent = Agent(
id="agno-support-agent",
name="Agno Support Agent",
model=Claude(id="claude-sonnet-4-5"),
db=db,
tools=[mcp_tools],
add_history_to_context=True,
num_history_runs=3,
markdown=True,
)
agent_os = AgentOS(
description="Example app with MCP Tools",
agents=[agno_support_agent],
)
app = agent_os.get_app()
if __name__ == "__main__":
# Don't use reload=True here; it can break the MCP connection during the FastAPI lifespan
agent_os.serve(app="mcp_tools_example:app")AgentOS connects and disconnects MCPTools for you.
Usage
Set up your virtual environment
uv venv --python 3.12
source .venv/bin/activateSet Environment Variables
export ANTHROPIC_API_KEY=your_anthropic_api_keyInstall dependencies
uv pip install -U "agno[os,mcp]" anthropicRun Server
Save the code above as mcp_tools_example.py, then run:
python mcp_tools_example.pyTest
Open http://localhost:7777/docs and run the agent from the API docs, or connect the instance to the AgentOS UI.