Files
nusquama 259a4096e2 creation
2025-11-13 14:22:22 +01:00

23 KiB

Generate Complete Database Schemas with Claude Multi-Agent System for SQL Databases

https://n8nworkflows.xyz/workflows/generate-complete-database-schemas-with-claude-multi-agent-system-for-sql-databases-9544

Generate Complete Database Schemas with Claude Multi-Agent System for SQL Databases

1. Workflow Overview

This workflow automates the generation of complete, production-ready database schemas for SQL databases using a multi-agent AI system powered by Claude (Anthropic). It is designed for users who provide detailed database requirements via a form. The system iteratively creates, reviews, optimizes, and finally generates executable SQL scripts for the specified database technology, supporting PostgreSQL, MySQL, MSSQL, and MariaDB.

Target Use Cases:

  • Rapid prototyping of scalable, normalized database schemas
  • AI-assisted database design and review for startups and enterprises
  • Automated SQL migration script generation with best practices
  • Iterative improvement and quality assurance via AI feedback loops

Logical Blocks:

  • 1.1 Input Reception and Initialization: Receives user input via form and initializes workflow variables.
  • 1.2 Multi-Agent Schema Design Pipeline: Runs through three AI agents sequentially—Architect, Reviewer, and Optimizer—to create and refine the schema iteratively.
  • 1.3 Quality Gate and Iteration Control: Evaluates the optimizer's score and decides to proceed or retry up to 3 times.
  • 1.4 SQL Script Generation: Converts final schema design into an executable SQL script.
  • 1.5 Execution and Response Handling: Optionally executes the SQL script in PostgreSQL and returns success or error responses.
  • 1.6 User Interaction and Completion: Displays final results or errors back to user via form completion node.

2. Block-by-Block Analysis

1.1 Input Reception and Initialization

  • Overview: Collects database requirements from the user via a web form and initializes key variables for iteration and feedback.
  • Nodes Involved: Form Submission, Initialize Variables

Node Details:

  • Form Submission

    • Type: Form Trigger
    • Role: Collect user input on database requirements including technology, industry, scale, workflows, integrations, special requirements, and contact email.
    • Configuration: Various form fields including textarea, dropdown, number, and email with required validation.
    • Outputs: JSON object with user responses.
    • Edge cases: Missing required fields; malformed input; slow user response.
  • Initialize Variables

    • Type: Set node
    • Role: Initialize iteration_count to 0, previous_feedback to "=" (empty placeholder), and store form data for workflow context.
    • Configuration: Sets three variables from JSON input.
    • Inputs: Output from Form Submission.
    • Outputs: Initialized context for agents.
    • Edge cases: None significant; fails if input missing.

1.2 Multi-Agent Schema Design Pipeline

  • Overview: Runs three AI agents in sequence, each powered by Claude Sonnet 4.5, to create, review, and optimize the proposed database schema using the input data and iterative feedback.
  • Nodes Involved: Architect Model, Agent 1: Database Architect, Reviewer Model, Agent 2: Schema Reviewer, Optimizer Model, Agent 3: Optimizer & Scorer, Track Iteration

Node Details:

  • Architect Model

    • Type: Anthropic LM Chat node
    • Role: Base model configuration for Agent 1.
    • Parameters: Temperature 0.3, topP 0.9 for balanced creativity and consistency.
    • Credentials: Anthropic API
    • Output: Model response to Agent 1.
  • Agent 1: Database Architect

    • Type: Langchain Agent node
    • Role: Designs initial database schema as JSON based on form data and previous feedback if any.
    • Prompt: Detailed instructions to design scalable, normalized DB schema with tables, columns, PK, indexes, FKs, enums, extensions, relationships, reasoning.
    • Input: Form data and previous feedback from Initialize Variables or Track Iteration.
    • Output: JSON design of schema.
    • Edge cases: Incomplete feedback; model hallucinations; overly complex schemas.
  • Reviewer Model

    • Type: Anthropic LM Chat node
    • Role: Base model configuration for Agent 2.
    • Parameters: Temperature 0.1, topP 0.85 for strict analytical review.
    • Credentials: Anthropic API
  • Agent 2: Schema Reviewer

    • Type: Langchain Agent node
    • Role: Reviews Agent 1 schema for normalization, indexing, data types, constraints, performance, scalability, security; outputs structured feedback with severity levels.
    • Prompt includes original requirements and schema from Agent 1.
    • Output: Structured feedback with CRITICAL to LOW issues and positives.
    • Edge cases: Missed issues; false positives; incomplete feedback.
  • Optimizer Model

    • Type: Anthropic LM Chat node
    • Role: Base model config for Agent 3.
    • Parameters: Temperature 0.5, topP 0.95 for balanced polish and creativity.
    • Credentials: Anthropic API
  • Agent 3: Optimizer & Scorer

    • Type: Langchain Agent node
    • Role: Applies final polish, adds advanced features (materialized views, helper functions), monitoring recommendations, comprehensive score card with grades and justifications, implementation guidance.
    • Prompt includes original requirements, schema, and review feedback.
    • Output: Score card and enhanced schema.
    • Edge cases: Over-optimism; missing critical fixes.
  • Track Iteration

    • Type: Set node
    • Role: Increment iteration count, update previous feedback with Agent 3 output for retry loop, preserve form data.
    • Inputs: Agent 3 output and Initialize Variables data.
    • Outputs: Updated context for next iteration or decision.

