Skip to content

Track: FastMCP 2.14.x outputSchema incompatibility with Claude Desktop #468

@phernandez

Description

@phernandez

Summary

FastMCP 2.14.x introduces automatic outputSchema generation for all MCP tools, but Claude Desktop doesn't support this field and disables the tool toggle entirely when it encounters it. This causes MCP tools to be invisible to users despite being registered correctly server-side.

Current Status

Fixed in v0.16.3 by pinning to fastmcp==2.12.3 (PR #464)

Root Cause

FastMCP 2.14.0 Breaking Change

FastMCP 2.14.0 removed the ability to disable outputSchema generation:

  • output_schema=False was deprecated in 2.11.4
  • Removed entirely in 2.14.0
  • Now outputSchema is always generated for all tools

Claude Desktop Incompatibility

When Claude Desktop receives tool definitions with outputSchema:

  • The tool toggle is disabled in the UI
  • Tools appear registered server-side (tools/list returns all tools)
  • But tools are not available in conversations
  • Users see "tool not found" errors

Version Comparison

Package Working Broken
fastmcp 2.12.3 2.14.x
mcp 1.14.0 1.24.0

User Reports

From Discord (Dec 19, 2025):

Claude Desktop connects to Basic Memory successfully – I can see in the logs that tools/list returns all 18 tools – but Claude doesn't make them available in conversations. The MCP server shows "running" in settings.

Users confirmed:

  • ✅ Server shows "running" in MCP settings
  • ✅ Logs show successful initialize
  • tools/list returns all 18 tools
  • prompts/list and resources/list work
  • ❌ Tools NEVER available in conversations

Upstream Issues

Troubleshooting for Users

If you're still experiencing issues after upgrading to v0.16.3:

1. Verify FastMCP Version

pip show fastmcp
# Should show Version: 2.12.3

2. Clean Reinstall

# Option 1: pip
pip uninstall basic-memory fastmcp -y
pip install basic-memory

# Option 2: uvx
uvx --reinstall basic-memory

# Option 3: pipx
pipx uninstall basic-memory
pipx install basic-memory

3. Restart Claude Desktop

Fully quit and restart Claude Desktop after reinstalling.

4. Windows Users

If still not working, try killing orphan Node processes:

Get-Process | Where-Object {$_.ProcessName -like "*node*"} | Stop-Process -Force

Resolution Path

This issue will remain open to track when we can safely upgrade FastMCP:

  • FastMCP adds global config option to disable outputSchema (#2654)
  • OR Claude Desktop adds support for outputSchema
  • Test upgrade to newer FastMCP version
  • Remove pin and update dependency

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingdependenciesPull requests that update a dependency filedocumentationImprovements or additions to documentationenhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions