Add the following built MCP servers to crush.json configuration:
- blender-mcp
- cloudron-mcp
- docspace-mcp
- freecad-mcp
- gimp-mcp
- kicad-mcp
All servers configured with appropriate environment variables.
Update crush.json LSP configurations to use newly created
wrapper scripts instead of direct Docker commands. This ensures
LSP server containers have consistent names matching their
images, allowing multiple Crush sessions to share containers
and enabling clean restart capability.
- Remove context7 from LSP section in crush.json (it's an MCP server)
- Add GHOST_API_URL and GHOST_ADMIN_API_KEY to ghost-mcp config
- Context7 was incorrectly configured as both LSP and MCP
- Remove duplicate uvx commands from docker-compose.yml (blender, freecad, gimp)
- Update ghost-mcp to use default environment values for testing
- Update crush.json LSP commands with proper start arguments
- Add ffmpeg dependency to audiobook-mcp Dockerfile
- Create .env file with dummy values for all MCP servers
- Update STATUS.md for ghost-mcp working status
Note: gimp-mcp entrypoint fix excluded (vendor directory is gitignored)
Remove unnecessary entrypoint overrides and use default container entrypoints.
All LSP containers now use their Dockerfile-defined ENTRYPOINT and CMD.
- bash-language-server: Uses default entrypoint and 'start' command
- docker-language-server: Uses default entrypoint and 'start --stdio' command
- marksman: Uses default entrypoint and 'server' command
- Fixed Dockerfile to skip prepare script during npm ci
- Changed docker-compose.yml to use node:22-alpine image with npx
- Updated STATUS.md to mark ghost-mcp as Built
- Added ghost-mcp to crush.json for Crush integration
- Validated container starts correctly with proper Ghost credentials
The ghost-mcp server now works as expected using the @fanyangmeng/ghost-mcp
npm package. It requires GHOST_API_URL and GHOST_ADMIN_API_KEY in the
format {24_hex_chars}:{64_hex_chars}.
- Build bitwarden-mcp from Bitwarden clients monorepo (multi-stage Docker build)
- Uses distroless nodejs24-debian12 for minimal runtime
- Update STATUS.md: Mark mcp-server (Bitwarden) as Built
- Update crush.json: Add bitwarden MCP server to mcp section
Note: Requires BITWARDEN_CLIENT_ID, BITWARDEN_CLIENT_SECRET, and BITWARDEN_PASSWORD env vars
- Build audiobook-mcp from TypeScript source (npm run build)
- Update STATUS.md: Mark audiobook-mcp-server as Built
- Update crush.json: Add audiobook MCP server to mcp section
Note: Uses npx entrypoint pattern similar to other MCP servers