mcpField
S
seedweaver-mcp

seedweaver-mcp

本地服务
github.com/FixtureForge开发工具022 周前更新

关于 seedweaver-mcp

SeedWeaver 是根据 SQL DDL 或 JSON schema 生成关系一致的测试数据的 MCP 服务,面向需要准备数据库测试数据的开发者。它会处理外键与唯一约束,并可输出 SQL、JSON 或 CSV。

主要功能

  1. 01解析 SQL DDL 或 JSON schema
  2. 02按外键依赖顺序生成数据
  3. 03遵守主键、唯一和非空约束
  4. 04生成姓名、邮箱、日期等常见值
  5. 05输出 SQL、JSON 或 CSV

适用场景

  1. 01为带有关联表的数据库生成种子数据
  2. 02准备外键可解析的订单和用户记录
  3. 03根据 JSON schema 控制表行数与枚举
  4. 04生成可用于测试的 SQL 或 JSON 数据

MCP 相关

作为 MCP 服务,它向 MCP 客户端提供 schema 分析和测试数据生成工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"fixtureforge-seedweaver": {
"command": "npx",
"args": [
"-y",
"seedweaver-mcp"
]
}
}
}
启动命令npx -y seedweaver-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmseedweaver-mcp0.2.0

工具

2

收录的工具列表 · 更新于 2 周前

参数类型必填说明
schemastring是要分析的架构:原始 SQL DDL(CREATE TABLE ...)或包含 'tables' 数组的 JSON 架构对象。

详细介绍

SeedWeaver 🌱

直接通过 Claude、Cursor 或任何 MCP 客户端,根据真实数据库架构生成逼真且引用关系一致的测试数据。

粘贴你的 CREATE TABLE SQL(或 JSON 架构),SeedWeaver 就会生成种子数据,其中外键会指向实际存在的主键、符合唯一性约束,且值都很逼真(姓名、电子邮件、日期、小数)。与生成统计上随机垃圾数据的通用模拟数据工具不同,SeedWeaver 理解你的架构中的关系。

向 AI 提问:“为此架构生成 50 个用户和 200 个订单”——即可获得可立即运行的 INSERT 语句,其中每个 order.user_id 都指向一个实际存在的用户。


为什么选择 SeedWeaver

大多数“虚假数据”工具(Faker 封装、随机生成器)生成的都是彼此孤立、不了解架构的数据行。一旦涉及外键,你就得重新手动处理关系。SeedWeaver:

  • 解析外键 — 先生成被引用的表(按拓扑顺序),外键列会指向实际生成的键。
  • 遵守约束 — 唯一列保持唯一,主键保持唯一,并遵守 NOT NULL。
  • 读取真实架构 — 直接粘贴 Postgres/MySQL CREATE TABLE DDL,无需手动配置。
  • 生成逼真值 — 姓名、电子邮件、地址、公司、日期、小数、枚举值。
  • 按需输出 — SQL INSERT 语句、JSON 或 CSV。

安装

npx -y seedweaver-mcp

添加到你的 MCP 客户端配置中(Claude Desktop / Cursor / Windsurf):

{
  "mcpServers": {
    "seedweaver": {
      "command": "npx",
      "args": ["-y", "seedweaver-mcp"]
    }
  }
}

工具

工具功能
analyze_schema解析架构(SQL DDL 或 JSON),并报告表、列、关系和生成顺序。先运行此工具,确认 SeedWeaver 能正确读取你的架构。
generate_seed_data生成一致的测试数据。返回 SQL INSERT(默认)、JSON 或 CSV。

示例

根据 SQL DDL 生成:

Generate 20 rows of test data for:

CREATE TABLE users (
  id UUID PRIMARY KEY,
  email VARCHAR(255) UNIQUE NOT NULL,
  full_name VARCHAR(100),
  created_at TIMESTAMP
);
CREATE TABLE orders (
  id SERIAL PRIMARY KEY,
  user_id UUID NOT NULL REFERENCES users(id),
  total DECIMAL(10,2),
  status VARCHAR(20)
);

生成的每个 orders.user_id 都会是实际存在的 users.id。

根据 JSON 架构生成(可精细控制——枚举值、范围、每张表的行数):

{
  "tables": [
    {
      "name": "users",
      "rows": 20,
      "columns": [
        { "name": "id", "type": "uuid", "primaryKey": true },
        { "name": "email", "type": "email", "unique": true },
        { "name": "name", "type": "fullName" }
      ]
    },
    {
      "name": "orders",
      "rows": 80,
      "columns": [
        { "name": "id", "type": "serial", "primaryKey": true },
        { "name": "user_id", "type": "fk", "references": "users.id" },
        { "name": "total", "type": "decimal", "min": 5, "max": 500 },
        { "name": "status", "type": "enum", "values": ["pending", "paid", "shipped"] }
      ]
    }
  ]
}

支持的列类型:uuid、serial、int、decimal、boolean、email、fullName、firstName、lastName、username、phone、address、city、country、company、url、word、sentence、paragraph、date、datetime、enum、fk。


免费版与 Pro 版

免费版功能齐全,适用于小型架构。Pro 版取消限制,并增加真实项目和 CI 所需的功能。

免费版Pro
每个架构的表数2无限制
每张表的行数50无限制
输出格式SQL、JSON+ CSV
确定性种子(可复现的数据)—✓
自定义区域设置—✓
用于 CI / 自动化—✓

→ 获取 SeedWeaver Pro — $19/mo

设置许可证密钥即可激活:

{
  "mcpServers": {
    "seedweaver": {
      "command": "npx",
      "args": ["-y", "seedweaver-mcp"],
      "env": { "SEEDWEAVER_LICENSE": "your-key-here" }
    }
  }
}

许可证

SeedWeaver MCP 服务采用 MIT 许可证,可免费运行。Pro 功能需使用付费许可证密钥解锁。基于 Model Context Protocol 构建。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。