1.3 Quality Gate and Iteration Control

  • Overview: Evaluates if the schema score is good enough (grade A or B) to proceed to SQL generation or if the workflow should retry up to 3 times for improvement.
  • Nodes Involved: Is Score A or B?, Can Retry?, Max Iterations Reached

Node Details:

  • Is Score A or B?

    • Type: If node
    • Role: Regex match on Agent 3's output to detect overall grade A or B.
    • True path: Proceed to SQL generation.
    • False path: Proceed to retry or max iteration check.
  • Can Retry?

    • Type: If node
    • Role: Checks if current iteration count ≤ 3 to allow retry.
    • True path: Loop back to Agent 1 for redesign with previous feedback.
    • False path: Proceed to Max Iterations Reached.
  • Max Iterations Reached

    • Type: Set node
    • Role: Sets message indicating max 3 iterations reached and proceeds with best design available.
    • Outputs: Passes through current iteration and form data for final steps.

1.4 SQL Script Generation

  • Overview: Converts the finalized database schema design into a detailed, production-ready SQL migration script, tailored for the specified database technology.
  • Nodes Involved: SQL Generator Model, Agent 4: Generate SQL Script

Node Details:

  • SQL Generator Model

    • Type: Anthropic LM Chat node
    • Role: Base model config for Agent 4.
    • Parameters: Temperature 0.2, topP 0.85 for precision.
    • Credentials: Anthropic API
  • Agent 4: Generate SQL Script

    • Type: Langchain Agent node
    • Role: Generates full SQL migration script with transaction handling, extension creation (PostgreSQL), enums, tables, indexes, constraints, comments, idempotency, rollback script.
    • Input: Database technology, final schema, and optimizations.
    • Output: Plain SQL script text (no markdown or commentary).
    • Edge cases: Syntax errors; dialect incompatibility; large output truncation.

1.5 Execution and Response Handling

  • Overview: Optionally executes the generated SQL script on a PostgreSQL database and handles success or failure responses to provide user feedback.
  • Nodes Involved: If User Is Using Excel (condition node), Execute SQL in PostgreSQL, Success Response, Error Response

Node Details:

  • If User Is Using Excel

    • Type: If node
    • Role: Checks if the database technology contains "postgres" (case insensitive) to determine if auto-execution is possible.
    • True path: Execute SQL in PostgreSQL
    • False path: Bypass execution and show form completion only.
  • Execute SQL in PostgreSQL

    • Type: PostgreSQL node
    • Role: Executes the SQL script generated by Agent 4 against configured PostgreSQL database.
    • Configuration: Uses stored PostgreSQL credentials.
    • On error: Continues workflow with error output.
    • Output: Success or error JSON.
  • Success Response

    • Type: Set node
    • Role: Constructs a JSON response with status "success," message, SQL script, schema design, review feedback, score card, iteration count, and database tech for final output.
    • Input: Execute SQL success output and agent outputs.
  • Error Response

    • Type: Set node
    • Role: Constructs a JSON response with status "failed," error message, SQL script, schema, feedback, score card, iteration count, and tech. Advises manual use of script if execution fails.
    • Input: Execute SQL error output and agent outputs.

1.6 User Interaction and Completion

  • Overview: Presents the final workflow output to the user via a form completion node, either after successful execution or in failure cases without execution.
  • Nodes Involved: Form, Form End Without Execute

Node Details:

  • Form

    • Type: Form node
    • Role: Completion interface that shows final success or error JSON back to user with a title and message.
    • Input: From Success Response or Error Response nodes.
  • Form End Without Execute

    • Type: Form node
    • Role: Completion interface used when SQL script is generated but not executed (non-PostgreSQL DBs).
    • Input: From If User Is Using Excel false branch.

3. Summary Table

