Agno supports files as input to agents and teams. Take a look at the compatibility matrix to see which models support files as input. Let’s create an agent that can understand files and make tool calls as needed.
from agno.agent import Agent
from agno.media import File
from agno.models.anthropic import Claude
from agno.db.in_memory import InMemoryDb

agent = Agent(
    model=Claude(id="claude-sonnet-4-0"),
    db=InMemoryDb(),
    markdown=True,
)

agent.print_response(
    "Summarize the contents of the attached file.",
    files=[
        File(url="https://agno-public.s3.amazonaws.com/recipes/ThaiRecipes.pdf"),
    ],
)

Developer Resources