Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,11 @@ date: "2025-05-07"
authors:
- "Nikolas Burk"
metaTitle: "About MCP Servers & How We Built One for Prisma"
metaImagePath: "/blog/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/meta-c7ef9462464563ecc68ddf667e18dbef71f9f4fd-1266x711.png"
heroImagePath: "/blog/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/hero-af7a5b40501028b64219b2144f7b5c03723c4d99-844x474.svg"
metaImagePath: "/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/meta-c7ef9462464563ecc68ddf667e18dbef71f9f4fd-1266x711.png"
heroImagePath: "/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/hero-af7a5b40501028b64219b2144f7b5c03723c4d99-844x474.svg"
tags:
- "education"
- "orm"
excerpt: |
Learn how MCP works by following the practical example of how we built the Prisma MCP server, including the tradeoffs between local and remote MCP servers, the `@modelcontextprotocol/sdk` package, and how we enabled LLMs to use the Prisma CLI.

Expand Down Expand Up @@ -42,7 +45,7 @@ In such scenarios, an LLM needs additional capabilities to interact with the "ou

LLM providers have responded to this need by implementing so-called _tool_ access. Individual providers use different names for it: OpenAI calls it [function calling](https://platform.openai.com/docs/guides/function-calling?api-mode=responses), Anthropic refers to it as [tool use](https://docs.anthropic.com/en/docs/build-with-claude/tool-use/overview), and others use terms like "plugins" or "actions."

![](/blog/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/5a5b498ea72ab4a0969ed268408ef95d6f301d53-2888x1372.png)
![](/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/5a5b498ea72ab4a0969ed268408ef95d6f301d53-2888x1372.png)

This approach was messy because each LLM had a different interface for interacting with tools.

Expand Down Expand Up @@ -99,7 +102,7 @@ In November 2024, [Anthropic introduced the Model Context Protocol](https://www.

MCP provides a universal, open standard for connecting AI systems with external data sources. All LLMs that implement the MCP protocol can now access the same functionality if it's exposed through an MCP server.

![](/blog/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/cbb0879b85e332bad731a1ca4c514d7c66ea9616-2888x1372.png)
![](/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/cbb0879b85e332bad731a1ca4c514d7c66ea9616-2888x1372.png)

Returning to the previous example: With MCP, you only need to implement the invoice search functionality _once_. You can then expose it via an MCP server to all LLMs that support the MCP protocol. Here's a pseudocode implementation:

Expand All @@ -124,7 +127,7 @@ await server.connect(transport);
```
Anthropic clearly struck a chord with this standard. If you were on X at the time, you probably saw multiple MCP posts a day. Google Trends for "MCP" tell the same story:

![](/blog/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/03cc8051d3cdfcabcb6037fcb5fbe1d33856fc99-1816x1400.png)
![](/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/03cc8051d3cdfcabcb6037fcb5fbe1d33856fc99-1816x1400.png)

### How to connect an LLM to an MCP server

Expand Down Expand Up @@ -167,15 +170,15 @@ Before MCP, we would have had to implement support separately for each LLM. With

When introducing MCP, Anthropic released SDKs for various languages. The TypeScript SDK lives in the [`typescript-sdk`](https://github.com/modelcontextprotocol/typescript-sdk) repository and provides everything needed to implement MCP clients and servers.

![](/blog/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/e7b3db57367968f0458172fb2f8bfa532b82f7ed-2068x1600.png)
![](/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/e7b3db57367968f0458172fb2f8bfa532b82f7ed-2068x1600.png)

### Local vs. remote MCP servers

When building an MCP server, you must decide if it runs _locally_ (on the same machine as the user) or _remotely_ (on a machine accessible via the internet).

This depends on what the server does. If it needs access to the user's file system, it must run locally. If it just calls APIs, it can be local or remote (because an API can be called both from a local and remote machine).

![](/blog/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/39eadb7214d14e787cf74adbcbd9940f6cdb4ae2-2888x2644.png)
![](/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/39eadb7214d14e787cf74adbcbd9940f6cdb4ae2-2888x2644.png)

In the case of Prisma, the LLM primarily needs access to the Prisma CLI in order to support developers with database-related workflows. The Prisma CLI may connect to a local or a remote database instance. However, because the CLI commands are executed locally, the Prisma MCP server also must be local.

Expand Down Expand Up @@ -305,7 +308,7 @@ Or check out our [docs](https://www.prisma.io/docs/postgres/integrations/mcp-ser

Once added, your AI tool will show the MCP server's status and available tools. Here's how it looks in Cursor:

![](/blog/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/1a9c595ed52f76150075536f39a1d00a014da6b1-1950x1240.png)
![](/about-mcp-servers-and-how-we-built-one-for-prisma/imgs/1a9c595ed52f76150075536f39a1d00a014da6b1-1950x1240.png)

## Beyond MCP: New capabilities for Prisma users in VS Code

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,12 @@ authors:
- "Sam Bhatti"
metaTitle: "Prisma Accelerate now in General Availability"
metaDescription: "Supercharge your applications with Prisma Accelerate's scalable connection pooling and global edge caching. Plus, enjoy our exclusive launch offer."
metaImagePath: "/blog/accelerate-ga-release-i9cqm6bsf2g6/imgs/meta-42554fa75736c00b0ca55e1e440dde26f43dcb3f-1266x711.png"
heroImagePath: "/blog/accelerate-ga-release-i9cqm6bsf2g6/imgs/hero-de83f5f843f2a86abd05659c94c3069e7577a0f5-844x474.svg"
metaImagePath: "/accelerate-ga-release-i9cqm6bsf2g6/imgs/meta-42554fa75736c00b0ca55e1e440dde26f43dcb3f-1266x711.png"
heroImagePath: "/accelerate-ga-release-i9cqm6bsf2g6/imgs/hero-de83f5f843f2a86abd05659c94c3069e7577a0f5-844x474.svg"
heroImageAlt: "Prisma Accelerate now in General Availability"
tags:
- "announcement"
- "data-platform"
excerpt: |
Now in General Availability: Dive into [Prisma Accelerate](https://pris.ly/accelerate-blog), enhancing global database connections with connection pooling and edge caching for fast data access.

Expand Down
6 changes: 4 additions & 2 deletions apps/blog/content/blog/accelerate-ipv6-first/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,10 @@ authors:
- "Tyler Benfield"
metaTitle: "We Transitioned Prisma Accelerate to IPv6 Without Anyone Noticing"
metaDescription: "In July 2023, AWS announced the decision to begin charging for IPv4 addresses beginning in February 2024. This move had a major impact on Prisma Accelerate for reasons we’ll get into, prompting us to go all-in on IPv6. Join us for a deep dive into how we approached our IPv6 migration, lessons learned, and the outcome for users of Prisma Accelerate."
metaImagePath: "/blog/accelerate-ipv6-first/imgs/meta-b5bac6d735ee17d003b0a06190a5fa5c0e3fcc15-1266x713.png"
heroImagePath: "/blog/accelerate-ipv6-first/imgs/hero-248d5719caeee73ee2c7f94a7d194de949af1524-844x475.svg"
metaImagePath: "/accelerate-ipv6-first/imgs/meta-b5bac6d735ee17d003b0a06190a5fa5c0e3fcc15-1266x713.png"
heroImagePath: "/accelerate-ipv6-first/imgs/hero-248d5719caeee73ee2c7f94a7d194de949af1524-844x475.svg"
tags:
- "data-platform"
excerpt: |
In July 2023, [AWS announced](https://aws.amazon.com/blogs/aws/new-aws-public-ipv4-address-charge-public-ip-insights/) the decision to begin charging for IPv4 addresses beginning in February 2024. This move had a major impact on [Prisma Accelerate](https://www.prisma.io/data-platform/accelerate) for reasons we’ll get into, prompting us to go all-in on IPv6. Join us for a deep dive into how we approached our IPv6 migration, lessons learned, and the outcome for users of Prisma Accelerate.
---
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,12 @@ authors:
- "Ankur Datta"
metaTitle: "Accelerate in Preview: Global Database Cache & Scalable Connection Pool"
metaDescription: "Accelerate is going into Preview! Learn how to enable high-speed, scalable applications with a global cache and connection pooler."
metaImagePath: "/blog/accelerate-preview-release-ab229e69ed2/imgs/meta-3a75c0ed5f8837980765d5b7589367216653d6b7-1266x711.png"
heroImagePath: "/blog/accelerate-preview-release-ab229e69ed2/imgs/hero-587aeef34568af2258cd4e5f0453710b0b94259c-844x474.svg"
metaImagePath: "/accelerate-preview-release-ab229e69ed2/imgs/meta-3a75c0ed5f8837980765d5b7589367216653d6b7-1266x711.png"
heroImagePath: "/accelerate-preview-release-ab229e69ed2/imgs/hero-587aeef34568af2258cd4e5f0453710b0b94259c-844x474.svg"
heroImageAlt: "Accelerate in Preview"
tags:
- "announcement"
- "data-platform"
excerpt: |
[Prisma Accelerate](https://www.prisma.io/data-platform/accelerate) is now available to everyone in Preview! Make your application faster with our powerful global cache and scalable connection pooler. [Get started now](https://pris.ly/pdp), and let us know what you think.
Expand Down
19 changes: 11 additions & 8 deletions apps/blog/content/blog/accelerate-static-ip-support/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,12 @@ authors:
- "Ankur Datta"
metaTitle: "Increase Database Security With Static IP Support in Prisma Accelerate"
metaDescription: "Prisma Accelerate now supports Static IPs, ensuring secure database connections with predictable IPs for controlled access."
metaImagePath: "/blog/accelerate-static-ip-support/imgs/meta-9a5f27696242c051a689abed3d4b7099a8145301-1200x674.png"
heroImagePath: "/blog/accelerate-static-ip-support/imgs/hero-06da453a2597f2571d34972ec912ad3c32f37ba6-844x474.svg"
metaImagePath: "/accelerate-static-ip-support/imgs/meta-9a5f27696242c051a689abed3d4b7099a8145301-1200x674.png"
heroImagePath: "/accelerate-static-ip-support/imgs/hero-06da453a2597f2571d34972ec912ad3c32f37ba6-844x474.svg"
heroImageAlt: "Enable Static IP in Prisma Accelerate"
tags:
- "announcement"
- "data-platform"
excerpt: |
[Prisma Accelerate](https://www.prisma.io/data-platform/accelerate) introduces Static IP support, enabling secure connections to your database with predictable IPs for controlled access and minimized exposure. This allows connections from Accelerate to databases requiring trusted IP access.
---
Expand All @@ -29,21 +32,21 @@ By layering these defenses, you can better protect your database from various ty

To add one layer of these security measures, you can restrict database access from the public internet by configuring firewalls and IP allowlists to limit access to trusted IP addresses. It becomes possible if the IP addresses that require access to your database are static IP addresses.

![Access request to your database from unauthorized IP](/blog/accelerate-static-ip-support/imgs/150247eeac00c5b575e06024aec82d5bf08eb57e-2960x1406.png)
![Access request to your database from unauthorized IP](/accelerate-static-ip-support/imgs/150247eeac00c5b575e06024aec82d5bf08eb57e-2960x1406.png)

A static IP address is an IPv4 or an IPv6 address that doesn’t change. Unlike dynamic IP addresses, which can change unpredictably, traffic from static IP addresses are easier to identify.

![Dynamic vs Static IP](/blog/accelerate-static-ip-support/imgs/14f0c87eaa0bb42137006d8f8b0ad16b23ac648b-2960x988.png)
![Dynamic vs Static IP](/accelerate-static-ip-support/imgs/14f0c87eaa0bb42137006d8f8b0ad16b23ac648b-2960x988.png)

Using static IP addresses benefits managing and securing traffic by allowing you to configure your network firewalls or set up IP allowlisting to restrict access to your resources from specific IP addresses that don’t change.

Enabling static IP within your Prisma Accelerate configuration in a project environment allows using Accelerate with databases that have IP allowlisting enabled.

![Allow Accelerate](/blog/accelerate-static-ip-support/imgs/5fba5bb200c4418e360b6a4114e3a0d3c16d7fab-791x344.png)
![Allow Accelerate](/accelerate-static-ip-support/imgs/5fba5bb200c4418e360b6a4114e3a0d3c16d7fab-791x344.png)

You can add the Accelerate static IP address in the database firewall IP allowlist or permit access to the IP address within your private network. This ensures that Accelerate can securely access your database while other unauthorized requests to your database are denied.

![Allow accelerate traffic and deny unknown traffic](/blog/accelerate-static-ip-support/imgs/d1f333f72a4431083fafc0eb1f25ba8c3c7203b6-1480x703.png)
![Allow accelerate traffic and deny unknown traffic](/accelerate-static-ip-support/imgs/d1f333f72a4431083fafc0eb1f25ba8c3c7203b6-1480x703.png)

## Enable static IP in Prisma Accelerate

Expand All @@ -54,10 +57,10 @@ To enable static IP support for Accelerate within your existing or new project e
Users can opt-in to using static IP in the Platform Console in two ways:

1. When enabling Accelerate for your project environment, opt-in to static IP after specifying your database connection string and connection pool region.
![Enable static IP when enabling Accelerate](/blog/accelerate-static-ip-support/imgs/970ae13572758d9962b6cc0b72b7e5a8c1af341b-2978x1976.png)
![Enable static IP when enabling Accelerate](/accelerate-static-ip-support/imgs/970ae13572758d9962b6cc0b72b7e5a8c1af341b-2978x1976.png)

2. For projects already using Accelerate, enable static IP by navigating to Accelerate settings in your project environment.
![Enable static IP when updating Accelerate configuration](/blog/accelerate-static-ip-support/imgs/3be45327e6177e94ffb2739a1face51226c6ce5f-2572x1570.png)
![Enable static IP when updating Accelerate configuration](/accelerate-static-ip-support/imgs/3be45327e6177e94ffb2739a1face51226c6ce5f-2572x1570.png)

After you enable static IP within your Prisma Accelerate configuration, you’ll see a list of IPv4 and IPv6 addresses , which you will use to allow Accelerate traffic to your database.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,11 @@ authors:
- "Nikolas Burk"
metaTitle: "Advanced Database Schema Management with Atlas & Prisma ORM"
metaDescription: "Atlas is a powerful data modeling and migrations tool enabling advanced DB schema management workflows, like CI/CD, schema monitoring, versioning, and more."
metaImagePath: "/blog/advanced-database-schema-management-with-atlas-and-prisma-orm/imgs/meta-862a4191726cfb1bcc2e53bc83e377e1af47cd5d-1200x675.png"
heroImagePath: "/blog/advanced-database-schema-management-with-atlas-and-prisma-orm/imgs/hero-6ad0def91299fbf2a745f528d83a194350d0ee74-844x475.svg"
metaImagePath: "/advanced-database-schema-management-with-atlas-and-prisma-orm/imgs/meta-862a4191726cfb1bcc2e53bc83e377e1af47cd5d-1200x675.png"
heroImagePath: "/advanced-database-schema-management-with-atlas-and-prisma-orm/imgs/hero-6ad0def91299fbf2a745f528d83a194350d0ee74-844x475.svg"
tags:
- "orm"
- "education"
excerpt: |
[Atlas](https://atlasgo.io/) is a powerful migration tool that enables advanced database schema management workflows, like CI/CD, schema monitoring, versioning, and more. Learn how to use Atlas together with Prisma ORM and make use of Atlas' capabilities by using low-level database features.
---
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ date: "2017-11-07"
authors:
- "Nikolas Burk"
metaTitle: "All you need to know about Apollo Client 2 | Prisma"
metaImagePath: "/blog/all-you-need-to-know-about-apollo-client-2-7e27e36d62fd/imgs/hero-ebd9548e6d9cfb33c4e35eac48e11a80532a8d30-1440x960.jpg"
heroImagePath: "/blog/all-you-need-to-know-about-apollo-client-2-7e27e36d62fd/imgs/hero-ebd9548e6d9cfb33c4e35eac48e11a80532a8d30-1440x960.jpg"
metaImagePath: "/all-you-need-to-know-about-apollo-client-2-7e27e36d62fd/imgs/hero-ebd9548e6d9cfb33c4e35eac48e11a80532a8d30-1440x960.jpg"
heroImagePath: "/all-you-need-to-know-about-apollo-client-2-7e27e36d62fd/imgs/hero-ebd9548e6d9cfb33c4e35eac48e11a80532a8d30-1440x960.jpg"
heroImageAlt: "All you need to know about Apollo Client 2"
excerpt: |
Apollo Client, a powerful and flexible GraphQL client library, just reached version 2.0. In this post, we want to
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,11 @@ authors:
- "Nikolas Burk"
metaTitle: "Announcing the Prisma Ambassador Program — Building A Community of Experts"
metaDescription: "We are thrilled to announce the launch of the Ambassador Program to empower the Prisma community, while also helping individual contributors build their own brand."
metaImagePath: "/blog/ambassador-program-nxkwgcgnuvfx/imgs/meta-de28b5e0df55c52078065ee2ae0b44d6cdf0da1e-1692x852.png"
heroImagePath: "/blog/ambassador-program-nxkwgcgnuvfx/imgs/hero-1bdf6237d95ded8d448f28db203012147fdcd39e-846x426.png"
metaImagePath: "/ambassador-program-nxkwgcgnuvfx/imgs/meta-de28b5e0df55c52078065ee2ae0b44d6cdf0da1e-1692x852.png"
heroImagePath: "/ambassador-program-nxkwgcgnuvfx/imgs/hero-1bdf6237d95ded8d448f28db203012147fdcd39e-846x426.png"
heroImageAlt: "Prisma Ambassador Program — Building A Community of Experts"
tags:
- "announcement"
excerpt: |
We are thrilled to announce the [Prisma Ambassador Program](https://www.prisma.io/ambassador) to empower the Prisma community, while also helping individual contributors build their own brand.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,11 @@ authors:
- "Alex Emerich"
metaTitle: "How Prisma helps Amplication evolutionize backend development"
metaDescription: "How Prisma helps Amplication evolutionize backend development"
metaImagePath: "/blog/amplication-customer-story-nmlkbnlllxnn/imgs/meta-4baa84e48a0da8e13e23367137d5a17515119aaf-2881x1620.png"
heroImagePath: "/blog/amplication-customer-story-nmlkbnlllxnn/imgs/hero-b1fb9ec0c8fca054011688621bfe51ea1836af10-844x474.svg"
metaImagePath: "/amplication-customer-story-nmlkbnlllxnn/imgs/meta-4baa84e48a0da8e13e23367137d5a17515119aaf-2881x1620.png"
heroImagePath: "/amplication-customer-story-nmlkbnlllxnn/imgs/hero-b1fb9ec0c8fca054011688621bfe51ea1836af10-844x474.svg"
heroImageAlt: "How Prisma helps Amplication evolutionize backend development"
tags:
- "usersuccessstory"
excerpt: |
[Amplication](https://amplication.com/) is an open-source development tool. It helps you develop quality Node.js applications without spending time on repetitive coding tasks. It’s perfect for both backend and fullstack developers.

Expand All @@ -27,7 +29,7 @@ Working at larger companies, [Amplication](https://amplication.com/) founder, Yu

With Amplication, you can easily create data models and configure role-based access control with a simple and intuitive UI (or even [via their CLI](https://github.com/amplication/amplication/tree/master/packages/amplication-cli#amp-entitiescreate-displayname)). Based on these model definitions, Amplication generates production-ready, yet fully customizable, application code. This code is continuously pushed to your GitHub repository, and you get a dedicated Docker container to house your database, a Node.js application, and a React client.

![Amplication UI](/blog/amplication-customer-story-nmlkbnlllxnn/imgs/amplication-ui.png)
![Amplication UI](/amplication-customer-story-nmlkbnlllxnn/imgs/amplication-ui.png)

For fullstack developers, their repetitive coding tasks are taken care of, but they still retain **complete ownership** of the code to deploy where they wish and are free to download the generated app code and continue development elsewhere.

Expand All @@ -48,7 +50,7 @@ For the server side you get:
- [Jest](https://jestjs.io/): A delightful JavaScript testing framework with a focus on simplicity
- [Docker](https://www.docker.com/): An open platform for developing, shipping, and running applications

![Generated App Server-side Architecture](/blog/amplication-customer-story-nmlkbnlllxnn/imgs/amplication-prisma-diagram2.png)
![Generated App Server-side Architecture](/amplication-customer-story-nmlkbnlllxnn/imgs/amplication-prisma-diagram2.png)

The Amplication team strongly believes in open-source technology and a user focused community, so they made sure this belief was at the center of the tools they bring their users.

Expand Down
Loading
Loading