MCP、REST 与应用内 Agent
Eidograph 提供三条 Agent 路径,但它们最终调用同一组工具:
| 路径 | 适合场景 | 可用位置 |
|---|---|---|
| 应用内 Agent | 直接用自然语言创建或修改当前项目 | Windows 与 Android 应用 |
| MCP Streamable HTTP | 支持远程 HTTP MCP 的 Agent 平台 | Windows 应用 |
| JSON REST API | 自动化脚本、工作流和自建 Agent | Windows 应用 |
工具修改脚本前会先编译候选内容。含编译错误或“命令被跳过”警告的修改会被拒绝,当前脚本保持不变;成功修改会立即保存、重绘并进入普通撤销历史。
启用原生服务
- 在已安装的应用中打开设置 › MCP / REST 服务器。
- 开启服务器,确认状态显示运行中。默认端口是
14159。 - 在工具列表中只启用客户端需要的权限。
- 在图形面板检查每个图形旁的暴露圆点:实心表示外部客户端可访问。
- 默认只监听本机;只有在可信网络中才开启 LAN 模式。
默认端点:
MCP http://127.0.0.1:14159/mcp
REST http://127.0.0.1:14159/api/v1DANGER
LAN 模式监听 0.0.0.0,没有身份验证,也没有互联网中继。网络内的原生客户端可以调用你启用的工具。只在受信任网络使用,并在结束后关闭。
连接 MCP 平台
对于支持 Streamable HTTP 传输的客户端(例如应用内可直接复制配置所面向的 Trae / WorkBuddy),加入下面的服务器配置:
{
"mcpServers": {
"Eidograph": {
"url": "http://127.0.0.1:14159/mcp",
"transport": "streamable-http",
"disabled": false
}
}
}不同平台的配置文件位置和外层字段可能不同,但核心信息只有服务器名称、URL 和 Streamable HTTP 传输。若某个平台只支持本地 stdio MCP 进程,不能把 URL 直接填入 command 字段;需要该平台支持的 HTTP 连接器或桥接程序。
连接后先让客户端执行工具发现,再读取当前脚本或命令注册表。推荐的 Agent 顺序是:
list_figures确认目标图形;get_script与list_objects理解现状;list_commands查询当前 2D/3D 方言的有效语法;- 优先用
append_commands增量修改;只有重写已有行时才用set_script; - 调用
list_diagnostics检查结果,必要时修正后重试。
调用 REST API
先检查状态与工具:
curl http://127.0.0.1:14159/api/v1/status
curl http://127.0.0.1:14159/api/v1/tools创建两个点和一条线段:
curl -X POST http://127.0.0.1:14159/api/v1/tools/append_commands \
-H "Content-Type: application/json" \
-H "X-Eidograph-Client: my-agent" \
-d '{"commands":"point A -2 0\npoint B 2 0\nsegment s A B"}'响应使用统一结构:成功为 {"ok":true,"result":...},失败为 {"ok":false,"error":...}。X-Eidograph-Client 是可选的,会让设置中的活动记录显示易读的调用方名称。
当前工具包括读取与列出图形、创建图形、追加/替换脚本、列出对象/诊断/命令、在画布上选中对象,以及把暴露图形导出为 SVG 或 PNG。服务器的工具开关与图形暴露开关会在每次调用时生效。
配置应用内 Agent
在设置 › Agent中可以保存多个模型,并在 Agent 面板头部切换。支持三类协议:
- OpenAI 兼容的 Chat Completions 端点;
- Anthropic Messages;
- Google Gemini / Vertex
generateContent。
每个模型填写显示名称、提供商、Base URL、API 密钥和模型 ID。模型列表获取失败时仍可手动输入 ID。Ollama、LM Studio 等本地端点也可以使用,但端点需要允许应用 WebView 发起跨域请求(CORS)。
应用内 Agent 可附加或粘贴图片,适合把课本照片或草图转成构造。模型是否支持视觉输入由端点决定;不支持时错误会显示在对话中。
权限与数据边界
- 应用内 Agent 和外部客户端没有隐藏的特权路径,均受同一工具定义约束。
- 外部修改只作用于活动项目,并遵守每个图形的暴露状态。
- API 密钥不会写入
.eido。Windows 和 Android 应用使用系统保护的凭据存储。 - Agent 聊天默认不进入
.eido,需要共享时必须显式开启“包含 Agent 聊天”。
