面向心理咨询师、社会工作者、教育者和学生的现代开源、浏览器优先、McGoldrick 风格家系图编辑器。
绘制家庭结构图不应该依赖通用绘图工具,也不应该把时间浪费在反复对齐人物和关系线上。
Genogram Canvas 提供专门用于结构化家系图的编辑器,同时让开源版本保持本地运行、代码可检查。
| 常见方式 | OpenGenogram |
|---|---|
| 通用绘图或幻灯片工具 | 提供专门的人物、家庭和情感关系元素 |
| 只能安装在桌面端的软件 | 使用浏览器界面,也可部署为纯静态网站 |
| 云端优先的编辑器 | 项目保存在当前浏览器的 IndexedDB 中 |
| 手动整理资料和排版 | 可选 MCP 工具可生成、校验并自动布局可导入项目 |
- McGoldrick 风格符号: 支持人物、家庭边界、备注、家庭秘密和关系线。
- 家庭与情感关系: 支持伴侣、亲子、兄弟姐妹、双胞胎、收养或寄养,以及情感关系图形。
- 实用编辑能力: 支持撤销与重做、多选、拖动、调整大小、标签和视图控制。
- 本地多项目工作区: 可以新建、重命名、删除和重新打开保存在当前浏览器中的项目。
- 可迁移项目文件: 支持带校验的版本化 JSON 导入与导出。
- 无水印 PNG 导出: 开源版画布可以导出无水印 PNG 图片。
- 本地 MCP Server: 通过兼容的 AI 客户端生成和校验家系图项目。
- 纯静态、无后端依赖: 不包含登录、支付、数据分析、云端项目存储或后端 API。
可选的本地 MCP Server 可以让 Codex、Claude Desktop、Cursor 等兼容 MCP 的客户端,根据结构化案例信息生成自动布局的家系图项目。
- 先从案例笔记中移除身份信息和不必要的敏感内容。
- 让支持 MCP 的 AI 客户端调用
generate_genogram。 - 按建议文件名保存返回的项目 JSON。
- 从 Genogram Canvas Dashboard 导入该 JSON 文件。
示例提示词:
使用
generate_genogram创建一张家系图:Alex 和 Jordan 已婚,他们的孩子是 Sam。Alex 出生于 1988 年,Jordan 出生于 1990 年,Sam 出生于 2016 年。请返回可导入 Genogram Canvas 的项目。
MCP Server 本身不会调用模型或发起网络请求,但你选择的 AI 客户端或模型服务商仍可能处理提交的文字。处理敏感信息前,请先阅读隐私边界。
请使用仍在维护的 Node.js LTS 版本:20.19+、22.13+ 或 24+。
git clone https://github.com/vsandre/OpenGenogram.git
cd OpenGenogram
npm install
npm run dev构建 MCP 可执行文件:
npm run mcp:build添加到 Codex。请把示例路径替换成仓库在你电脑上的绝对路径:
codex mcp add OpenGenogram -- node /absolute/path/to/OpenGenogram/dist/genogram-mcp.mjsClaude Desktop、Cursor 和其他支持 stdio 的 MCP 客户端可以使用对应配置:
{
"mcpServers": {
"OpenGenogram": {
"command": "node",
"args": ["/absolute/path/to/OpenGenogram/dist/genogram-mcp.mjs"]
}
}
}Server 提供三个工具:
generate_genogram:把人物、家庭和关系转换成经过校验并自动布局的项目。validate_genogram:按照当前项目格式校验已有家系图。get_genogram_notation:列出可用的性别和关系类型。
运行 npm run test:mcp,可以通过真实 stdio 连接验证打包后的 MCP Server。
npm run test:genogram
npm run test:mcp
npm run lint
npm run buildnpm run build 会把可部署的静态站点输出到 out/。
运行 npm run build,然后把 out/ 目录中的内容上传到任意静态托管服务的根目录。开源应用不需要环境变量或后端服务。
在这个独立开源版本中,家系图数据会保留在当前浏览器内,除非用户主动下载 JSON 或 PNG 文件。患者身份信息、姓名和图表不会发送到本项目的后端。
项目容量取决于浏览器可用存储空间。清除浏览器数据可能会删除全部本地项目,因此重要项目请下载 JSON 备份。
本地 MCP Server 不会发起网络请求,但提示词中的信息仍可能由你选择的 AI 客户端或模型服务商处理。提交敏感的家庭或健康信息之前,请先查看相应服务商的条款。
仅采用本地优先架构并不代表已经满足 HIPAA 或其他法规要求。机构仍需根据自己的制度、设备、工作流程和服务商进行合规评估。
欢迎开发者和家系图领域的实践者参与贡献。
- 缺少某种符号或关系类型?请附上参考资料和使用场景,提交 Issue。
- 发现 Bug 或有改进建议?欢迎提交范围清晰的 Pull Request。
OpenGenogram 使用 MIT License。This product is derived from Genogram Canvas version 1.0.0. 第三方依赖声明请查看 THIRD_PARTY_LICENSES.md。