Container Won’t Start
Symptoms
docker compose upexits immediately or containers restart in a loop.- Health check failures in
docker ps.
Solutions
Check container logs:Database Connection Failures
See also: Connections GuideSymptoms
- “Connection refused” or “Connection timed out” errors when testing a connection.
- Tools fail with database errors after deploy.
Solutions
Check network accessibility: Ensure the database host is reachable from the Docker network. If the database runs on the host machine, usehost.docker.internal instead of localhost.
Verify credentials:
- Double-check the username, password, and database name.
- Test the connection using the “Test Connection” button in the UI.
| SSL Mode | When to use |
|---|---|
disable | Local development, trusted networks |
require | Remote databases (encrypt but don’t verify certificate) |
verify-ca | Production (verify server certificate authority) |
verify-full | Highest security (verify CA and hostname) |
- PostgreSQL: check
pg_hba.conffor allowed client addresses. - MySQL: check user host restrictions.
- ClickHouse: check
users.xmlfor allowed networks.
Deploy Fails / MCP Won’t Start
Symptoms
- Deploy button shows an error.
- MCP container starts then immediately exits.
Solutions
Check the Logs tab: Go to Server > Logs to see the real-time MCP server output. Common error patterns:ModuleNotFoundError— a required Python package is missing.SyntaxError— generated code has a syntax issue.ConnectionRefusedError— the MCP server can’t connect to a configured database.
- Go to the Server page
- Click Stop to shut down the MCP server
- Click Deploy to regenerate code and start fresh
- Watch the Logs tab for errors during startup
SSL Certificate Issues
See also: SSL/HTTPS SetupSymptoms
- “Certificate issuance failed” error.
- HTTPS not working after enabling SSL.
Solutions
Domain DNS: Ensure the domain’s DNS A record points to the server’s public IP address:CORS Errors
Symptoms
- Browser console shows “Access-Control-Allow-Origin” errors.
- API calls fail from the frontend but work from curl.
Solutions
Check the CORS origins setting: Go to Server > Settings > Security and review the CORS Origins field. The origin must match exactly, including protocol and port:WebSocket Disconnects
Symptoms
- Deploy logs stop streaming after a few seconds.
- “WebSocket connection closed” errors in the browser console.
Solutions
Ensure nginx WebSocket upgrade headers are configured. If running behind an additional reverse proxy (Cloudflare, AWS ALB), configure WebSocket support on that layer as well.Redis Connection Issues
Symptoms
- Queue metrics endpoint returns errors.
- “Connection refused” for Redis in backend logs.
Solutions
Password mismatch:General Debugging Tips
- Always check container logs first — most issues are visible in the logs.
- Use the health endpoints to verify each service is running:
- Backend:
GET /api/health - MCP:
GET /api/v1/server/health - Deploy status:
GET /api/v1/deploy/status
- Backend:
- Restart a single container without affecting others:
- Clean slate — if all else fails, remove volumes and rebuild: