You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
There doesn't seem to be a way to call remove_tool or remove_resource, such as in the tool manager
Describe the solution you'd like
If this is indeed the case, I'm happy to submit a PR to add those methods to the resource & tool managers in fastMCP
The PR adds enable() and disable() methods to tools, which allows temporarily disabling tools and re-enabling them when needed.
Would this solution work for your use case?
I can't speak for @skunkwerk, but for our use case (a multi-tenant MCP server), no, we need to actually remove the tool, not just disable it.
Right now, we are doing some hackery like
def_remove_tool_from_mcp(self, tool_name: str) ->bool:
"""Remove a tool from the MCP server. NOTE: There is no API available for tool removal, so we edit private members ourselves. """iftool_nameinmcp._tool_manager._tools: # noqa: SLF001delmcp._tool_manager._tools[tool_name] # noqa: SLF001returnTruereturnFalse
Activity
davila7 commentedon May 16, 2025
Hi @skunkwerk,
I've submitted a PR that addresses this feature request: #728
The PR adds enable() and disable() methods to tools, which allows temporarily disabling tools and re-enabling them when needed.
Would this solution work for your use case?
lukehsiao commentedon Sep 19, 2025
I can't speak for @skunkwerk, but for our use case (a multi-tenant MCP server), no, we need to actually remove the tool, not just disable it.
Right now, we are doing some hackery like
felixweinberger commentedon Oct 3, 2025
Should be addressed by #1322 once we land that