关于 MockForge AI Relational Mock Database & Fixture Generator
MockForge AI 面向开发者和 QA 团队,根据模式生成关系型测试数据。它按依赖顺序生成数据以维护外键完整性,并在内存中运行。
主要功能
- 01解析 SQL 和 ORM 模式
- 02按依赖顺序生成数据
- 03维护外键完整性
- 04支持 SQL、JSON、CSV 和 Prisma 输出
- 05提供 CLI 和 SDK
适用场景
- 01创建关系型测试夹具
- 02填充 CI 测试数据库
- 03根据 SQL 模式生成数据
MCP 相关
MockForge AI 被标注为 MCP 服务,但 README 未说明其 MCP 接口或向客户端提供的工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
🎲 MockForge AI
智能的浏览器内关系型模拟数据库与种子数据合成器
MockForge AI 是一款速度极快、无需云端开销的关系型模拟数据库和种子数据合成器。MockForge 由 Kahn 拓扑 DAG 排序器、浏览器内 WebAssembly SQLite 引擎和 Gemini 1.5 Flash 驱动,可生成数百万条合成记录,外键完整性达 100%,速度高达 每秒 88,000 多条记录——完全在内存中运行,云计算开销为 $0(VPS 费用为 $0)。
⚡ 问题:关系型种子数据的噩梦
开发人员和 QA 工程师浪费数百小时手动编写种子数据:
- 外键冲突:在
users之前插入orders,会因完整性约束失败而导致集成测试崩溃。 - 逐渐失效的测试数据:架构迁移(Prisma、Drizzle、Alembic)会使静态 JSON 模拟数据失效,迫使人们手动更新。
- PII 与合规风险:将脱敏后的生产数据库复制到预发布环境,经常会违反 HIPAA、GDPR 和 SOC 2。
- 云数据库成本:为每个 CI/CD 运行器配置预发布数据库实例,会推高基础设施费用。
MockForge 通过解析 SQL DDL 或 Prisma 架构、构建依赖 DAG,并直接在 CI/CD 运行器或浏览器中合成数百万条相互关联的数据记录,解决了这一问题。
🏛️ 架构
MockForge 完全在客户端或临时无服务器边缘运行时中运行,无需依赖外部数据库:
flowchart TD
subgraph Inputs["Schema Input Layer"]
DDL["SQL DDL (Postgres / MySQL / SQLite)"]
Prisma["Prisma / Drizzle Schema"]
OpenAPI["OpenAPI / Swagger Spec"]
end
subgraph CoreEngine["MockForge In-Memory Engine (< 88,000 rows/sec)"]
Parser["AST Schema Parser & Foreign Key Graph Builder"]
DAGSorter["Kahn's Topological DAG Sorter\n(Resolves Insertion Hierarchy & Cycles)"]
Generator["Deterministic Synthetic Generator\n(Context-Aware Faker + Gemini 1.5 Flash)"]
WASMDB["In-Memory WebAssembly SQLite Database\n(Real-Time FK & Unique Constraint Validator)"]
end
subgraph Exporters["Multi-Format Exporter Layer"]
SQLExp["SQL INSERT Scripts (.sql)"]
JSONExp["Nested Relational JSON"]
CSVExp["Relational CSV Bundles"]
PyExp["Pytest Fixtures (Python)"]
TSExp["TypeScript / Prisma Seeders"]
end
subgraph ZeroCostEdge["Serverless Edge (api.mockforge.io)"]
CFWorkers["Cloudflare Workers (Headless CI/CD Seed API)"]
end
Inputs --> Parser
Parser --> DAGSorter
DAGSorter --> Generator
Generator --> WASMDB
WASMDB --> SQLExp & JSONExp & CSVExp & PyExp & TSExp
CFWorkers -.->|Headless DDL-to-Seed API| CoreEngine
🚀 快速入门
1. CLI 快速入门
从最新发行版下载预编译二进制文件,或通过 npm 安装:
npm install -g @ritualdev/mockforge
根据任意 SQL 架构生成 1,000 条具备外键完整性的关联记录:
mockforge generate ./examples/schema.sql --count 1000 --format sql -o seed.sql
支持的输出格式:--format sql、--format json、--format csv、--format prisma。
2. Python SDK 快速入门(pip install mockforge)
适用于 Pytest 测试数据、Django、SQLAlchemy 和自动化测试流水线:
from mockforge import RelationalSynthesizer
# Define your schema
schema = """
CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, email TEXT);
CREATE TABLE orders (id INTEGER PRIMARY KEY, user_id INTEGER REFERENCES users(id), amount REAL);
"""
# Synthesize relational dataset
synthesizer = RelationalSynthesizer()
seed_sql = synthesizer.generate_from_ddl(
schema,
row_counts={"users": 50, "orders": 200}
)
print(seed_sql[:200])
# All foreign keys are guaranteed valid and resolved in topological order!
完整的 pytest 集成指南请参阅 examples/pytest_fixtures.py。
3. Node.js / TypeScript SDK
npm install @ritualdev/mockforge
import { MockForgeEngine } from '@ritualdev/mockforge';
const engine = new MockForgeEngine();
const result = await engine.synthesizeFromSql(`
CREATE TABLE customers (id INT PRIMARY KEY, name VARCHAR(100));
CREATE TABLE invoices (id INT PRIMARY KEY, customer_id INT REFERENCES customers(id), total DECIMAL);
`, { count: 500 });
console.log(`Generated ${result.totalRows} rows across ${result.tables.length} tables in ${result.elapsedMs}ms`);
🏢 企业级功能($50K–$250K ACV 能力)
- 🛡️ 生产数据库脱敏与匿名化(HIPAA / GDPR / SOC 2):将经过脱敏的生产 Postgres/MySQL 数据库实时快照传入 MockForge,用逻辑一致的合成模拟数据替换真实客户姓名、SSN 和信用卡信息,同时保留 100% 的外键关系。
- 🌐 临时模拟 API 服务(OpenAPI / Swagger / GraphQL):直接在 CI/CD 测试运行器(GitHub Actions、GitLab CI)中启动即时内存 HTTP 模拟服务,根据架构定义提供动态 REST 端点,无需等待云数据库启动。
- 🔄 双向 ORM 迁移同步器:直接集成 Prisma、Drizzle、SQLAlchemy 和 Django ORM 迁移,在每次 git commit 时重新生成确定性测试样例。
📊 性能基准
- 吞吐量:在内存中生成并验证 88,000+ 行/秒。
- 外键准确性:在 10,000+ 种关系型测试排列中,100% 有效。
- 基础设施成本:$0.00 / 月($0 VPS、$0 云数据库成本)。
- 测试验证:Node.js、WebAssembly 和 Python 3.8+ 共 58 / 58 项测试通过。
💖 通过 Dodo Payments 赞助与支持
MockForge 由 RitualDev Lab 打造。您的赞助将直接用于支持客户端 WebAssembly SQLite/PGlite 测试运行器、合成数据生成算法以及多方言架构样例工具的开发。
⚡ 一键通过 Dodo Payments 结账 • 🎁 交互式捐赠表单(USD 和 INR UPI) • ❤️ GitHub Sponsors
🔒 无需实体配送。由 Dodo Payments(Merchant of Record)提供支持,可即时开具税务发票,并支持全球支付方式(银行卡、UPI、Apple Pay)。
🤝 社区与支持
- 功能请求与 Bug 报告:在我们的公开 Issue 跟踪器中提交 issue。
- 企业许可:联系
[email protected],咨询多席位批量许可、数据库脱敏管道和定制 ORM 同步器。 - 核心开发:由 RitualDev Studio 开发和维护。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。