Node Name Node Type Functional Role Input Node(s) Output Node(s) Sticky Note
Form Submission Form Trigger Collects user database requirements Initialize Variables ## 📝 Form Intake - user fills database requirements
Initialize Variables Set Initializes iteration and feedback variables Form Submission Agent 1: Database Architect ## 🔧 Setup Phase - prepares data for agent pipeline
Architect Model Anthropic LM Chat Base model config for Architect Agent Agent 1: Database Architect ## 🤖 Agent 1: Architect - initial schema design
Agent 1: Database Architect Langchain Agent Designs initial database schema Initialize Variables Agent 2: Schema Reviewer ## 🤖 Agent 1: Architect - initial schema design
Reviewer Model Anthropic LM Chat Base model config for Reviewer Agent Agent 2: Schema Reviewer ## 🤖 Agent 2: Reviewer - quality control & validation
Agent 2: Schema Reviewer Langchain Agent Reviews schema for normalization & best practices Agent 1: Database Architect Agent 3: Optimizer & Scorer ## 🤖 Agent 2: Reviewer - quality control & validation
Optimizer Model Anthropic LM Chat Base model config for Optimizer Agent Agent 3: Optimizer & Scorer ## 🤖 Agent 3: Optimizer - final polish & scoring
Agent 3: Optimizer & Scorer Langchain Agent Refines schema, adds features, scores design Agent 2: Schema Reviewer Is Score A or B? ## 🤖 Agent 3: Optimizer - final polish & scoring
Track Iteration Set Tracks iteration count and feedback for retry Agent 3: Optimizer & Scorer Can Retry? ## 🔁 Retry Loop - iterative improvement system
Is Score A or B? If Checks if score grade is A or B Agent 3: Optimizer & Scorer Agent 4: Generate SQL Script / Track Iteration ## 🔄 Quality Gate - ensures high-quality output
Can Retry? If Checks if iteration count ≤ 3 for retries Track Iteration Agent 1: Database Architect / Max Iterations Reached ## 🔄 Quality Gate - ensures high-quality output
Max Iterations Reached Set Sets message when max retries reached Can Retry? Agent 4: Generate SQL Script ## 🔄 Quality Gate - ensures high-quality output
SQL Generator Model Anthropic LM Chat Base model config for SQL script generation Agent 4: Generate SQL Script ## 🤖 Agent 4: SQL Generator - converts schema to SQL
Agent 4: Generate SQL Script Langchain Agent Generates production-ready SQL migration script Max Iterations Reached / Is Score A or B? If User Is Using Excel ## 🤖 Agent 4: SQL Generator - converts schema to SQL
If User Is Using Excel If Checks if DB tech is PostgreSQL to decide execution Agent 4: Generate SQL Script Execute SQL in PostgreSQL / Form End Without Execute ## Query Execute - auto runs script on PostgreSQL
Execute SQL in PostgreSQL PostgreSQL Executes SQL script on PostgreSQL database If User Is Using Excel Success Response / Error Response ## Query Execute - auto runs script on PostgreSQL
Success Response Set Constructs success response JSON Execute SQL in PostgreSQL Form ## Execution Validation - handles success gracefully
Error Response Set Constructs failure response JSON Execute SQL in PostgreSQL Form ## Execution Validation - handles failure gracefully
Form Form Shows final success or failure message to user Success Response / Error Response ## Execution Validation - handles success & failures
Form End Without Execute Form Shows final message when script not executed If User Is Using Excel (false) ## Execution Validation - handles success & failures

