prisma-mongodb-upgrade
Skill77 starsChanged 3 months agoMITView on GitHub
Decision and migration guide for Prisma ORM MongoDB projects on v6, which have no upgrade path to v7. Use when a MongoDB project asks about upgrading Prisma, when "upgrade to prisma 7" comes up in a project with provider = "mongodb", or when evaluating a move to Prisma 8. Triggers on "upgrade prisma mongodb", "prisma 7 mongodb", "mongodb prisma migration", "prisma 8 mongodb".
We split this skill into the rules it gives an agent
3 rules. 1 is common, 0 are distinctive, and 2 are very specific to this project.
1
Common
Most of the 4 edited versions we read keep these.
0
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 23
Never advise a MongoDB project to "upgrade to Prisma 7".
- Common: line 25
Never solve the version question by rewriting the app onto a SQL database.
- Very specific: line 64
Keep the classic v6 MongoDB setup: url = env("DATABASE_URL") in the schema, db push workflow, no SQL driver adapters (see prisma-orm-setup …
“Common” is measured: kept by at least 6 in 10 of the 4 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Prisma MongoDB Upgrade Path
MongoDB projects are the one Prisma cohort with no road into Prisma 7: v6 is the terminal classic-ORM major for MongoDB, and v7 never ships a MongoDB connector. The successor path is Prisma 8, where MongoDB support is in Early Access while PostgreSQL is a release candidate. The official Prisma ORM 6 to 8 (MongoDB) guide is the source of truth for the migration steps. This skill frames the real decision — migrate to Prisma 8 (the encouraged path), or stay on v6 where a hard blocker applies — and carries the migration mechanics.
Never do either of these:
- Never advise a MongoDB project to "upgrade to Prisma 7". The connector does not exist
there. The
prisma-upgrade-v7guide does not apply to MongoDB projects. - Never solve the version question by rewriting the app onto a SQL database. Changing the database engine is a separate, much larger decision that is not yours to make implicitly.
The version landscape
| Version | MongoDB status |
| Prisma ORM v6 | Fully supported (mongodb provider); latest 6.x is the current stable path; maintenance line |
| Prisma ORM v7 | No MongoDB connector — not an option, ever |
| Prisma 8 | MongoDB support in Early Access through @prisma/orm-mongo; still changes between release candidates — the successor path for MongoDB projects |
The decision, up front
Migrating to Prisma 8 is the encouraged path. MongoDB support in Prisma 8 is Early Access: functional and moving quickly — and the Prisma team wants MongoDB users to migrate early and share feedback. The migration mechanics are detailed in the references.
Staying on the latest v6 remains a legitimate choice where a hard blocker applies —
stated plainly: Prisma 8 has no MongoDB transaction method yet (multi-document writes use
the mongodb driver's sessions directly), and MongoDB behavior can still change between
Prisma 8 release candidates.
Decision table
| Signal | Direction |
| No blockers below apply | Migrate to Prisma 8; run the verify-cutover-checklist and share feedback with the Prisma team |
| Greenfield / prototype / internal tool | Migrate to Prisma 8 |
Codebase uses multi-document transactions ($transaction) — check with grep, do not ask | Plan raw-driver session equivalents first (see client-api-mapping), or stay on v6 until Prisma 8 adds a MongoDB transaction method |
| Team cannot absorb breaking changes between release candidates | Stay on v6 until MongoDB support leaves Early Access |
| Risk-averse but interested | Point Prisma 8 at the v6 schema with prisma6Schema(...) (see schema-contract-mapping), rehearse on a copy (see verify-cutover-checklist), then migrate |
Note: this section will be updated when Prisma 8 adds a MongoDB transaction method.
If staying on v6: hygiene (a deliberate stay, not neglect)
- Pin the Prisma packages to the latest 6.x line and keep taking 6.x patch releases.
- Track Prisma release notes and security advisories for the 6.x line.
- Keep the classic v6 MongoDB setup:
url = env("DATABASE_URL")in the schema,db pushworkflow, no SQL driver adapters (seeprisma-orm-setupfor the v6 MongoDB shape). - Re-evaluate when Prisma 8's MongoDB support leaves Early Access, or when the blockers are resolved.
Reference files
| Reference | What it covers |
references/decision-stay-or-migrate.md | The full decision framing, blocker checks, and stay-hygiene detail |
references/schema-contract-mapping.md | v6 schema (mongodb provider, @db.ObjectId, composite types) → Prisma 8 contract concepts |
references/client-api-mapping.md | v6 client calls → Prisma 8 equivalents, incl. raw escape hatches and transactions — names map, parity does not |
references/migrations-mapping.md | v6 db push-only story → Prisma 8's plan/migrate/verify/sign flow |
references/verify-cutover-checklist.md | No-data-moves verification: same DB, index parity, staged round-trip before cutover |
Verified against
Prisma 8 claims in this skill were checked against the
Prisma ORM 6 to 8 (MongoDB) guide,
written for @prisma/orm-mongo 8.0.0-rc.13, and the prisma-8 skill in
prisma/orm at commit
75c1460515fa2f11971533f6a1dec5dab35d4123. MongoDB support still changes between release
candidates: before acting on any Prisma 8 claim, check the installed version
(npm ls @prisma/orm-mongo) and its synced prisma-8 skill.
Prisma 8 on MongoDB requires Node.js 22.18+ (24.11+ on the 24 line; 24 recommended),
TypeScript 5.9+, MongoDB 8.0+, and mongodb@7 as a peer dependency. The mongodb@7 driver
no longer accepts AWS credentials in the connection string.
Hand-off rule
This skill is the discovery bridge, not a replacement for Prisma 8's own
documentation. After a project switches to Prisma 8, run prisma skills sync, read the
synced prisma-8/SKILL.md, and follow it for day-to-day work — do not keep working from
this skill's summaries.
Other versions4 projects use a version of this.
Word for word · 0
None found.
Edited · 4
- kajalsanwalll/skillsetu★ 460% same
- GalvanMoto/Personal_OS★ 260% same
- gerald-donkor/poli-intel★ 160% same
- basedhound/opensource-llm-arena_next★ 060% same
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository11 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- prisma-client-apiSkill
- prisma-cliSkill
- prisma-computeSkill
- prisma-database-setupSkill
- prisma-driver-adapter-implementationSkill
- prisma-orm-setupSkill
- prisma-postgres-setupSkill
- prisma-postgresSkill
- prisma-upgrade-v7Skill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

