analyze_schemaLABSCO SUMMARY
Fixtures that survive a foreign key constraint.
Generic fake-data tools hand you isolated rows and leave you hand-wiring the relationships. This generates referenced tables first and points the FK columns at keys that exist, so the INSERT statements run as written. Running analyze_schema first tells you whether it understood your DDL before you generate anything from it.
What it is
A test-data generator that reads your real schema. Give it Postgres or MySQL CREATE TABLE DDL, or a JSON schema, and it generates rows in topological order so referenced tables come first and foreign key columns point at primary keys that were actually generated.
What you get
- A schema parsed and reported back as tables, columns, relationships and generation order, so you can confirm it read yours correctly before generating anything (analyze_schema)
- Coherent rows generated, as SQL INSERT statements by default, or JSON or CSV (generate_seed_data)
- Foreign keys resolved against generated primary keys, unique columns kept unique, primary keys unique, and NOT NULL honoured
- Realistic values for names, emails, addresses, companies, dates, decimals and enums
- Per-table row counts, enums and value ranges controlled through the JSON schema form
Requirements
npx -y seedweaver-mcp and nothing else. It works from DDL or a JSON schema you paste in, not from a live connection, so it never touches your database.
Setup effort
One command — npx -y seedweaver-mcp
USE CASES
Filling an empty dev database
Paste the CREATE TABLE statements and ask for the row counts you want. What comes back is INSERT statements you can run immediately, with every order.user_id pointing at a user that is also being inserted.
Checking it understood your schema first
Analyze the schema and read back the tables, columns, relationships and the order it plans to generate in. If it missed a relationship, you find out here rather than when the inserts fail.
Producing test data with specific shapes
Use the JSON schema form when you need control: per-table row counts, enum values that match your application's, and ranges for numbers and dates, instead of whatever a generic generator would pick.
Getting fixtures into something that is not SQL
Ask for JSON or CSV instead of INSERT statements, which is what you want when the data is going into test fixtures, a spreadsheet or a seeding script rather than straight into a database.
2 tools
Listed in project docs. Your client may show a different list.
generate_seed_dataBEFORE YOU INSTALL
What to know first
Tools you get
2 tools named in the project's documentation.
Requires
npx on PATH
Where it runs
All 3 documented clients run the server on your machine.
INSTALLATION
Connect your client
Server setup
npx -y seedweaver-mcpMCP Clients
Claude Desktop, Cursor, Windsurf
{
"mcpServers": {
"seedweaver": {
"command": "npx",
"args": [
"-y",
"seedweaver-mcp"
]
}
}
}