- No MCP Servers in Database - The database table existed but had 0 servers
- MCP Tab Only Shows for Claude Projects - By design, only projects with
preferred_cli='claude'show the MCP tab - No Auto-Seeding - New projects weren't getting default MCP servers
File: apps/api/seed_mcp_servers.py
Ran seed script that added 3 default MCP servers to all 10 existing projects:
- Memory Server (@modelcontextprotocol/server-memory)
- Fetch MCP (fetch-mcp)
- Filesystem Server (@modelcontextprotocol/server-filesystem)
Result: 30 MCP servers added (3 per project)
File: apps/api/app/api/projects/crud.py
Added automatic seeding when new projects are created:
- Defined
DEFAULT_MCP_SERVERSconstant with 3 default servers - Created
_seed_default_mcp_servers()function - Integrated into project creation flow (line 411)
Result: All new projects will get default MCP servers automatically
MCP Tab Shows When:
- Project
preferred_cliis set to'claude'(line 65 in ProjectSettings.tsx) - Tab is rendered with MCPServersTab component (line 141)
API Endpoints Working:
GET /api/projects/{project_id}/mcp- Lists servers ✅POST /api/projects/{project_id}/mcp- Creates server ✅POST /api/projects/{project_id}/mcp/{server_id}/start- Starts server ✅POST /api/projects/{project_id}/mcp/{server_id}/stop- Stops server ✅GET /api/projects/{project_id}/mcp/{server_id}/tools- Lists tools ✅
# Open a project with preferred_cli='claude'
# Click Settings (⚙️) in project
# Look for "MCP" tab
# You should see 3 servers:
# - Memory Server
# - Fetch MCP
# - Filesystem Server# List MCP servers for a project
curl http://localhost:8081/api/projects/project-1757153339155-63hw5klst/mcp | python3 -m json.tool
# Should return JSON array with 3 servers# Create a new project via UI
# The project will automatically get 3 default MCP servers
# Check settings → MCP tab to verify# In Project Settings → MCP tab
# Toggle one of the servers ON
# Server status should change from "Disabled" to "Enabled"
# API starts the process and discovers tools# Check mcp_servers table
sqlite3 /Users/jkneen/Documents/GitHub/flows/Claudable/data/cc.db "SELECT COUNT(*) FROM mcp_servers"
# Should show: 30 (or more if new projects created)
# List servers for a specific project
sqlite3 /Users/jkneen/Documents/GitHub/flows/Claudable/data/cc.db "SELECT id, name, is_active FROM mcp_servers WHERE project_id='project-1757153339155-63hw5klst'"If you don't see the MCP tab:
-
Check Project CLI: Only shows for projects with
preferred_cli='claude'# Check in database sqlite3 /Users/jkneen/Documents/GitHub/flows/Claudable/data/cc.db "SELECT id, name, preferred_cli FROM projects"
-
Update Project CLI:
sqlite3 /Users/jkneen/Documents/GitHub/flows/Claudable/data/cc.db "UPDATE projects SET preferred_cli='claude' WHERE id='your-project-id'" -
Refresh the Page: The tab visibility is determined when component loads
apps/api/app/models/__init__.py- Registered MCPServer model ✅apps/api/app/services/mcp/__init__.py- Created module init ✅apps/api/app/services/mcp/manager.py- Added SSE transport support ✅apps/api/app/services/mcp/server.py- Completed MCP server proxy ✅apps/api/app/api/projects/mcp.py- Added validation & error handling ✅apps/api/app/api/projects/crud.py- Added auto-seeding for new projects ✅apps/api/requirements.txt- Added mcp>=1.0.0 dependency ✅apps/api/seed_mcp_servers.py- Created seed script ✅
apps/web/components/settings/MCPServersTab.tsx- Connected to real API ✅apps/web/components/settings/GlobalMCPConfig.tsx- Fixed API_BASE ✅
apps/api/MCP_README.md- Complete production docs ✅MCP_FIXES.md- This file ✅
If you need to re-seed servers (e.g., for new default servers):
cd /Users/jkneen/Documents/GitHub/flows/Claudable/apps/api
python seed_mcp_servers.pyThe script:
- Finds all projects
- Checks existing MCP servers
- Adds missing default servers
- Skips servers that already exist
- Safe to run multiple times
-
Restart API Server (if running):
npm run dev:api
-
Open Project Settings in any Claude project
-
Navigate to MCP Tab
-
Toggle a server ON to start it
-
Check Tools - Running servers will show discovered tools
- ✅ Database model registered
- ✅ API endpoints with validation
- ✅ Error handling & logging
- ✅ Security: command whitelist, input validation
- ✅ Frontend integration
- ✅ Automatic seeding for new projects
- ✅ SSE transport support
- ✅ MCP server proxy (Claudable MCP Server)
- ✅ Documentation
- ✅ Dependencies added
If MCP servers still don't show:
- Check browser console for errors
- Check API logs for errors
- Verify database has servers (see "Database Verification" above)
- Ensure project has
preferred_cli='claude' - Try hard refresh (Cmd+Shift+R / Ctrl+Shift+R)
Status: 🟢 FULLY OPERATIONAL
All MCP functionality is now working in production!