Open
Labels
P2Moderate issues affecting some users, edge cases, potentially valuable featureModerate issues affecting some users, edge cases, potentially valuable featureenhancementRequest for a new feature that's not currently supportedRequest for a new feature that's not currently supportedneeds decisionIssue is actionable, needs maintainer decision on whether to implementIssue is actionable, needs maintainer decision on whether to implementv2Affects the v2 line (2.x on main)Affects the v2 line (2.x on main)
Milestone
Description
Question
I noticed that the FastMCP server does not have the options to manually specify the capabilities of the server, however it is possible to do so with the low-level server.
My current workaround to advertise the capabilities is like so:
mcp = FastMCP("test-server")
# Manually set notification options
lowlevel_server: Server = mcp._mcp_server
lowlevel_server.notification_options.resources_changed = True
lowlevel_server.notification_options.tools_changed = True
# Now, we override the mcp.run()
async def main():
async with stdio_server() as (r, w):
init_opts = lowlevel_server.create_initialization_options(
lowlevel_server.notification_options,
{}
)
await lowlevel_server.run(r, w, init_opts)
if __name__ == "__main__":
anyio.run(main)Is there any other way to specify the capabilities of the FastMCP server? Is there a reason not to?
Thanks!
Additional Context
No response
Metadata
Metadata
Assignees
Labels
P2Moderate issues affecting some users, edge cases, potentially valuable featureModerate issues affecting some users, edge cases, potentially valuable featureenhancementRequest for a new feature that's not currently supportedRequest for a new feature that's not currently supportedneeds decisionIssue is actionable, needs maintainer decision on whether to implementIssue is actionable, needs maintainer decision on whether to implementv2Affects the v2 line (2.x on main)Affects the v2 line (2.x on main)
Activity
felixweinberger commentedon Oct 7, 2025
This is fair and we might want to add some sane defaults versions of these methods - currently FastMCP doesn't have these.
ronytesler commentedon Apr 1, 2026
I tried that but chatGPT tried to use the old tool and failed. I also tried a new chat. Was it supposed to request the updated tool list and work without errors?