
Claimable Postgres
Spin up a throwaway Postgres DATABASE_URL in seconds for demos, agent scripts, or tests without Neon signup or a credit card.
Install
npx skills add https://github.com/neondatabase/agent-skills --skill claimable-postgresWhat is this skill?
- REST POST to neon.new/api/v1/database returns connection_string and claim_url with no login
- CLI via npx neon-new writes DATABASE_URL to .env in one step
- SDK and Vite plugin paths for scripted and frontend-local provisioning
- 72-hour expiry unless claimed to a Neon account
- Triggers on quick postgres, temporary postgres, instant DATABASE_URL, and neon.new API
Adoption & trust: 992 installs on skills.sh; 68 GitHub stars; 2/3 security scanners passed (skills.sh audits).
Recommended Skills
Supabase Postgres Best Practicessupabase/agent-skills
Lark Baselarksuite/cli
Convex Migration Helperget-convex/agent-skills
Neon Postgresneondatabase/agent-skills
Firebase Firestore Standardfirebase/agent-skills
Postgresql Table Designwshobson/agents
Journey fit
Primary fit
Validate is where you prove ideas with quick prototypes; instant DB URLs remove friction before committing to production data stores. Prototype subphase fits ephemeral environments and spike work rather than long-lived production infra.
Common Questions / FAQ
Is Claimable Postgres safe to install?
skills.sh reports 2 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.
SKILL.md
READMESKILL.md - Claimable Postgres
# Claimable Postgres Instant Postgres databases for local development, demos, prototyping, and test environments. No account required. Databases expire after 72 hours unless claimed to a Neon account. ## Quick Start ```bash curl -s -X POST "https://neon.new/api/v1/database" \ -H "Content-Type: application/json" \ -d '{"ref": "agent-skills"}' ``` Parse `connection_string` and `claim_url` from the JSON response. Write `connection_string` to the project's `.env` as `DATABASE_URL`. For other methods (CLI, SDK, Vite plugin), see [Which Method?](#which-method) below. ## Which Method? - **REST API**: Returns structured JSON. No runtime dependency beyond `curl`. Preferred when the agent needs predictable output and error handling. - **CLI** (`npx neon-new@latest --yes`): Provisions and writes `.env` in one command. Convenient when Node.js is available and the user wants a simple setup. - **SDK** (`neon-new/sdk`): Scripts or programmatic provisioning in Node.js. - **Vite plugin** (`vite-plugin-neon-new`): Auto-provisions on `vite dev` if `DATABASE_URL` is missing. Use when the user has a Vite project. - **Browser**: User cannot run CLI or API. Direct to https://neon.new. ## REST API **Base URL:** `https://neon.new/api/v1` ### Create a database ```bash curl -s -X POST "https://neon.new/api/v1/database" \ -H "Content-Type: application/json" \ -d '{"ref": "agent-skills"}' ``` | Parameter | Required | Description | | ---------------------------- | -------- | --------------------------------------------------------------------------------------------------------------------- | | `ref` | Yes | Tracking tag that identifies who provisioned the database. Use `"agent-skills"` when provisioning through this skill. | | `enable_logical_replication` | No | Enable logical replication (default: false, cannot be disabled once enabled) | The `connection_string` returned by the API is a pooled connection URL. For a direct (non-pooled) connection (e.g. Prisma migrations), remove `-pooler` from the hostname. The CLI writes both pooled and direct URLs automatically. **Response:** ```json { "id": "019beb39-37fb-709d-87ac-7ad6198b89f7", "status": "UNCLAIMED", "neon_project_id": "gentle-scene-06438508", "connection_string": "postgresql://...", "claim_url": "https://neon.new/claim/019beb39-...", "expires_at": "2026-01-26T14:19:14.580Z", "created_at": "2026-01-23T14:19:14.580Z", "updated_at": "2026-01-23T14:19:14.580Z" } ``` ### Check status ```bash curl -s "https://neon.new/api/v1/database/{id}" ``` Returns the same response shape. Status transitions: `UNCLAIMED` -> `CLAIMING` -> `CLAIMED`. After the database is claimed, `connection_string` returns `null`. ### Error responses | Condition | HTTP | Message | | ---------------------- | ---- | -------------------------------- | | Missing or empty `ref` | 400 | `Missing referrer` | | Invalid database ID | 400 | `Database not found` | | Invalid JSON body | 500 | `Failed to create the database.` | ## CLI ```bash npx neon-new@latest --yes ``` Provisions a database and writes the connection string to `.env` in one step. Always use `@latest` and `--yes` (skips