Skip to content

MCP、REST 与应用内 Agent

Eidograph 提供三条 Agent 路径,但它们最终调用同一组工具:

路径适合场景可用位置
应用内 Agent直接用自然语言创建或修改当前项目Windows 与 Android 应用
MCP Streamable HTTP支持远程 HTTP MCP 的 Agent 平台Windows 应用
JSON REST API自动化脚本、工作流和自建 AgentWindows 应用

工具修改脚本前会先编译候选内容。含编译错误或“命令被跳过”警告的修改会被拒绝,当前脚本保持不变;成功修改会立即保存、重绘并进入普通撤销历史。

启用原生服务

  1. 在已安装的应用中打开设置 › MCP / REST 服务器
  2. 开启服务器,确认状态显示运行中。默认端口是 14159
  3. 在工具列表中只启用客户端需要的权限。
  4. 图形面板检查每个图形旁的暴露圆点:实心表示外部客户端可访问。
  5. 默认只监听本机;只有在可信网络中才开启 LAN 模式。

默认端点:

txt
MCP   http://127.0.0.1:14159/mcp
REST  http://127.0.0.1:14159/api/v1

DANGER

LAN 模式监听 0.0.0.0,没有身份验证,也没有互联网中继。网络内的原生客户端可以调用你启用的工具。只在受信任网络使用,并在结束后关闭。

连接 MCP 平台

对于支持 Streamable HTTP 传输的客户端(例如应用内可直接复制配置所面向的 Trae / WorkBuddy),加入下面的服务器配置:

json
{
  "mcpServers": {
    "Eidograph": {
      "url": "http://127.0.0.1:14159/mcp",
      "transport": "streamable-http",
      "disabled": false
    }
  }
}

不同平台的配置文件位置和外层字段可能不同,但核心信息只有服务器名称、URL 和 Streamable HTTP 传输。若某个平台只支持本地 stdio MCP 进程,不能把 URL 直接填入 command 字段;需要该平台支持的 HTTP 连接器或桥接程序。

连接后先让客户端执行工具发现,再读取当前脚本或命令注册表。推荐的 Agent 顺序是:

  1. list_figures 确认目标图形;
  2. get_scriptlist_objects 理解现状;
  3. list_commands 查询当前 2D/3D 方言的有效语法;
  4. 优先用 append_commands 增量修改;只有重写已有行时才用 set_script
  5. 调用 list_diagnostics 检查结果,必要时修正后重试。

调用 REST API

先检查状态与工具:

bash
curl http://127.0.0.1:14159/api/v1/status
curl http://127.0.0.1:14159/api/v1/tools

创建两个点和一条线段:

bash
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 聊天”。