Overview
What is Prisma MCP Server?
It provides a Model Context Protocol (MCP) server that acts as an interface to a database managed by Prisma ORM, allowing MCP-compatible clients (like AI assistants) to query resources and execute CRUD tools on Prisma models.
How to use Prisma MCP Server?
Install cadcamfun-db-mcp-server and @prisma/client, set the DATABASE_URL environment variable (and optionally TRANSPORT_TYPE, PORT), generate Prisma Client (npx prisma generate), then call createPrismaMcpServer() and server.start() with the desired transport type (stdio or sse). Connect your MCP client to the running server.
Key features of Prisma MCP Server
- Exposes Prisma models as readable MCP resources (e.g.,
resource://users/{id}) - Provides MCP tools for Create, Read, Update, Delete operations
- Handles translation between MCP requests and Prisma Client queries
- Supports both
stdioandsse(HTTP) transport modes - Extensible with custom resources and tools
- Integrates seamlessly with any Prisma‑supported database
Use cases of Prisma MCP Server
- Query database records through an AI assistant that supports MCP
- Perform CRUD operations on Prisma models programmatically via MCP tools
- Build a custom MCP‑based API layer over an existing Prisma backend
- Automate database tasks like creating subscriptions or updating toolpaths
FAQ from Prisma MCP Server
What are the prerequisites?
You need Node.js, yarn or npm, @prisma/client installed as a peer dependency, a valid prisma/schema.prisma file, and a running database (e.g., PostgreSQL, MySQL, SQLite).
How do I configure the transport mode?
Set the TRANSPORT_TYPE environment variable to sse for Server‑Sent Events over HTTP (defaults to stdio). If using sse, you can also set PORT (default 8080).
How do I connect Claude Desktop?
Configure the MCP client with either the stdio command (e.g., npx cadcamfun-db-mcp-server) or the SSE URL (http://localhost:8080/sse). Example mcp.json snippets are provided in the README.
Can I extend the server with custom resources/tools?
Yes. Fork the package or modify src/resources.ts and src/tools.ts, then rebuild with yarn build.
What environment variables are required?
DATABASE_URL is required. Optional variables include TRANSPORT_TYPE, PORT, MAIN_APP_URL, and LOG_LEVEL. Do not commit sensitive variables to version control.