@seedbase/client

MCP serverDatabases & data

Seedbase lets your AI generate realistic synthetic test data for your databases. The data is fake but consistent, with related records staying correctly linked, so it behaves like real data when you test. That means you can work with meaningful sample data without using real records.

Use @seedbase/client in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add @seedbase/client and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use @seedbase/client to list projects

Details

Available today. Use it from your connected AI after setup.

After adding it, ask your AI to generate test data for one of your databases. Setup details and examples are in the repository at github.com/marcelglaeser/seedbase-node.

@seedbase/clientStart free

What your AI can do with it

  • Generate realistic test data for your databases
  • Keep related records linked correctly across tables
  • Create synthetic data on demand through your AI assistant
  • Produce fake data instead of copying real records

Install @seedbase/client

The server’s own address, for the clients that take one directly. Or connect Ahel once and every client you use reads it from one address, with the account kept on Ahel rather than in each client’s config.

  • Claude Code

    claude mcp add --transport http --scope user seedbase-client 'https://seedba.se/mcp'

    Run it once in your project, then open /mcp to approve any sign-in the server asks for.

  • Claude Desktop

    https://seedba.se/mcp

    Add a custom connector in Settings, paste this address, and approve the sign-in.

  • Cursor

    cursor://anysphere.cursor-deeplink/mcp/install?name=seedbase-client&config=eyJ1cmwiOiJodHRwczovL3NlZWRiYS5zZS9tY3AifQ==

    Open the link and Cursor adds the server at that address.

  • ChatGPT

    https://seedba.se/mcp

    In Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.

  • Codex

    codex mcp add seedbase-client --url 'https://seedba.se/mcp'

    Run it once, then sign in with codex mcp login seedbase-client if the server asks for an account.

From the project's README

As published by marcelglaeser/seedbase-node in README.md.

Generate realistic, relationship-preserving, privacy-safe test data for your databases — and pull it straight into your local or CI database.

Seedbase lives on seedbase.dev: you model (or import) a schema there, generate datasets, and use this package to pull them into Postgres, MySQL, SQLite and more. Schema-aware, foreign-key-correct, reproducible by seed.

This is the Node.js client, a counterpart to the Python SDK.

Install

npm install @seedbase/client

Zero runtime dependencies — pure ESM, built on the native fetch of Node 18+.

Quickstart

import { SeedbaseClient } from "@seedbase/client";

// Token from the argument, $SEEDBASE_TOKEN, or ~/.seedbase/config.json
const client = new SeedbaseClient({ token: "dr_sk_..." });

// Trigger a generation and wait for it to finish
const gen = await client.generate(projectId, { seed: 42, wait: true });

// Download the result (Uint8Array)
const bytes = await client.download(gen.id, { format: "sql" });
import { writeFile } from "node:fs/promises";
await writeFile("dump.sql", bytes);

MCP server (Claude Code, Claude Desktop & friends)

This package ships seedbase-mcp — a zero-dependency Model Context Protocol server that lets AI assistants generate test data for you. Describe what you need ("fill my Shop project with MySQL test data") and the assistant drives SeedBase end-to-end through five tools:

ToolWhat it does
list_projectsList your SeedBase projects (id, name, database type)
create_projectCreate a new, empty project
import_schemaImport a schema from SQL DDL (raw pg_dump --schema-only works), CSV/JSON or ORM model code
get_ddlGet a project's schema as CREATE TABLE statements, per dialect
generate_test_dataGenerate a fresh FK-consistent dataset and return it as SQL (large results are written to a local file, never truncated)

Hosted (zero install) — point any Streamable-HTTP MCP client at https://seedbase.dev/mcp with an Authorization: Bearer dr_sk_... header:

claude mcp add-json seedbase '{"type":"http","url":"https://seedbase.dev/mcp","headers":{"Authorization":"Bearer dr_sk_..."}}'

Local via Claude Code (stdio):

