Jeremiah Lowin commited on
Commit
1f529b4
Β·
1 Parent(s): 619046f

Update changelog and updates for 2.9 release

Browse files
Files changed (2) hide show
  1. docs/changelog.mdx +86 -0
  2. docs/updates.mdx +16 -0
docs/changelog.mdx CHANGED
@@ -2,6 +2,92 @@
2
  icon: "list-check"
3
  ---
4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5
  <Update label="v2.8.0" description="2024-06-10">
6
 
7
  ## [v2.8.0: Transform and Roll Out](https://github.com/jlowin/fastmcp/releases/tag/v2.8.0)
 
2
  icon: "list-check"
3
  ---
4
 
5
+ <Update label="v2.9.0" description="2024-06-23">
6
+
7
+ ## [v2.9.0: Stuck in the Middleware With You](https://github.com/jlowin/fastmcp/releases/tag/v2.9.0)
8
+
9
+ FastMCP 2.9 introduces two important features that push beyond the basic MCP protocol: MCP Middleware and server-side type conversion.
10
+
11
+ ### MCP Middleware
12
+ MCP middleware lets you intercept and modify requests and responses at the protocol level, giving you powerful capabilities for logging, authentication, validation, and more. This is particularly useful for building production-ready MCP servers that need sophisticated request handling.
13
+
14
+ ### Server-side Type Conversion
15
+ This release also introduces server-side type conversion for prompt arguments, ensuring that data is properly formatted before being passed to your functions. This reduces the burden on individual tools and prompts to handle type validation and conversion.
16
+
17
+ ## What's Changed
18
+ ### New Features πŸŽ‰
19
+ * Add File utility for binary data by [@jlowin](https://github.com/jlowin) in [#831](https://github.com/jlowin/fastmcp/pull/831)
20
+ * Consolidate prefix logic into FastMCP methods by [@jlowin](https://github.com/jlowin) in [#832](https://github.com/jlowin/fastmcp/pull/832)
21
+ * Introduce MCP Middleware by [@jlowin](https://github.com/jlowin) in [#833](https://github.com/jlowin/fastmcp/pull/833)
22
+ * Server-side type conversion for prompt arguments by [@jlowin](https://github.com/jlowin) in [#838](https://github.com/jlowin/fastmcp/pull/838)
23
+ ### Enhancements πŸ”§
24
+ * Fix tool description indentation by [@jlowin](https://github.com/jlowin) in [#802](https://github.com/jlowin/fastmcp/pull/802)
25
+ * Add version parameter to FastMCP constructor by [@jlowin](https://github.com/jlowin) in [#803](https://github.com/jlowin/fastmcp/pull/803)
26
+ * Add session_id property to Context by [@jlowin](https://github.com/jlowin) in [#816](https://github.com/jlowin/fastmcp/pull/816)
27
+ * Improve CORS documentation by [@jlowin](https://github.com/jlowin) in [#821](https://github.com/jlowin/fastmcp/pull/821)
28
+ * Add httpx.Auth support for authentication by [@jlowin](https://github.com/jlowin) in [#828](https://github.com/jlowin/fastmcp/pull/828)
29
+ * Add client-side prompt argument serialization by [@jlowin](https://github.com/jlowin) in [#837](https://github.com/jlowin/fastmcp/pull/837)
30
+ ### Fixes 🐞
31
+ * Fix report_progress issue in streaming-http by [@jlowin](https://github.com/jlowin) in [#813](https://github.com/jlowin/fastmcp/pull/813)
32
+ * Fix JWT issuer validation by [@jlowin](https://github.com/jlowin) in [#819](https://github.com/jlowin/fastmcp/pull/819)
33
+ * Fix BearerAuthProvider audience type annotations by [@jlowin](https://github.com/jlowin) in [#829](https://github.com/jlowin/fastmcp/pull/829)
34
+ ### Docs πŸ“š
35
+ * Add development guidelines by [@jlowin](https://github.com/jlowin) in [#804](https://github.com/jlowin/fastmcp/pull/804)
36
+ * Update context documentation by [@jlowin](https://github.com/jlowin) in [#817](https://github.com/jlowin/fastmcp/pull/817)
37
+ * Improve API reference by [@jlowin](https://github.com/jlowin) in [#822](https://github.com/jlowin/fastmcp/pull/822)
38
+ * Add middleware examples by [@jlowin](https://github.com/jlowin) in [#834](https://github.com/jlowin/fastmcp/pull/834)
39
+ * Update integration documentation by [@jlowin](https://github.com/jlowin) in [#835](https://github.com/jlowin/fastmcp/pull/835)
40
+ ### Examples & Contributions πŸ’‘
41
+ * Add ATProto (Bluesky) MCP Server Example by [@alexsee](https://github.com/alexsee) in [#810](https://github.com/jlowin/fastmcp/pull/810)
42
+ * MCP mixin support by [@zfflxx](https://github.com/zfflxx) in [#820](https://github.com/jlowin/fastmcp/pull/820)
43
+
44
+ ## New Contributors
45
+ * [@alexsee](https://github.com/alexsee) made their first contribution in [#838](https://github.com/jlowin/fastmcp/pull/838)
46
+ * [@zfflxx](https://github.com/zfflxx) made their first contribution in [#845](https://github.com/jlowin/fastmcp/pull/845)
47
+ * [@mkyutani](https://github.com/mkyutani) made their first contribution in [#842](https://github.com/jlowin/fastmcp/pull/842)
48
+ * [@gorocode](https://github.com/gorocode) made their first contribution in [#843](https://github.com/jlowin/fastmcp/pull/843)
49
+ * [@rsp2k](https://github.com/rsp2k) made their first contribution in [#860](https://github.com/jlowin/fastmcp/pull/860)
50
+ * [@owtaylor](https://github.com/owtaylor) made their first contribution in [#897](https://github.com/jlowin/fastmcp/pull/897)
51
+ * [@Jason-CKY](https://github.com/Jason-CKY) made their first contribution in [#906](https://github.com/jlowin/fastmcp/pull/906)
52
+
53
+ **Full Changelog**: [v2.8.1...v2.9.0](https://github.com/jlowin/fastmcp/compare/v2.8.1...v2.9.0)
54
+
55
+ </Update>
56
+
57
+ <Update label="v2.8.1" description="2024-06-15">
58
+
59
+ ## [v2.8.1: Sound Judgement](https://github.com/jlowin/fastmcp/releases/tag/v2.8.1)
60
+
61
+ 2.8.1 introduces audio support, as well as minor fixes and updates for deprecated features.
62
+
63
+ ### Audio Support
64
+ This release adds support for audio content in MCP tools and resources, expanding FastMCP's multimedia capabilities beyond text and images.
65
+
66
+ ## What's Changed
67
+ ### New Features πŸŽ‰
68
+ * Add audio support by [@jlowin](https://github.com/jlowin) in [#794](https://github.com/jlowin/fastmcp/pull/794)
69
+ ### Enhancements πŸ”§
70
+ * Add flag for disabling deprecation warnings by [@jlowin](https://github.com/jlowin) in [#795](https://github.com/jlowin/fastmcp/pull/795)
71
+ * Add examples to Tool Arg Param transformation by [@strawgate](https://github.com/strawgate) in [#796](https://github.com/jlowin/fastmcp/pull/796)
72
+ ### Fixes 🐞
73
+ * Restore .settings access as deprecated by [@jlowin](https://github.com/jlowin) in [#797](https://github.com/jlowin/fastmcp/pull/797)
74
+ * Handle false HTTP kwargs correctly by [@jlowin](https://github.com/jlowin) in [#798](https://github.com/jlowin/fastmcp/pull/798)
75
+ * Bump MCP to version 1.9.4 by [@jlowin](https://github.com/jlowin) in [#799](https://github.com/jlowin/fastmcp/pull/799)
76
+ ### Docs πŸ“š
77
+ * Update changelog for 2.8.0 by [@jlowin](https://github.com/jlowin) in [#800](https://github.com/jlowin/fastmcp/pull/800)
78
+ * Update welcome docs by [@jlowin](https://github.com/jlowin) in [#801](https://github.com/jlowin/fastmcp/pull/801)
79
+ * Update documentation headers by [@zzstoatzz](https://github.com/zzstoatzz) in [#805](https://github.com/jlowin/fastmcp/pull/805)
80
+ * Add MCP group to tutorials by [@jlowin](https://github.com/jlowin) in [#806](https://github.com/jlowin/fastmcp/pull/806)
81
+ * Add Community section to documentation by [@jlowin](https://github.com/jlowin) in [#807](https://github.com/jlowin/fastmcp/pull/807)
82
+ * Embed YouTube videos in community showcase by [@jlowin](https://github.com/jlowin) in [#808](https://github.com/jlowin/fastmcp/pull/808)
83
+ ### Other Changes 🦾
84
+ * Ensure HTTP args are passed through by [@jlowin](https://github.com/jlowin) in [#809](https://github.com/jlowin/fastmcp/pull/809)
85
+ * Fix install link in readme by [@jlowin](https://github.com/jlowin) in [#811](https://github.com/jlowin/fastmcp/pull/811)
86
+
87
+ **Full Changelog**: [v2.8.0...v2.8.1](https://github.com/jlowin/fastmcp/compare/v2.8.0...v2.8.1)
88
+
89
+ </Update>
90
+
91
  <Update label="v2.8.0" description="2024-06-10">
92
 
93
  ## [v2.8.0: Transform and Roll Out](https://github.com/jlowin/fastmcp/releases/tag/v2.8.0)
docs/updates.mdx CHANGED
@@ -5,6 +5,22 @@ icon: "sparkles"
5
  tag: NEW
6
  ---
7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8
  <Update label="FastMCP 2.8" description="June 11, 2025" tags={["Releases", "Blog Posts"]}>
9
  <Card
10
  title="FastMCP 2.8: Transform and Roll Out" href="https://www.jlowin.dev/blog/fastmcp-2-8-tool-transformation"
 
5
  tag: NEW
6
  ---
7
 
8
+ <Update label="FastMCP 2.9" description="June 23, 2025" tags={["Releases", "Blog Posts"]}>
9
+ <Card
10
+ title="FastMCP 2.9: MCP-Native Middleware" href="https://www.jlowin.dev/blog/fastmcp-2-9-middleware"
11
+ img="https://jlowin.dev/_image?href=%2F_astro%2Fhero.BkVTdeBk.jpg&w=1200&h=630&f=png"
12
+ cta="Read more"
13
+ >
14
+ FastMCP 2.9 is a major release that, among other things, introduces two important features that push beyond the basic MCP protocol.
15
+
16
+ 🀝 *MCP Middleware* brings a flexible middleware system for intercepting and controlling server operations - think authentication, logging, rate limiting, and custom business logic without touching core protocol code.
17
+
18
+ ✨ *Server-side type conversion* for prompts solves a major developer pain point: while MCP requires string arguments, your functions can now work with native Python types like lists and dictionaries, with automatic conversion handling the complexity.
19
+
20
+ These features transform FastMCP from a simple protocol implementation into a powerful framework for building sophisticated MCP applications. Combined with the new `File` utility for binary data and improvements to authentication and serialization, this release makes FastMCP significantly more flexible and developer-friendly while maintaining full protocol compliance.
21
+ </Card>
22
+ </Update>
23
+
24
  <Update label="FastMCP 2.8" description="June 11, 2025" tags={["Releases", "Blog Posts"]}>
25
  <Card
26
  title="FastMCP 2.8: Transform and Roll Out" href="https://www.jlowin.dev/blog/fastmcp-2-8-tool-transformation"