What's Changed
New Features 🎉
- support messages in progress notifications by @rickygenhealth in #471
- feat: Add middleware option in server.run by @Maxi91f in #475
- Add lifespan property to app by @jlowin in #483
- Update
fastmcp runto work with remote servers by @jlowin in #491 - Add FastMCP.as_proxy() by @jlowin in #490
- Infer sse transport from urls containing /sse by @jlowin in #512
- Add progress handler to client by @jlowin in #513
- Store the initialize result on the client by @jlowin in #509
Fixes 🐞
Docs 📚
- Update transport docs by @jlowin in #458
- update proxy docs + example by @zzstoatzz in #460
- doc(asgi): Change custom route example to PlainTextResponse by @mcw0933 in #477
- Store FastMCP instance on app.state.fastmcp_server by @jlowin in #489
- Improve AGENTS.md overview by @jlowin in #492
- Update release numbers for anticipated version by @jlowin in #516
Other Changes 🦾
- run tests on all PRs by @jlowin in #468
- add null check by @zzstoatzz in #473
- strict typing for
server.pyby @zzstoatzz in #476 - Doc(quickstart): Fix import statements by @mai-nakagawa in #479
- Add labeler by @jlowin in #484
- Fix flaky timeout test by increasing timeout (#474) by @davenpi in #486
- Skipping
test_permission_errorif runner is root. by @ZiadAmerr in #502 - allow passing full uvicorn config by @zzstoatzz in #504
- Skip timeout tests on windows by @jlowin in #514
New Contributors
- @rickygenhealth made their first contribution in #471
- @Maxi91f made their first contribution in #475
- @mcw0933 made their first contribution in #477
- @mai-nakagawa made their first contribution in #479
- @ZiadAmerr made their first contribution in #502
Full Changelog: v2.3.4...v2.3.5