claude mcp add-json seedbase '{"type":"stdio","command":"npx","args":["-y","-p","@seedbase/client","seedbase-mcp"],"env":{"SEEDBASE_API_KEY":"dr_sk_..."}}'

Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "seedbase": {
      "command": "npx",
      "args": ["-y", "-p", "@seedbase/client", "seedbase-mcp"],
      "env": { "SEEDBASE_API_KEY": "dr_sk_..." }
    }
  }
}

Create a free account at seedbase.dev/register (no credit card), then create an API key under Settings → API keys. The free tier is enough to generate full, foreign-key-consistent datasets. The server is stdio-only, talks exclusively to https://seedbase.dev, and stores nothing locally.

Authentication

The token is resolved in this order:

  1. The token option passed to the constructor.
  2. The SEEDBASE_TOKEN environment variable.
  3. The token field in ~/.seedbase/config.json (written by seedbase login).

API keys with the dr_sk_ prefix are sent as Authorization: Bearer ..., other tokens as Authorization: Token .... Get a key at seedbase.dev/settings?tab=api-keys.

API

new SeedbaseClient({
  token,            // optional, see resolution order above
  apiUrl,           // default "https://seedbase.dev/api/v1" (https enforced, http only for localhost)
  configPath,       // override ~/.seedbase/config.json
  requestTimeout,   // per-request timeout in ms, default 30000
  fetch,            // inject a custom fetch (e.g. for tests)
});
MethodDescription
listProjects()All datasets/projects (paginated, followed automatically).
getProject(projectId)A single project.
listGenerations(projectId)Generations for a project (paginated).
getGeneration(generationId)A single generation.
generate(projectId, opts)Trigger a generation. opts: { seed, rows, format, rebaseTo, wait, timeout, pollInterval }. With wait: true it polls until the generation reaches completed/failed/cancelled.
download(generationId, { format })Download the generated artifact as a Uint8Array. format defaults to "sql".
seededRows(projectId, { seed, rows })Generate and return the rows as { tableName: [row, ...] }, in foreign-key-safe order.
exportConfig(projectId)The project's engine config as an object.
importConfig(projectId, config)Replace the project's engine config.

All methods are async and return Promises. Failures throw a SeedbaseError (with .statusCode for HTTP errors), carrying a readable message that includes the server's detail or field errors.

import { SeedbaseError } from "@seedbase/client";

try {
  await client.getProject("missing");
} catch (err) {
  if (err instanceof SeedbaseError) {
    console.error(err.statusCode, err.message);
  }
}

Prisma seed

Fill a Prisma-managed database with realistic, foreign-key-consistent data, in one call. Your schema must already exist (your prisma migrate owns it); SeedBase only fills it. Free tier.

// prisma/seed.ts
import { PrismaClient } from "@prisma/client";
import { SeedbaseClient } from "@seedbase/client";
import { seedPrisma } from "@seedbase/client/prisma";

const prisma = new PrismaClient();
const client = new SeedbaseClient({ token: process.env.SEEDBASE_TOKEN });

await seedPrisma(prisma, client, { project: process.env.SEEDBASE_PROJECT, seed: 42 });

Then run prisma db seed. A runnable demo (offline, no account) is in examples/prisma-seed-demo.mjs.

Links

MIT licensed.

Tools it offers (6)

What this server listed when Ahel dialed its public endpoint in Sep 2026, with no key and no account of yours. The names are the server’s own.

  • list_projects
  • get_ddl
  • generate_test_data
  • fetch_generation
  • create_project
  • import_schema

Signals

Forks
1
Last commit
Jul 2026
Weekly_downloads
40 weekly_downloads
Advanced
Delivery
seedbase MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
Item type
mcp-server
Key
io-github-marcelglaeser-seedbase
Source
github.com/marcelglaeser/seedbase-node
Hosted endpoint
https://seedba.se/mcp