# Creek

> Open-source edge deployment platform. Deploy full-stack apps to Cloudflare Workers in seconds.

- **Type:** MCP server
- **Install:** `agentstack add mcp-solcreek-creek`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [solcreek](https://agentstack.voostack.com/s/solcreek)
- **Installs:** 0
- **Category:** [Cloud & Infrastructure](https://agentstack.voostack.com/c/cloud-infrastructure)
- **Latest version:** 0.1.0
- **License:** Apache-2.0
- **Upstream author:** [solcreek](https://github.com/solcreek)
- **Source:** https://github.com/solcreek/creek
- **Website:** https://creek.dev

## Install

```sh
agentstack add mcp-solcreek-creek
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Creek

**Open-source deployment platform built on Cloudflare Workers.**

[](https://www.npmjs.com/package/creek)
[](https://www.npmjs.com/package/@solcreek/sdk)
[](LICENSE)

One command deploys your full-stack app — frontend, SSR, database, cron, queue — to 300+ Cloudflare locations worldwide. Self-host on your own account, or use Creek Cloud.

```bash
npx creek deploy
```

---

## What you get

- **One-command deploys** — auto-detects your framework, builds, and deploys
- **Built-in resources** — D1 database, R2 storage, KV cache, AI, Queues — provisioned per project
- **Cron + Queue triggers** — declare in `creek.toml`, Creek wires everything up
- **Realtime sync** — D1 writes auto-broadcast to connected clients via WebSocket
- **Per-tenant analytics** — requests, errors, latency, cron execution log
- **Agent-first** — JSON output, breadcrumb hints, MCP server, no CAPTCHAs
- **Open source** — Apache 2.0, self-host on your own Cloudflare account

---

## Zero config, one command

```bash
cd my-vite-app
npx creek deploy
#  Detected: creek.toml (Vite + React + D1 + KV)
#  Building...
#  Deploying to edge...
#  ⬡ Deployed! https://my-vite-app-myteam.bycreek.com
```

Creek detects your framework, provisions resources, builds, and deploys.

**Supported:** React · Vue · Svelte · Solid · Astro · VitePress · Hono · TanStack Start · React Router · Next.js · static HTML
**WIP:** Nuxt · SvelteKit

---

## Try it — deploy these in ~15 seconds

No signup, no config. Click a badge, watch it go live.

| | Repo | Stars | What you'll see |
|---|---|---|---|
| [](https://creek.dev/deploy/gh/satnaing/astro-paper) | [satnaing/astro-paper](https://github.com/satnaing/astro-paper) | ⭐ 4.4k | Minimal, SEO-friendly Astro blog — the most popular Astro theme |
| [](https://creek.dev/deploy/gh/withastro/docs) | [withastro/docs](https://github.com/withastro/docs) | ⭐ 1.6k | Astro's **official documentation site** |
| [](https://creek.dev/deploy/gh/vuejs/docs) | [vuejs/docs](https://github.com/vuejs/docs) | ⭐ 3.2k | Vue 3's **official documentation** — VitePress |
| [](https://creek.dev/deploy/gh/vitejs/vite/tree/main/docs) | [vitejs/vite](https://github.com/vitejs/vite) `/docs` | ⭐ 58k | Vite's **official documentation** — VitePress in a monorepo subpath |
| [](https://creek.dev/deploy/gh/sanity-io/sanity-template-astro-clean) | [sanity-io/sanity-template-astro-clean](https://github.com/sanity-io/sanity-template-astro-clean) | ⭐ 173 | Astro + Sanity starter — headless CMS pipeline |
| [](https://creek.dev/deploy/gh/danielcgilibert/blog-template) | [danielcgilibert/blog-template](https://github.com/danielcgilibert/blog-template) | ⭐ 995 | Openblog — elegant, SEO-optimised Astro blog |

First click of any repo runs a full build (~60–90s). Every click after
the first hits the build cache and deploys in ⚡ ~7s — the repo only
rebuilds when someone pushes a new commit.

**Add it to your own repo's README:**

```markdown
[](https://creek.dev/deploy/gh/YOUR-ORG/YOUR-REPO)
```

Supports GitHub `tree/{branch}/{path}` URLs for monorepos — point at a
subfolder the same way you'd link to it on GitHub.

---

## Features

### Realtime in 6 lines

WebSocket sync, optimistic updates, multi-user rooms. Zero boilerplate.

```typescript
// Server
import { db } from "creek";
import { room } from "creek/hono";

app.use("/api/*", room());

app.post("/api/todos", async (c) => {
  // db.mutate() auto-broadcasts to all connected clients
  await db.mutate("INSERT INTO todos (room_id, text) VALUES (?, ?)",
    c.var.room, await c.req.json().then(b => b.text));
  return c.json({ ok: true });
});
```

```tsx
// Client
import { LiveRoom, useLiveQuery } from "creek/react";

function App() {
  const { data: todos, mutate } = useLiveQuery("/api/todos");
  // Auto-refetches when data changes. Optimistic updates with auto-rollback.
}
```

### Cron + Queue triggers

```toml
# creek.toml
[project]
name = "my-app"

[resources]
database = true

[triggers]
cron = ["0 */6 * * *"]   # Every 6 hours
queue = true              # Auto-provisions a CF Queue
```

```typescript
// worker/index.ts
import { db, queue } from "creek";

export default {
  async fetch(request, env) {
    await queue.send({ type: "process", id: "123" });
    return new Response("queued");
  },
  async scheduled(event, env, ctx) {
    // Runs every 6 hours
    await db.prepare("DELETE FROM stale WHERE created  --outcome exception   Filter by deploy / outcome / branch / level / search
creek rollback              Rollback to a previous deployment
creek env set     Set an environment variable
creek env ls                List environment variables
creek domains add     Add a custom domain
creek login                 Authenticate with Creek
creek init                  Create creek.toml configuration
creek claim      Convert sandbox preview to permanent project
```

---

## How it works

```
                 CLI / API / MCP
                       |
          +------------+------------+
          |                         |
    Sandbox API               Control Plane
   (no auth, 60min)         (auth, permanent)
          |                         |
          +------------+------------+
                       |
            Workers for Platforms
           (dispatch namespace)
                       |
              +--------+--------+
              |        |        |
           Worker   Static    D1/R2/KV/Queue
           Script   Assets    (per-tenant)
                       |
                Cloudflare Edge
               (300+ locations)
```

**Sandbox path:** `creek deploy` / `creek deploy --template ` → Sandbox API → live URL (60 min, no auth)
**Production path:** `creek deploy` → Control Plane → permanent URL + custom domain

---

## Project structure

```
creek/
  apps/
    dashboard/              Vite + React + TanStack Router (app.creek.dev)
    www/                    Next.js marketing site via adapter-creek (creek.dev)
  packages/
    cli/                    CLI — npm: creek
    sdk/                    TypeScript SDK — npm: @solcreek/sdk
    runtime/                creek runtime for deployed apps — npm: @solcreek/runtime
    deploy-core/            Shared WfP deployment logic
    control-plane/          Hono API + Better Auth + D1 (api.creek.dev)
    sandbox-api/            Public sandbox deploy API
    sandbox-dispatch/       Sandbox routing + banner injection
    dispatch-worker/        Production tenant routing
    realtime-worker/        WebSocket via Durable Objects
    remote-builder/         CF Containers remote build orchestrator
    build-container/        Build environment Docker image
    ui/                     Shared UI (shadcn v4 + Base UI)
    create-creek-app/       Template scaffolder — npm: create-creek-app
    mcp-server/             MCP server (mcp.creek.dev)
```

---

## Tech stack

- **Runtime:** Cloudflare Workers
- **Framework:** Hono (API), Vite + React (dashboard), Next.js (www)
- **Database:** Cloudflare D1 (SQLite) + Drizzle ORM
- **Storage:** Cloudflare R2
- **Queue:** Cloudflare Queues
- **Auth:** Better Auth (GitHub, Google, email/password, API keys)
- **Multi-tenancy:** Workers for Platforms (dispatch namespaces)
- **Monorepo:** pnpm workspaces + Turborepo
- **Testing:** Vitest (790+ tests)

---

## Self-hosting

Creek is designed to run entirely on a single Cloudflare account.

**Prerequisites**
- Cloudflare account with Workers for Platforms enabled
- Node.js >= 18, pnpm >= 9

```bash
git clone https://github.com/solcreek/creek.git
cd creek
pnpm install

# Configure: copy each wrangler.*.example to wrangler.* and fill in
# your Cloudflare account ID, dispatch namespace, and resource bindings

# Deploy workers
pnpm --filter @solcreek/control-plane deploy
pnpm --filter @solcreek/sandbox-api deploy
pnpm --filter @solcreek/sandbox-dispatch deploy
pnpm --filter @solcreek/dispatch-worker deploy
```

See [Self-Hosting Guide](https://creek.dev/docs/self-hosting) for detailed instructions.

---

## Development

```bash
pnpm install
pnpm test            # Run all tests (790+)
pnpm typecheck       # TypeScript checks across all packages
pnpm dev             # Start all dev servers
```

---

## Next.js Adapter

Creek ships its own Next.js adapter — **[`@solcreek/adapter-creek`](https://github.com/solcreek/adapter-creek)** — purpose-built for Cloudflare Workers for Platforms.

```bash
npm install @solcreek/adapter-creek
creek deploy
```

The CLI auto-detects Next.js >= 16.2.3 and invokes the adapter. No config needed.

**What it does differently from generic adapters:**

- **Streaming SSR** via `TransformStream` — compatible with Workers' request lifecycle (no `node:http` server dependency)
- **Embedded manifests** — all Next.js route/build/prerender manifests are inlined into the worker bundle via a custom `fs` shim, so no filesystem reads at runtime
- **Node.js API shims** — `http`, `https`, `net`, `inspector`, `fs`, `vm`, `process` EventEmitter stubs — purpose-built for the APIs Next.js actually touches, not generic polyfills
- **Turbopack runtime patching** — replaces dynamic `R.c()` chunk loading with a static `requireChunk()` switch for Workers' no-filesystem constraint
- **Zero config** — the adapter hooks into Next.js's `onBuildComplete` lifecycle and produces a `.creek/adapter-output/` bundle the CLI uploads directly

**Dogfooding:** [creek.dev](https://creek.dev) is a Next.js app — its source lives in [`apps/www`](apps/www) in this repo — and it's deployed on Creek's own infrastructure via `creek deploy --yes`. Same platform, same adapter, same pipeline that every other Creek user gets. If the adapter breaks, our own marketing site breaks first.

## Ecosystem

- **[Awesome Creek](https://github.com/solcreek/awesome-creek)** — Curated list of templates, integrations, guides, and community projects. Submissions welcome.
- **[Templates Gallery](https://templates.creek.dev)** — Live previews of official starter templates.

---

## Contributing

We welcome contributions. Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.

- **Issues:** [github.com/solcreek/creek/issues](https://github.com/solcreek/creek/issues)
- **Discussions:** [github.com/solcreek/creek/discussions](https://github.com/solcreek/creek/discussions)

---

## License

Apache 2.0 — see [LICENSE](LICENSE).

---

**[creek.dev](https://creek.dev)** · **[Docs](https://creek.dev/docs)** · **[Templates](https://templates.creek.dev)** · **[Discord](https://discord.gg/creek)**

Built by [SolCreek](https://creek.dev).

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [solcreek](https://github.com/solcreek)
- **Source:** [solcreek/creek](https://github.com/solcreek/creek)
- **License:** Apache-2.0
- **Homepage:** https://creek.dev

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** yes
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-solcreek-creek
- Seller: https://agentstack.voostack.com/s/solcreek
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
