seedfast_run
Start an asynchronous seeding run against a PostgreSQL database, returning a runId for tracking progress and logs. Use after plan approval or for direct execution.
Instructions
Kicks off an asynchronous seeding run against the target database. Returns immediately with a text block containing the new runId, initial status (pending), the plan ID if supplied, and the effective scope; the seeding itself runs in the background — poll seedfast_run_status or subscribe to the seedfast://runs/{runId}/summary and seedfast://runs/{runId}/log resources for progress. If planId is provided, the scope is auto-generated from that plan's tables and the scope argument is ignored; otherwise scope is required. If idempotencyKey matches a prior run, that existing run is returned instead of starting a new one. Use this once the user has approved a plan (or wants direct execution). Requires SEEDFAST_API_KEY configured in MCP env. For production-safe workflows, request the seed-production-db prompt first. Next: seedfast_run_status to poll, or seedfast_run_cancel to abort.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| dsn | Yes | PostgreSQL connection string for the target database. | |
| scope | No | Plain-text scope description. Required unless planId is provided; ignored when planId is set (scope is derived from the plan's tables). | |
| planId | No | ID of a plan previously produced by seedfast_plan or seedfast_plan_create. When set, the run seeds exactly those tables and the scope argument is overridden. | |
| idempotencyKey | No | Caller-chosen key for safe retries. If a prior run was started with the same key, that run is returned and no new run is created. |