Skip to content

build(deps): bump fastmcp from 2.14.5 to 3.2.0 in /mcp-server#10647

Closed
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/pip/mcp-server/fastmcp-3.2.0
Closed

build(deps): bump fastmcp from 2.14.5 to 3.2.0 in /mcp-server#10647
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/pip/mcp-server/fastmcp-3.2.0

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github Apr 1, 2026

Bumps fastmcp from 2.14.5 to 3.2.0.

Release notes

Sourced from fastmcp's releases.

v3.2.0: Show Don't Tool

FastMCP 3.2 is the Apps release. The 3.0 architecture gave you providers and transforms; 3.1 shipped Code Mode for tool discovery. 3.2 puts a face on it: your tools can now return interactive UIs — charts, dashboards, forms, maps — rendered right inside the conversation.

FastMCPApp

FastMCPApp is a new provider class for building interactive applications inside MCP. It separates the tools the LLM sees (@app.ui()) from the backend tools the UI calls (@app.tool()), manages visibility automatically, and gives tool references stable identifiers that survive namespace transforms and server composition — without requiring host cooperation.

from fastmcp import FastMCP, FastMCPApp
from prefab_ui.actions.mcp import CallTool
from prefab_ui.components import Column, Form, Input, Button, ForEach, Text
app = FastMCPApp("Contacts")
@​app.tool()
def save_contact(name: str, email: str) -> list[dict]:
db.append({"name": name, "email": email})
return list(db)
@​app.ui()
def contact_manager() -> PrefabApp:
with PrefabApp(state={"contacts": list(db)}) as view:
with Column(gap=4):
ForEach("contacts", lambda c: Text(c.name))
with Form(on_submit=CallTool("save_contact")):
Input(name="name", required=True)
Input(name="email", required=True)
Button("Save")
return view
mcp = FastMCP("Server", providers=[app])

The UI is built with Prefab, a Python component library that compiles to interactive UIs. You write Python; the user sees charts, tables, forms, and dashboards. FastMCP handles the MCP Apps protocol machinery — renderer resources, CSP configuration, structured content serialization — so you don't have to.

For simpler cases where you just want to visualize data without server interaction, set app=True on any tool and return Prefab components directly:

@mcp.tool(app=True)
def revenue_chart(year: int) -> PrefabApp:
    with PrefabApp() as app:
        BarChart(data=revenue_data, series=[ChartSeries(data_key="revenue")])
    return app

Built-in Providers

Five ready-made providers you add with a single add_provider() call:

  • FileUpload — drag-and-drop file upload with session-scoped storage

... (truncated)

Changelog

Sourced from fastmcp's changelog.


title: "Changelog" icon: "list-check" rss: true tag: NEW

v3.1.1: 'Tis But a Patch

Pins pydantic-monty below 0.0.8 to fix a breaking change in Monty that affects code mode. Monty 0.0.8 removed the external_functions constructor parameter, causing MontySandboxProvider to fail. This patch caps the version so existing installs work correctly.

Fixes 🐞

Full Changelog: v3.1.0...v3.1.1

v3.1.0: Code to Joy

FastMCP 3.1 is the Code Mode release. The 3.0 architecture introduced providers and transforms as the extensibility layer — 3.1 puts that architecture to work, shipping the most requested capability since launch: servers that can find and execute code on behalf of agents, without requiring clients to know what tools exist.

New Features 🎉

Enhancements 🔧

... (truncated)

Commits
  • 665514e Add forward_resource flag to OAuthProxy (#3711)
  • f189d1f Bump pydantic-monty to 0.0.9 (#3707)
  • 6faa2d6 Remove hardcoded prefab-ui version from pinning warnings (#3708)
  • dd8816c chore: Update SDK documentation (#3701)
  • d274959 docs: note that custom routes are unauthenticated (#3706)
  • 4a54be2 Add examples gallery page (#3705)
  • 961dd50 Add interactive map example with geocoding (#3702)
  • f01d0c5 Add quiz example app, fix dev server empty string args (#3700)
  • 85b7efd chore: Update SDK documentation (#3694)
  • 27abe3c Add sales dashboard and live system monitor examples, bump prefab-ui to 0.17 ...
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file major python Pull requests that update python code labels Apr 1, 2026
Bumps [fastmcp](https://github.com/PrefectHQ/fastmcp) from 2.14.5 to 3.2.0.
- [Release notes](https://github.com/PrefectHQ/fastmcp/releases)
- [Changelog](https://github.com/PrefectHQ/fastmcp/blob/main/docs/changelog.mdx)
- [Commits](PrefectHQ/fastmcp@v2.14.5...v3.2.0)

---
updated-dependencies:
- dependency-name: fastmcp
  dependency-version: 3.2.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot force-pushed the dependabot/pip/mcp-server/fastmcp-3.2.0 branch from 64313b6 to 98699f0 Compare April 13, 2026 06:07
@yuqi1129
Copy link
Copy Markdown
Contributor

Close it as this upgrade will lead to the following problem, we need to resolve it before the upgrade.

Traceback (most recent call last):
  File "/home/runner/work/gravitino/gravitino/mcp-server/tests/unit/tools/test_model.py", line 32, in setUp
    server = GravitinoMCPServer(Setting("mock_metalake"))
  File "/home/runner/work/gravitino/gravitino/mcp-server/mcp_server/server.py", line 99, in __init__
    load_tools(self.mcp)
  File "/home/runner/work/gravitino/gravitino/mcp-server/mcp_server/tools/__init__.py", line 41, in load_tools
    load_tag_tool(mcp)
  File "/home/runner/work/gravitino/gravitino/mcp-server/mcp_server/tools/tag.py", line 22, in load_tag_tool
    @mcp.tool(tags={"tag"}, enabled=False)
TypeError: FastMCP.tool() got an unexpected keyword argument 'enabled'
:mcp-server:testPython failure mark

@yuqi1129 yuqi1129 closed this Apr 13, 2026
@dependabot @github
Copy link
Copy Markdown
Contributor Author

dependabot Bot commented on behalf of github Apr 13, 2026

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot dependabot Bot deleted the dependabot/pip/mcp-server/fastmcp-3.2.0 branch April 13, 2026 06:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file major python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant