| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2026-09-16 | 7.9 kB | |
| v3.0.10 source code.tar.gz | 2026-09-16 | 19.6 MB | |
| v3.0.10 source code.zip | 2026-09-16 | 23.0 MB | |
| Totals: 3 Items | 42.6 MB | 0 | |
Changelog
New Features:
- Azure OpenAI Responses: Added
AzureOpenAIResponsesto use the Responses API with Azure OpenAI deployments. See cookbook. - Elasticsearch: Added
Elasticsearchvector database with vector, keyword and hybrid search. See cookbook. - DocumentationMarkdown: Added a
transformforKnowledge.sync_pagesthat converts Mintlify and Fumadocs components into plain Markdown. See cookbook.
Improvements:
- MCPConfig: Added
root_host,pathandpath_aliasesto serve MCP on a dedicated hostname or a custom endpoint path. - MCP Server Card:
/mcp/server-cardnow returns pretty-printed JSON.
Bug Fixes:
- MCP Tools: Preserve
AudioContentfrom MCP tool results as audio artifacts. - Slack: Deduplicate event retries by
event_idinstead of dropping them. - Remote Agents:
RemoteAgent.roleandRemoteTeam.roleare now properties that return the role instead of a bound method; use.role, not.role(). - Readers:
TextReader,MarkdownReaderandFieldLabeledCSVReadernow accept text streams. - PPTXReader: Read text inside grouped shapes.
- JSONReader:
async_read()now uses the chunking strategy's asyncachunk(). - Chunking: Preserve newlines and tabs when cleaning text before chunking.
- CSVReader:
async_read()keeps every data row across pages withRowChunking(skip_header=True). - SitemapReader: Keep filenames like
myindex.htmlintact and continue discovery past an invalid.xml.gzsitemap. - Tools & Workflows: Keep falsy values like
0,Falseand[]in sync tool results andParallelworkflow step outputs. - agnoctl:
agno connectnow reads and writes client configs as UTF-8 (agnoctl 0.2.1). - DynamoDB: Serialize booleans as native
BOOLvalues.
Breaking Changes:
- CodingTools:
run_shellis now opt-in (enable_run_shell=True), and restricted mode runs commands without a shell. - PublicSurface: With
authorization=TrueandPublicSurface(mcp=True), MCP now accepts only localhost by default; add your domain toMCPConfig(allowed_hosts=[...]).
What's Changed
- fix: read text from grouped shapes in PPTXReader by @devYRPauli in https://github.com/agno-agi/agno/pull/10037
- feat: add support for Elasticsearch vector database by @sannya-singal in https://github.com/agno-agi/agno/pull/10018
- [feat] Add Azure OpenAI Responses model by @rastagan-git in https://github.com/agno-agi/agno/pull/9841
- [fix] Accept text streams in FieldLabeledCSVReader by @n1uz1 in https://github.com/agno-agi/agno/pull/10020
- [fix] Preserve MCP AudioContent as audio artifacts by @devansh173 in https://github.com/agno-agi/agno/pull/10036
- fix: serialize booleans as BOOL instead of {"N": "True"} in DynamoDB storage by @Anai-Guo in https://github.com/agno-agi/agno/pull/9978
- [fix] Use UTF-8 for infra file helpers by @Ghraven in https://github.com/agno-agi/agno/pull/10113
- docs: fix broken external links in cookbook by @Shxiao101 in https://github.com/agno-agi/agno/pull/9980
- fix: pretty-print MCP server-card JSON by @ashpreetbedi in https://github.com/agno-agi/agno/pull/10084
- fix: detect public MCP access alongside JWT REST auth by @ashpreetbedi in https://github.com/agno-agi/agno/pull/10083
- feat: add optional documentation Markdown source transform by @ashpreetbedi in https://github.com/agno-agi/agno/pull/10094
- feat: configure MCP hostname and endpoint routing by @ashpreetbedi in https://github.com/agno-agi/agno/pull/10090
- fix: add missing @property to RemoteAgent.role and RemoteTeam.role by @kausmeows in https://github.com/agno-agi/agno/pull/10172
- cookbook: export DocumentationMarkdown and make its example run end to end by @sannya-singal in https://github.com/agno-agi/agno/pull/10178
- fix: accept text streams in MarkdownReader by @Minouccc in https://github.com/agno-agi/agno/pull/10168
- [fix] Await async chunking in JSONReader by @Kyousuk1e in https://github.com/agno-agi/agno/pull/10167
- [fix] Preserve non-index filenames during sitemap URL canonicalization by @yyydddkkk in https://github.com/agno-agi/agno/pull/10189
- fix: repair cookbook import, dead links and typo by @Shxiao101 in https://github.com/agno-agi/agno/pull/10134
- fix: dedupe Slack event retries by event_id instead of dropping them by @Himanshu040604 in https://github.com/agno-agi/agno/pull/10073
- fix: docs correct the Perplexity and v0 base_url defaults in their docstrings by @xizhuomengcontin in https://github.com/agno-agi/agno/pull/10192
- [fix] Accept text streams in TextReader by @RaycarlLei in https://github.com/agno-agi/agno/pull/10203
- fix: dependency bump urllib3 to 2.7.0 and requests to 2.33.0 in mcp_toolbox_demo by @katsugtgz in https://github.com/agno-agi/agno/pull/10184
- test: fix flaky test_tool_hook_receives_messages by @harshsinha03 in https://github.com/agno-agi/agno/pull/10212
- [fix] keep falsy tool results (0, False, []) on the sync tool execution path by @BlueX888 in https://github.com/agno-agi/agno/pull/9948
- fix: CONTRIBUTING paths, agno_infra license note, and docstring accuracy by @simpleqt in https://github.com/agno-agi/agno/pull/9722
- fix: retain falsy values in previous workflow content by @guanzhuohe273-hub in https://github.com/agno-agi/agno/pull/10208
- fix: Preserve CSV data rows when skipping headers across pages by @baba9811 in https://github.com/agno-agi/agno/pull/9995
- fix: document PythonTools has no code sandbox by @ysolanky in https://github.com/agno-agi/agno/pull/10218
- fix: harden CodingTools run_shell against interpreter RCE by @ysolanky in https://github.com/agno-agi/agno/pull/10210
- [fix] Continue sitemap discovery after invalid gzip data by @RaycarlLei in https://github.com/agno-agi/agno/pull/10213
- fix: use UTF-8 for agnoctl client config text by @Ghraven in https://github.com/agno-agi/agno/pull/10038
- fix: run CodingTools restricted shell without a shell to neutralize operator injection by @ysolanky in https://github.com/agno-agi/agno/pull/10220
- fix: Preserve newlines and tabs in clean_text by @icn5381 in https://github.com/agno-agi/agno/pull/9985
New Contributors
- @rastagan-git made their first contribution in https://github.com/agno-agi/agno/pull/9841
- @n1uz1 made their first contribution in https://github.com/agno-agi/agno/pull/10020
- @devansh173 made their first contribution in https://github.com/agno-agi/agno/pull/10036
- @Shxiao101 made their first contribution in https://github.com/agno-agi/agno/pull/9980
- @Minouccc made their first contribution in https://github.com/agno-agi/agno/pull/10168
- @Kyousuk1e made their first contribution in https://github.com/agno-agi/agno/pull/10167
- @yyydddkkk made their first contribution in https://github.com/agno-agi/agno/pull/10189
- @xizhuomengcontin made their first contribution in https://github.com/agno-agi/agno/pull/10192
- @RaycarlLei made their first contribution in https://github.com/agno-agi/agno/pull/10203
- @katsugtgz made their first contribution in https://github.com/agno-agi/agno/pull/10184
- @simpleqt made their first contribution in https://github.com/agno-agi/agno/pull/9722
- @guanzhuohe273-hub made their first contribution in https://github.com/agno-agi/agno/pull/10208
- @baba9811 made their first contribution in https://github.com/agno-agi/agno/pull/9995
- @icn5381 made their first contribution in https://github.com/agno-agi/agno/pull/9985
Full Changelog: https://github.com/agno-agi/agno/compare/v3.0.9...v3.0.10