npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

nest-auth-prisma-mcp

v1.0.0

Published

MCP server to scaffold a cloud-agnostic NestJS JWT auth backend with Prisma. Deployment is intentionally out of scope.

Readme

nest-auth-prisma-mcp

🚀 MCP server to scaffold a cloud-agnostic NestJS JWT auth backend with Prisma.

Built for vibe coders using Claude Code. Stop writing auth boilerplate, ship a production-shaped backend in seconds — then deploy it anywhere with the tool of your choice.

What is this?

An MCP (Model Context Protocol) server that gives Claude Code one focused capability:

  1. Scaffold a complete NestJS JWT authentication backend with Prisma.

That's it. No deployment. Deployment is intentionally out of scope — pair this MCP with a separate deployment MCP (Cloud Run, ECS, Container Apps, fly.io, etc.), a Skill, or your own CI/CD pipeline.

Why "Prisma-only"?

Earlier versions of this MCP supported an in-memory demo mode and bundled deployment to Google Cloud Run. To keep the surface small and the output reproducible across cloud providers, this version generates a single shape: NestJS + Prisma + PostgreSQL, packaged in a cloud-agnostic Dockerfile.

If you need an in-memory demo, set up a local PostgreSQL with Docker and point DATABASE_URL at it.

Quick Start

1. Install

npm install -g nest-auth-prisma-mcp

2. Configure your project

Create a .env file in your project root:

# Required
DATABASE_URL=postgresql://user:pass@host:5432/database

# Recommended
JWT_SECRET=your-super-secret-key-min-32-chars

3. Add to Claude Code

claude mcp add --transport stdio nest-auth-prisma -- npx nest-auth-prisma-mcp

Or with a full path:

claude mcp add --transport stdio nest-auth-prisma -- node /path/to/node_modules/nest-auth-prisma-mcp/dist/index.js

4. Use it

In Claude Code, just ask:

"Check if I have everything needed to scaffold an auth backend"

"Create a new auth API in ./my-api"

Available Tools

check_prereqs

Verifies your local setup:

  • Node.js 18+ installed
  • DATABASE_URL is set in .env
  • JWT_SECRET is set in .env (recommended)

This tool is cloud-agnostic — no gcloud, aws, or az checks.

init

Scaffolds a complete NestJS auth backend with:

  • JWT authentication (/auth/register, /auth/login, /auth/me)
  • Health check endpoint (/health)
  • Prisma + PostgreSQL (User model, db push / migrate dev ready)
  • Cloud-agnostic multi-stage Dockerfile
  • Strict TypeScript configuration

Parameters:

  • targetDir (required): where to create the project
  • appName (optional): name for package.json (default: nest-auth-api)
  • port (optional): default HTTP port (default: 3000)

Configuration

All configuration is read from .env in your current working directory:

| Variable | Required | Description | |-----------------|----------|-------------------------------------------------| | DATABASE_URL | Yes | PostgreSQL connection string | | JWT_SECRET | No | JWT signing secret (a placeholder is used otherwise — unsafe in prod) |

Compatible PostgreSQL providers (anything that speaks Postgres works):

  • Neon, Supabase, Railway, Render, Vercel Postgres
  • Google Cloud SQL, AWS RDS, Azure Database for PostgreSQL
  • Self-hosted PostgreSQL, Docker Compose, etc.

Generated Project — Deployment Notes

The scaffolded project is cloud-agnostic. The provided Dockerfile is a multi-stage build that produces an image runnable on any container host:

  • Google Cloud Run
  • AWS ECS, App Runner, Elastic Beanstalk
  • Azure Container Apps, Azure App Service
  • Fly.io, Render, Railway, DigitalOcean App Platform
  • Kubernetes (GKE, EKS, AKS, k3s, …)

The container honours the PORT environment variable, so the hosting platform can inject its own port.

Prerequisites

  • Node.js 18+
  • PostgreSQL (any provider) reachable from where you'll run the generated app

That's it. No cloud SDK is required to use this MCP.

Example Workflow

# 1. Create project directory
mkdir my-project && cd my-project

# 2. Create .env
cat > .env << EOF
DATABASE_URL=postgresql://user:[email protected]:5432/postgres
JWT_SECRET=$(openssl rand -hex 32)
EOF

# 3. Open Claude Code
claude

# 4. Ask Claude:
# "Check prereqs, then scaffold an auth API in ./api"
#
# 5. Deployment is then handled by your preferred tool — a separate MCP,
#    a Skill, or your own pipeline.

Logs

The MCP server logs to stderr (required for STDIO transport).

Troubleshooting

"DATABASE_URL is required"

This MCP only generates a Prisma-backed backend. Set DATABASE_URL in .env in your current working directory before calling init.

"Directory already exists and is not empty"

Pick a different targetDir, or delete the existing one. The scaffold refuses to overwrite existing files to protect your work.

Contributing

Issues and PRs welcome.

License

MIT © DjioniDev