github agno-agi/agno v3.1.9

4 hours ago

Changelog

New Features:

  • MCP Tool Runner: POST /mcp/server/tools/{tool_name}/run runs any tool listed on the AgentOS Server Card over HTTP and returns its result, so a tool can be tested without an MCP client. Turn it off with MCPConfig(tool_run_endpoint=False). See cookbook.

Bug Fixes:

  • AgentOS MCP Server: /mcp and /mcp/server-card now accept browser requests from origins the AgentOS CORS policy allows, so os.agno.com can reach the MCP server of a local AgentOS. /info now reports the configured MCP path instead of always /mcp.
  • Postgres Metrics: Metrics refresh on a migrated database no longer loads the legacy sessions.runs column into memory.
  • Function Workflows: A function passed as a workflow's steps now runs once when its body raises a TypeError, and sync functions and generators now work with arun().
  • AgenticChunking: Chunking no longer hangs when the model returns a zero or negative breakpoint, and max_chunk_size must be greater than 0.
  • BaiduSearchTools: Chinese titles and abstracts are returned as readable text instead of \uXXXX escapes.
  • Human-in-the-Loop User Input: A requires_user_input tool with a parameter typed int | None or another X | Y type now pauses cleanly, and the paused run is saved and resumes with continue_run(run_id=...).
  • Mistral: The timeout, endpoint and safe_mode parameters on MistralChat, and endpoint on MistralEmbedder, now work instead of raising a TypeError. safe_mode is deprecated in favor of safe_prompt.

What's Changed

  • [fix] Keep Chinese text readable in BaiduSearchTools output by @RaycarlLei in #11229
  • fix: handle non-positive breakpoints and validate max_chunk_size in AgenticChunking by @Fazlul105 in #11231
  • fix: run custom workflow steps function once when its body raises TypeError by @kausmeows in #11235
  • fix: stop Postgres metrics refresh from loading the legacy runs column into memory by @sannya-singal in #11190
  • feat: run Company automation hourly instead of every minute by @ysolanky in #11221
  • fix: admit CORS-allowed browser origins on the MCP surface by @ysolanky in #11246
  • feat: run a published MCP tool over HTTP by @sannya-singal in #10666
  • fix: serialize PEP 604 tool parameter types in UserInputField.to_dict by @ShaoLOWu in #11177
  • refactor: rename Product-scoped Company tools by @ashpreetbedi in #11242
  • fix: map Mistral client params onto the mistralai SDK and alias safe_mode to safe_prompt by @ysolanky in #11222
  • chore: Release v3.1.9 by @harshsinha03 in #11248

New Contributors

Full Changelog: v3.1.8...v3.1.9

Don't miss a new agno release

NewReleases is sending notifications on new releases.