{"id":"6f06f36a-6384-48ab-a918-27bcd878a80a","slug":"shipsquares","kind":"mcp","name":"shipsquares","summary":"AI-native, self-hosted Platform-as-a-Service — deploy apps, databases, and more to servers you own (beta).","owner":"digisquares","repoUrl":"https://github.com/digisquares/shipsquares","license":"Apache-2.0","licenseTier":"permissive","trust":"community","stars":1,"match":null,"fewStars":true,"format":"mcp","createdAt":"2026-06-17T12:46:11.000Z","addedAt":"2026-10-21T09:08:07.791Z","logoUrl":"https://avatars.githubusercontent.com/u/17609287?u=bf3894ba7f7f221fc59eb4ea94036a6890c8ae90&v=4","linkOnly":false,"collection":null,"skillPath":null,"categories":["databases","cloud-infra"],"tags":["deploy","docker","fastify","nodejs","open-source","paas","postgresql","self-hosted"],"runtime":"binary","local":true,"cloudCapable":false,"cloudCapability":"unknown","cloudReadyOnPlatform":false,"needsApiKey":false,"reviewed":false,"syncedAt":"2026-10-23T03:47:11.620Z","sample":false,"url":"https://conduits.dev/tools/shipsquares","language":"TypeScript","transports":["stdio"],"install":{},"requirements":{"env":[],"upstreamMayCharge":false},"tools":null,"readme":"<div align=\"center\">\n\n# ShipSquares\n\n**AI-native, self-hosted Platform-as-a-Service** — deploy apps, databases, and more to\nservers **you own**, with push-to-deploy, automatic HTTPS, and a built-in AI assistant.\n\n[![License: Apache 2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](LICENSE)\n[![Status: Beta](https://img.shields.io/badge/status-beta-orange.svg)](#-beta)\n[![Node](https://img.shields.io/badge/node-%E2%89%A522-339933.svg?logo=node.js&logoColor=white)](https://nodejs.org)\n[![TypeScript](https://img.shields.io/badge/TypeScript-strict-3178C6.svg?logo=typescript&logoColor=white)](https://www.typescriptlang.org)\n[![PRs welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](CONTRIBUTING.md)\n\n🌐 [shipsquares.com](https://shipsquares.com) · 📚 [Documentation](https://shipsquares.com/docs)\n\n</div>\n\n## ⚠️ Beta\n\nShipSquares is under active development and **not yet recommended for production-critical\nworkloads**. Expect rough edges and breaking changes on the road to 1.0 — feedback, bug\nreports, and issues are very welcome.\n\n**Need a production-ready self-hosted PaaS today?** We'd point you to the more mature,\nbattle-tested open-source projects in this space — [Dokploy](https://github.com/Dokploy/dokploy)\nand [Coolify](https://github.com/coollabsio/coolify) — until ShipSquares reaches a stable\nrelease.\n\n## Why ShipSquares\n\n- **Own your data** — runs entirely on your servers; no central control plane, no lock-in.\n- **Push-to-deploy** — from a GitHub repo, a Docker image, or a one-click catalog template.\n- **Automatic HTTPS** — custom domains get certificates issued and renewed for you (Caddy).\n- **Multi-server fleet** — start on one server, add more over agentless SSH.\n- **Built-in data tools** — Database Studio (SQL browser) and managed email.\n- **AI-native** — an MCP server and assistant can operate the platform with your permissions.\n- **Lean core** — one TypeScript control plane on PostgreSQL + Caddy; no extra broker, no\n  Swarm/Kubernetes to run.\n\n## Quickstart\n\nInstall on a fresh Linux server:\n\n```sh\ncurl -fsSL https://get.shipsquares.com | bash\n```\n\nFull installation and usage guides live at **https://shipsquares.com/docs**.\n\n## How it works\n\nA single TypeScript **control plane** (`apps/server`) owns all state in PostgreSQL, runs\nbackground work on an in-database job queue, and drives a **Caddy** reverse proxy for\nautomatic TLS. It deploys workloads as Docker containers — on the local host or on remote\nservers reached over **agentless SSH** (nothing to install on the targets). A **React**\ndashboard, an `ss` **CLI**, and an **MCP server** all talk to the same typed HTTP API, so\nhumans and AI assistants operate the platform through one contract.\n\n## How it compares\n\n[Coolify](https://github.com/coollabsio/coolify) and [Dokploy](https://github.com/Dokploy/dokploy)\nare excellent, production-ready PaaS projects, and ShipSquares keeps parity on the basics\n(push-to-deploy, one-click catalog, backups, multi-server over SSH). Where it differs is an\n**AI-native, batteries-included core**:\n\n|                                                                                      |              ShipSquares               |     Coolify      |     Dokploy      |\n| ------------------------------------------------------------------------------------ | :------------------------------------: | :--------------: | :--------------: |\n| Built-in **AI assistant + MCP** — operate the platform via AI, with your permissions |                   ✅                   |        —         |        —         |\n| **Database Studio** — in-dashboard SQL browser & editor (Postgres + MySQL)           |                   ✅                   |        —         |        —         |\n| **Managed email** — host mailboxes + DKIM/SPF/DMARC records generated & verified     |                   ✅                   |        —         |        —         |\n| Automatic-HTTPS proxy                                                                | **Caddy** (zero-config, on-demand TLS) |     Traefik      |     Traefik      |\n| Control-plane datastore                                                              |  **PostgreSQL only** (pg-boss queue)   | Postgres + Redis | Postgres + Redis |\n| Process model                                                                        |  native systemd core (apps in Docker)  |      Docker      |      Docker      |\n| Push-to-deploy · catalog · backups · multi-server                                    |                   ✅                   |        ✅        |        ✅        |\n| License                                                                              |               Apache-2.0               |    Apache-2.0    |    Apache-2.0    |\n\n> ShipSquares is **beta**; Coolify and Dokploy are battle-tested today. If you need production\n> stability right now, use them — and check back as ShipSquares heads to 1.0.\n\n## Built with\n\nShipSquares stands on a deliberately small, battle-tested set of open-source libraries.\n\n**Core**\n\n- [Node.js](https://nodejs.org) 22 + [TypeScript](https://www.typescriptlang.org) (strict, ESM)\n- [pnpm](https://pnpm.io) workspaces\n\n**Control plane** (`apps/server`)\n\n- [Fastify](https://fastify.dev) — HTTP server, with [`@fastify/*`](https://github.com/fastify) plugins (CORS, Helmet, rate-limit, WebSocket, Swagger, static)\n- [Drizzle ORM](https://orm.drizzle.team) + [postgres.js](https://github.com/porsager/postgres) on [PostgreSQL](https://www.postgresql.org)\n- [pg-boss](https://github.com/timgit/pg-boss) — Postgres-backed job queue (no separate broker)\n- [better-auth](https://www.better-auth.com) — authentication + RBAC\n- [TypeBox](https://github.com/sinclairzx81/typebox) + [Zod](https://zod.dev) — schema and validation\n- [ssh2](https://github.com/mscdex/ssh2) — agentless remote-server orchestration\n- [Octokit](https://github.com/octokit) — GitHub App / repo integration\n- [Nodemailer](https://nodemailer.com) — managed email delivery\n- [`@modelcontextprotocol/sdk`](https://github.com/modelcontextprotocol) — MCP server\n- [`@anthropic-ai/sdk`](https://github.com/anthropics/anthropic-sdk-typescript) — the built-in AI assistant\n\n**Dashboard** (`apps/web`)\n\n- [React](https://react.dev) 19 + [Vite](https://vite.dev)\n- [TanStack Table & Virtual](https://tanstack.com) — fast data grids\n- [CodeMirror](https://codemirror.net) — the SQL editor in Database Studio\n- [xterm.js](https://xtermjs.org) — the in-browser console\n\n**Infrastructure**\n\n- [Caddy](https://caddyserver.com) — reverse proxy with automatic HTTPS\n- [Docker](https://www.docker.com) — workload runtime\n\n**Tooling**\n\n- [Vitest](https://vitest.dev), [ESLint](https://eslint.org), [Prettier](https://prettier.io), [tsx](https://github.com/privatenumber/tsx)\n\nFull per-subsystem attributions for adapted code are in [NOTICE](NOTICE).\n\n## Monorepo layout\n\n```\napps/server              the Fastify control plane (API, deploy engine, Drizzle, pg-boss)\napps/web                 the React/Vite dashboard\napps/cli                 the `ss` command-line client\nmcp                      the MCP server (tools over the typed client)\npackages/shared          shared config schema, ids, error taxonomy\npackages/openapi-client  generated TypeScript client from the server's openapi.json\ninfra                    installer + dev compose, Caddy/systemd templates\nops                      operational helper scripts\n```\n\n## Development\n\nRequires **Node 22+** and **pnpm 10+**.\n\n```sh\npnpm install\ncp .env.example .env     # set DATABASE_URL / AUTH_SECRET / AUTH_URL\n\npnpm dev                 # boot the control plane\npnpm -F @ss/web dev      # the dashboard (Vite)\npnpm test                # vitest\npnpm lint                # eslint + prettier\npnpm build               # typecheck + build the web app\npnpm openapi:gen         # re-emit openapi.json + the typed client\n```\n\nEvery runtime value comes from the environment and is validated once at boot; a missing or\nmalformed key fails fast with a single aggregated error.\n\n## Contributing\n\nContributions are welcome — see [CONTRIBUTING.md](CONTRIBUTING.md) and the\n[Code of Conduct](CODE_OF_CONDUCT.md). Found a security issue? See [SECURITY.md](SECURITY.md).\n\n## Acknowledgments\n\nShipSquares learns from the excellent open-source self-hosted PaaS ecosystem — including\n[Dokploy](https://github.com/Dokploy/dokploy), [Coolify](https://github.com/coollabsio/coolify),\n[CapRover](https://github.com/caprover/caprover), [Dockge](https://github.com/louislam/dockge),\n[Kamal](https://github.com/basecamp/kamal), and [Portainer](https://github.com/portainer/portainer).\nPer-subsystem provenance for any adapted code is documented in [NOTICE](NOTICE).\n\n## License\n\n[Apache-2.0](LICENSE) © Digisquares and the ShipSquares contributors.\n"}