4. Reproducing the Workflow from Scratch

  1. Create Form Submission Node

    • Type: Form Trigger
    • Configure fields:
      • What are you building? (textarea, required)
      • Database Technology (dropdown: PostgreSQL, MySQL, MSSQL, MariaDB, required)
      • Industry/Niche (text, required)
      • What data do you need to track? (textarea)
      • Team Size (number)
      • Expected Scale (text)
      • Key Workflows (textarea)
      • Any integrations needed? (text)
      • Special Requirements (textarea)
      • Your Email (email, required)
    • Set form title and description accordingly.
  2. Add Set Node "Initialize Variables"

    • Assign:
      • iteration_count = 0 (number)
      • previous_feedback = "=" (string)
      • form_data = entire JSON from Form Submission (object)
    • Connect output of Form Submission to this node.
  3. Add Anthropic LM Chat Node "Architect Model"

    • Model: Claude Sonnet 4.5
    • Temperature: 0.3, topP: 0.9
    • Connect to Agent 1 (see next step).
  4. Add Langchain Agent Node "Agent 1: Database Architect"

    • Text input: Template including all form_data fields and previous_feedback/iteration_count.
    • System message: Senior DB architect instructions for schema design output as structured JSON.
    • Connect input to Initialize Variables output.
    • Connect AI model to Architect Model node.
  5. Add Anthropic LM Chat Node "Reviewer Model"

    • Model: Claude Sonnet 4.5
    • Temperature: 0.1, topP: 0.85
    • Connect to Agent 2 node.
  6. Add Langchain Agent Node "Agent 2: Schema Reviewer"

    • Input: JSON stringified form_data and Agent 1 output schema.
    • System message: Reviewer checklist, output structured feedback with severity levels.
    • Connect input from Agent 1 output.
    • Connect AI model to Reviewer Model node.
  7. Add Anthropic LM Chat Node "Optimizer Model"

    • Model: Claude Sonnet 4.5
    • Temperature: 0.5, topP: 0.95
    • Connect to Agent 3 node.
  8. Add Langchain Agent Node "Agent 3: Optimizer & Scorer"

    • Input: Original requirements, proposed schema, review feedback.
    • System message: Instructions to polish, add advanced features, score, provide guidance.
    • Connect input from Agent 2 output.
    • Connect AI model to Optimizer Model node.
  9. Add Set Node "Track Iteration"

    • Assign:
      • iteration_count = previous iteration_count + 1
      • previous_feedback = Agent 3 output
      • form_data = initial form_data
    • Connect input from Agent 3 output.
  10. Add If Node "Can Retry?"

    • Condition: iteration_count ≤ 3
    • True: loop back to Agent 1 (for redesign with updated feedback)
    • False: proceed to Max Iterations Reached node.
  11. Add Set Node "Max Iterations Reached"

    • Assign message indicating max attempts reached.
    • Pass through iteration_count and form_data.
    • Connect input from Can Retry? false output.
  12. Add If Node "Is Score A or B?"

    • Regex check on Agent 3 output for grades A or B.
    • True: proceed to SQL generation.
    • False: proceed to Track Iteration (retry loop).
  13. Add Anthropic LM Chat Node "SQL Generator Model"

    • Model: Claude Sonnet 4.5
    • Temperature: 0.2, topP: 0.85
    • Connect to Agent 4 node.
  14. Add Langchain Agent Node "Agent 4: Generate SQL Script"

    • Input: Database technology, final schema, optimizations.
    • System message: Detailed instructions for generating production-ready SQL migration script with transaction handling, comments, rollback, idempotency.
    • Connect AI model to SQL Generator Model node.
  15. Add If Node "If User Is Using Excel"

    • Condition: Check if database technology string contains "postgres" (case-insensitive).
    • True: Execute SQL node.
    • False: Skip execution and proceed to form completion.
  16. Add PostgreSQL Node "Execute SQL in PostgreSQL"

    • Credentials: PostgreSQL account credentials.
    • Query: SQL script output from Agent 4.
    • Operation: executeQuery
    • On error: Continue error output.
  17. Add Set Node "Success Response"

    • On successful SQL execution, set JSON response with status "success", message, SQL script, schema design, review feedback, score card, iterations, and database tech.
    • Connect from Execute SQL success output.
  18. Add Set Node "Error Response"

    • On failure, set JSON response with status "failed", error message, SQL script, schema, review feedback, score card, iterations, and tech.
    • Connect from Execute SQL error output.
  19. Add Form Node "Form"

    • Operation: completion
    • Completion title: "SQL Creation Finished"
    • Completion message: bind to JSON of Success Response or Error Response nodes.
    • Connect from Success Response and Error Response nodes.
  20. Add Form Node "Form End Without Execute"

    • Operation: completion
    • Completion title: "SQL Creation Finished"
    • Completion message: bind to JSON from Agent 4 output (when SQL is not executed).
    • Connect from If User Is Using Excel false output.
  21. Add Sticky Notes

    • Add descriptive sticky notes at each major section for user guidance and customization tips.

5. General Notes & Resources

Note Content Context or Link
Average workflow execution time is 60-90 seconds with ~85% success on first attempt. Cost per run estimated at $0.15-$0.30. Workflow Overview Sticky Note
Suggested improvements include A/B testing agent prompts, caching patterns, pre-built industry templates, and parallel execution. Workflow Overview Sticky Note
Retry loop currently maxes at 3 iterations; increasing retries or adding manual review can improve quality but increase cost. Retry Loop Sticky Note
Agent prompts are carefully tuned with temperature and topP to balance creativity, strictness, and polish across the design pipeline. Agent Sticky Notes 1-4
SQL generated includes transaction handling, idempotency, and rollback script for safe deployment. Agent 4 Sticky Note
Execution node supports automatic running of scripts only for PostgreSQL; other DBs require manual execution of generated SQL. Query Execute Sticky Note
Error handling ensures user receives usable output even if execution fails, including the generated SQL script for manual use. Execution Validation Sticky Note

Disclaimer: The content above is derived exclusively from an automated n8n workflow utilizing AI language models. All data processed is lawful and publicly provided. No illegal or protected content is included.