Skip to content

v3.7.0 · MongoDB & PostgreSQL. Install from npm or download the starters.

Is Simfinity a fit? ​

Simfinity connects GraphQL object types to MongoDB models or PostgreSQL tables and generated operations. It is useful when your application has a connected domain, repeated CRUD behavior, and application rules you want to keep close to its schema.

From a type to an API
DefineGraphQLObjectTypeFields + metadata

Describe data, relationships and application behavior.

Registerconnect()Endpoint names

Choose the singular and plural names explicitly.

BuildcreateSchema()Executable GraphQL

Models, inputs and generated resolvers are ready for your server.

What you get, and what you own ​

Simfinity generatesYour application provides
Mongoose models or PostgreSQL tables from registered GraphQL typesOne supported database deployment, credentials and workload-specific indexes
Detail, list, aggregation and CRUD operationsEndpoint names and decisions about which operations to expose
Relationship inputs and resolversStorage choices, ownership checks and deletion policy
Integration points for permissions, validation and lifecycle hooksAuthentication, authorization policy and domain-specific behavior
MCP tool definitions from the schemaAllowed tools, trusted context and transport configuration

A concrete example: a series catalog ​

Start with a Serie, add embedded seasons, filter the catalog and expose a read tool. The Quick start includes the files and expected responses. The larger Series Sample Project shows additional relationships and application behavior.

Follow the same domain as it grows:

  1. Create and query the catalog.
  2. Choose how relationships are stored.
  3. Validate data and authorize operations.
  4. Add server-controlled query scope.
  5. Expose selected operations as MCP tools.

Architectural boundaries ​

  • Choose MongoDB/Mongoose or PostgreSQL when the application starts. Runtime switching and automatic data migration are outside the package contract.
  • Generated mutations use transactions. MongoDB needs a replica set or sharded cluster; PostgreSQL needs version 15 or later.
  • Authentication belongs to your application. Query scopes restrict supported reads; write ownership checks require explicit application policy.
  • Direct Mongoose calls and PostgreSQL native Model calls bypass the generated GraphQL pipelines.
  • Registrations and middleware belong to a runtime instance. Register your types and build each schema during application startup; reuse the resulting schema rather than rebuilding it per request.
  • Supporting types, custom mutations and lifecycle hooks let you adapt the generated behavior. Review the Core API when deciding where to extend it.

For requirements and version information, see compatibility and releases.

Open source. Released under the Apache 2.0 License.