示例 · MCP
> validate_gesta_map(doc)
{ "valid": true, "errors": [] }
> render_gesta_map(doc, format="svg")
{ "image_base64": "PD94…",
"mime": "image/svg+xml" }三个接口,一个引擎。
HTTP API
REST端点
POST /api/generate → DSL + PNG/SVG POST /api/edit → typed ops POST /api/apply-ops → deterministic patch POST /api/rerender → re-render POST /api/render-svg → SVG, id-tagged layers POST /api/geocode → names → coordinates
MCP
智能体工具
render_gesta_map(doc, format, dpi)
validate_gesta_map(doc) → {valid, errors}
extract_draft_from_prose(prose)
how_to(feature) → self-explain
engine_version()CLI
命令行
$ gesta validate map.gesta.yaml $ gesta render map.gesta.yaml -o out.svg $ gesta geocode map.gesta.yaml --apply $ gesta resolve map.gesta.yaml $ gesta-serve # HTTP · gesta-mcp
确定性编辑
文档的十项类型化操作。
编辑是对AST的操作,而非重新生成——无回归风险,手动编辑得以保留。
create_layermodify_layerdelete_layeradd_memberremove_membermodify_arrowmodify_annotationchange_viewapply_classset_disambiguation
- 确定性
- 相同文档 → 相同地图,精确到像素。在线地理编码已快照化。
- 已验证
- 每份文档均根据V1格式的JSON Schema进行检验。
- 输出
- PNG、SVG(每图层一个<g>)、PDF、JPG。SVG可下游编辑。
- 单一引擎
- API、MCP和CLI都是同一渲染管道的轻量级包装。