Mercurius

What Mercurius is
Mercurius is a GraphQL adapter for Fastify for implementing GraphQL servers and gateways. It caches query parsing and validation, then uses a Just-In-Time compiler through graphql-jit. Automatic loader integration is intended to avoid 1 + N queries. The adapter supports subscriptions, batched queries, customizable persisted queries, federation, and gateway implementations, including subscriptions. Federation and gateway support are provided through @mercuriusjs/federation and @mercuriusjs/gateway. Documented integrations include Nexus, TypeGraphQL, GQLoom, Prisma, mercurius-integration-testing, OpenTelemetry, and NestJS. Mercurius is self-hosted, includes an API explorer, and targets JavaScript and TypeScript server environments. Installation documentation provides npm and Yarn routes for Fastify, Mercurius, and GraphQL. CSRF prevention is included but disabled by default, so configuration must enable it. The repository uses the MIT license. Security reports can be submitted through GitHub Security Advisories or email, with a five-business-day initial response target. The project acknowledges NearForm and Platformatic as sponsors.
Who it suits
It suits developers building GraphQL servers or gateways with Fastify in JavaScript or TypeScript. Self-hosting and federation support fit teams managing their own deployment architecture.
What it does well
- GraphQL subscriptions and batched queries
- Federation and gateway implementations
- Automatic loaders target 1 + N queries
- MIT-licensed self-hosted project
- API explorer included
What to know first
- CSRF prevention is disabled by default
- Requires self-hosted deployment
- No published plan prices or trial duration
Limits
The free plan is the available plan, and Mercurius is self-hosted. CSRF prevention requires explicit configuration because it starts disabled.
Getting started
- Open the Mercurius website and documentation
- Install Fastify, Mercurius, and GraphQL with npm or the documented Yarn alternative
- Configure Mercurius in your JavaScript or TypeScript server
- Enable CSRF prevention in configuration if required
- Use the API explorer and configure any needed integrations or federation packages
Verdict
Mercurius offers Fastify-oriented GraphQL server and gateway features, with federation, subscriptions, loaders, and query compilation. Operators should enable CSRF prevention themselves and manage the self-hosted installation.
Questions
Is Mercurius free?
Yes. Mercurius has a free plan and uses the MIT license.
Where does Mercurius run?
It runs as self-hosted software for JavaScript and TypeScript server environments.
Which GraphQL features are supported?
It supports subscriptions, batched queries, customizable persisted queries, federation, and gateway implementations.
What integrations are documented?
The documentation lists Nexus, TypeGraphQL, GQLoom, Prisma, mercurius-integration-testing, OpenTelemetry, and NestJS.
How is Mercurius installed?
The documented npm command installs fastify, mercurius, and graphql; a Yarn alternative is also provided.
How are security vulnerabilities reported?
Reports can be sent through GitHub Security Advisories or email, with a five-business-day initial response target.
Facts from Mercurius's own pages
- Federation and gateway
- Federation and gateway support are provided through @mercuriusjs/federation and @mercuriusjs/gateway, including subscriptions. · github.com, 8 Oct 2026
- Federation and gateways
- It supports federation and gateway implementations, including subscriptions. · github.com, 8 Oct 2026
- GraphQL capabilities
- It supports subscriptions, batched queries, and customizable persisted queries. · github.com, 8 Oct 2026
- Installation
- The documented installation command is npm i fastify mercurius graphql, with a Yarn alternative also provided. · github.com, 8 Oct 2026
- Integrations
- The integrations documentation lists Nexus, TypeGraphQL, GQLoom, Prisma, mercurius-integration-testing, OpenTelemetry, and NestJS. · github.com, 8 Oct 2026
- License
- The repository lists the project under the MIT license. · github.com, 8 Oct 2026
- Loaders
- Automatic loader integration is provided to avoid 1 + N queries. · github.com, 8 Oct 2026
- Pricing and trial
- The opened project pages state an MIT license but do not publish plan prices or a free-trial duration. · github.com, 8 Oct 2026
- Product
- Mercurius is a GraphQL adapter for Fastify for implementing GraphQL servers and gateways. · github.com, 8 Oct 2026
- Query performance
- It caches query parsing and validation and uses a Just-In-Time compiler via graphql-jit. · github.com, 8 Oct 2026
- Security
- Mercurius includes CSRF prevention, which the documentation says is disabled by default and must be enabled in configuration. · github.com, 8 Oct 2026
- Sponsors
- The project acknowledges NearForm and Platformatic as sponsors. · github.com, 8 Oct 2026
- Support and contribution
- The project describes itself as an open open-source project where significant contributors may receive commit access. · github.com, 8 Oct 2026
- Vulnerability reporting
- The security policy accepts potential vulnerability reports through GitHub Security Advisories or email and specifies a five-business-day initial response target. · github.com, 8 Oct 2026
- What it does
- Mercurius is a GraphQL adapter for Fastify. · github.com, 8 Oct 2026
Where Mercurius stands on Freedom251
- GraphQL Tools#22 of 32