skills/claimable-postgres/SKILL.md
Provision instant temporary Postgres databases via Claimable Postgres by Neon (pg.new). No login or credit card required. Use for quick Postgres environments and throwaway DATABASE_URL for prototyping.
npx skillsauth add Regtransfers/agency-agents-mcp claimable-postgresInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
@ 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
curl -s -X POST "https://pg.new/api/v1/database" \
-H "Content-Type: application/json" \
-d '{"ref": "agent-skills"}'
Parse connectionstring and claimurl from the JSON response. Write connectionstring to the project's.env as DATABASEURL.
For other methods (CLI, SDK, Vite plugin), see Which Method? below.
@ Which Method?
@ REST API
Base URL: https://pg.new/api/v1
@ Create a database
curl -s -X POST "https://pg.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. enablelogicalreplication; 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:
{
"id": "019beb39-37fb-709d-87ac-7ad6198b89f7",
"status": "UNCLAIMED",
"neon_project_id": "gentle-scene-06438508",
"connection_string": "postgresql://...",
"claim_url": "https://pg.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
curl -s "https://pg.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
npx get-db@latest --yes
Provisions a database and writes the connection string to.env in one step. Always use @latest and --yes (skips interactive prompts that would stall the agent).
@ Pre-run Check
Check if DATABASE_URL (or the chosen key) already exists in the target.env. The CLI exits without provisioning if it finds the key.
If the key exists, offer the user three options:
Get confirmation before proceeding.
@ Options
Option; Alias; Description; Default
--yes; -y; Skip prompts, use defaults; false --env; -e;.env file path;./.env --key; -k; Connection string env var key; DATABASE_URL --prefix; -p; Prefix for generated public env vars; PUBLIC_ --seed; -s; Path to seed SQL file; none --logical-replication; -L; Enable logical replication; false --ref; -r; Referrer id (use agent-skills when provisioning through this skill); none
Alternative package managers: yarn dlx get-db@latest, pnpm dlx get-db@latest, bunx get-db@latest, deno run -A get-db@latest.
@ Output
The CLI writes to the target.env:
DATABASE_URL=postgresql://... # pooled (use for application queries)
DATABASE_URL_DIRECT=postgresql://... # direct (use for migrations, e.g. Prisma)
PUBLIC_POSTGRES_CLAIM_URL=https://pg.new/claim/...
@ SDK
Use for scripts and programmatic provisioning flows.
import { instantPostgres } from 'get-db';
const { databaseUrl, databaseUrlDirect, claimUrl, claimExpiresAt } = await instantPostgres({
referrer: 'agent-skills',
seed: { type: 'sql-script', path: './init.sql' },
});
Returns databaseUrl (pooled), databaseUrlDirect (direct, for migrations), claimUrl, and claimExpiresAt (Date object). The referrer parameter is required.
@ Vite Plugin
For Vite projects, vite-plugin-db auto-provisions a database on vite dev if DATABASE_URL is missing. Install with npm install -D vite-plugin-db. See the Claimable Postgres docs for configuration.
@ Agent Workflow
@ API path
psql "$DATABASE_URL" -f seed.sql
@ CLI path
npx get-db@latest --yes --ref agent-skills --env .env.local --seed ./schema.sql
@ Output Checklist
Always report:
@ Claiming
Claiming is optional. The database works immediately without it. To optionally claim, the user opens the claim URL in a browser, where they sign in or create a Neon account to claim the database.
Users cannot claim into Vercel-linked orgs; they must choose another Neon org.
@ Defaults and Limits
Parameter; Value
Provider; AWS Region; us-east-2 Postgres; 17
Region cannot be changed for claimable databases. Unclaimed databases have stricter quotas. Claiming resets limits to free plan defaults.
Unclaimed; Claimed (Free plan)
Storage; 100 MB; 512 MB Transfer; 1 GB; ~5 GB Branches; No; Yes Expiration; 72 hours; None
@ Auto-provisioning
If the agent needs a database to fulfill a task (e.g. "build me a todo app with a real database") and the user has not provided a connection string, provision one via the API and inform the user. Include the claim URL so they can keep it.
@ Safety and UX Notes
@ When to Use Use this skill when tackling tasks related to its primary domain or functionality as described above.
@ Limitations
tools
Build AI agents that interact with computers like humans do - viewing screens, moving cursors, clicking buttons, and typing text. Covers Anthropic's Computer Use, OpenAI's Operator/CUA, and open-source alternatives.
testing
Generate structured PR descriptions from diffs, add review checklists, risk assessments, and test coverage summaries. Use when the user says "write a PR description", "improve this PR", "summarize my changes", "PR review", "pull request", or asks to document a diff for reviewers.
tools
Use when working with comprehensive review full review
development
You are an expert in creating competitor comparison and alternative pages. Your goal is to build pages that rank for competitive search terms, provide genuine value to evaluators, and position your product effectively.