seedweaver-mcp について
SeedWeaver は、SQL DDL または JSON スキーマから関連性の整ったテストデータを生成する MCP サーバーです。データベースのテストデータを準備する開発者向けで、外部キーや一意制約を考慮し、SQL、JSON、CSV を出力します。
主な機能
- 01SQL DDL または JSON スキーマを解析
- 02外部キーの依存順にデータを生成
- 03主キー・一意・非 NULL 制約に対応
- 04名前・メール・日付などの値を生成
- 05SQL、JSON、CSV で出力
活用シーン
- 01関連テーブルを含むデータベースのシード作成
- 02外部キーが解決する注文・ユーザーデータの準備
- 03JSON スキーマで行数や列挙値を指定
- 04テスト用 SQL または JSON データの生成
MCP 対応
MCP サーバーとして、スキーマ分析とテストデータ生成のツールを MCP クライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
2掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| schema | string | はい | 分析するスキーマ。生の 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 TABLEDDL を直接貼り付けられるため、手動設定は不要です。 - リアルな値を生成します — 名前、メールアドレス、住所、会社名、日付、小数、列挙値。
- 必要な形式で出力します — 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。
Free と Pro
無料プランは、小規模なスキーマであればすべての機能を利用できます。Pro では制限がなくなり、実際のプロジェクトや CI に必要な機能が追加されます。
| Free | Pro | |
|---|---|---|
| スキーマあたりのテーブル数 | 2 | 無制限 |
| テーブルあたりの行数 | 50 | 無制限 |
| 出力形式 | SQL、JSON | + CSV |
| 決定論的シード(再現可能なデータ) | — | ✓ |
| カスタムロケール | — | ✓ |
| CI / 自動化での利用 | — | ✓ |
→ SeedWeaver Pro を入手 — 月額 $19
ライセンスキーを設定して有効化します:
{
"mcpServers": {
"seedweaver": {
"command": "npx",
"args": ["-y", "seedweaver-mcp"],
"env": { "SEEDWEAVER_LICENSE": "your-key-here" }
}
}
}
ライセンス
SeedWeaver MCP サーバーは MIT ライセンスで、無料で実行できます。Pro の機能は有料のライセンスキーで利用できます。Model Context Protocol を使用して構築されています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。