在 goose 中集成 Excalidraw MCP App:让 AI Agent 实时绘制手绘风格架构图
在 goose 中集成 Excalidraw MCP App让 AI Agent 实时绘制手绘风格架构图【免费下载链接】goosean open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM项目地址: https://gitcode.com/GitHub_Trending/goose3/goose导读本教程面向希望为 goose 扩展绘图能力的开发者通过在 goose 中接入远程托管的 Excalidraw MCP AppStreamable HTTP 远程扩展你可以让 goose 读取本地配置文件、推理其中的工作流并像人一样实时、逐元素地在 Excalidraw 画布上手绘出架构图与管线图。读完本文你将掌握使用 goose CLI 的goose configure交互命令与 goose Desktop 两种方式注册该扩展的完整步骤、底层配置模型与默认参数并看到一个把视频自动化管线可视化的端到端实例。Excalidraw 扩展能做什么Excalidraw MCP App 是一个将 Excalidraw开源手绘风格白板封装成 MCP Server 的远程应用其公开托管端点即本教程配置的目标https://excalidraw-mcp-app.vercel.app/mcp把它加入 goose 后goose 便获得了一组画图工具它可以把对一段文本、一份配置或一条流水线的理解翻译成一个又一个 Excalidraw 画布元素View / Element并在你的浏览器画布上实时呈现。这正是 goose 官方文档中把它作为Remote MCP Server教程原文出处的原因——无需在本地安装任何绘图进程一个 URL 就能完成注册。goose 本身是可安装、可执行、可编辑、可测试任何 LLM的开源可扩展 AI Agent见仓库根目录 README.md扩展机制是它连接外部工具世界的标准方式Excalidraw 只是众多 MCP 远程扩展中的一员同目录下还有 figma-mcp.md、github-mcp.md 等几十个同类教程可对照。快速安装官方文档为两种界面提供了最短安装路径全程无需手动输入参数。goose Desktop一键启动安装器在 goose Desktop 中点击下面的安装器链接即可把 Excalidraw 预填为一条 http 扩展并开始安装goose://extension?cmdhttpidexcalidrawnameExcalidrawurlhttps%3A%2F%2Fexcalidraw-mcp-app.vercel.app%2FmcpdescriptionExcalidraw%20MCP%20App%20for%20AI-powered%20diagrammingURL 反编码后其携带的参数一目了然type/cmd为 http、idexcalidraw、显示名Excalidraw、端点https://excalidraw-mcp-app.vercel.app/mcp、描述为 Excalidraw MCP App for AI-powered diagramming。goose CLI添加 Remote Extension (Streamable HTTP)CLI 用户无需下载任何本地包只需在扩展类型选择中选用Remote Extension (Streamable HTTP)并填写唯一的关键配置Endpoint URL端点 URLhttps://excalidraw-mcp-app.vercel.app/mcp该类型在 goose 配置中的协议名是streamable_http。在配置模型源码 extension.rs 中可以看到它是ExtensionConfig枚举下的一个独立变体专指通过 MCP Streamable HTTP 规范连接远程端点的客户端因此在自定义 YAML 配置、goose configure交互流程和goose://extension深链中都以streamable_http为标识。完整配置步骤如果你希望看到每一步的交互细节例如自定义名称、超时时间请按下面的向导逐步完成。两种界面操作等价最终都会在 goose 配置中落成同一条 streamable_http 扩展记录。方式一goose Desktop安装器点击上文的安装器链接goose Desktop 会弹出安装确认点击Yes确认安装由于 Excalidraw 公共端点无需鉴权无需填写任何环境变量/Header点击Add Extension完成添加点击左上角的侧边栏按钮打开侧边栏切换到对应的聊天会话即可开始使用。桌面安装器组件负责把这些参数拼接成goose://extension?...链接GooseDesktopInstaller.tsx其中http类型会被映射为typestreamable_http查询参数。方式二goose CLIgoose configure 交互向导在终端中启动配置向导goose configure随后按以下顺序选择/填写交互界面由 CLIExtensionInstructions.tsx 渲染以下为实际步骤的文字还原选择Add Extension在扩展类型中选择Remote Extension (Streamable HTTP)对应提示 Connect to a remote extension via MCP Streamable HTTP为扩展命名例如Excalidraw输入 Streamable HTTP 端点 URIhttps://excalidraw-mcp-app.vercel.app/mcp设置工具超时时间秒默认300 秒输入扩展描述例如Excalidraw MCP App for diagramming询问是否添加 custom headers 时选择No公共端点无需 Header完成提示Added Excalidraw extension。提示在第 5 步为每个工具设置超时时间时goose 配置层提供的默认值是DEFAULT_EXTENSION_TIMEOUT 300见 config/extensions.rs。对于 Excalidraw 这类逐元素实时绘制的远程服务如果一次请求中要生成的元素较多可以考虑按需调大该值避免复杂图形在生成中途被判定超时。进阶直接编辑配置文件以上两步写入的扩展最终都会持久化到 goose 的配置文件macOS/Linux 位于~/.config/goose/config.yaml详见 using-extensions.md 与 config-files.md。手工添加的效果等价于extensions: excalidraw: type: streamable_http name: Excalidraw enabled: true uri: https://excalidraw-mcp-app.vercel.app/mcp headers: {} env_keys: [] envs: {} timeout: 300配置文件中每条扩展都包含enabled开关与扁平化的ExtensionConfig见 extensions.rs。结合 streamable_http 变体的完整字段extension.rs还可以按需扩展headers需要鉴权的私有部署端点时在此配置自定义 HTTP Header本例公共端点留空timeout单次工具调用超时单位秒默认 300socket可选的 Unix Domain Socket 路径用于 HTTP-over-UDS 传输场景client_id/client_secret_key/scopes针对支持 OAuth 的授权服务器的预注册客户端参数适用于未来需要鉴权的 Excalidraw 自托管部署available_tools留空则加载该扩展全部工具若只想暴露画布创建类工具、控制上下文窗口 token 开销可在此列出白名单。一个值得注意的兼容性细节sse类型的旧配置已被弃用goose 会提示 SSE is unsupported, migrate to streamable_http见 extensions.rs因此新接入远程扩展一律使用本文的 streamable_http 形态。使用示例让 goose 画出自己的自动化管线官方教程用一个goose 可视化自身自动化流程的例子演示了接入后的典型工作方式goose 读取用户磁盘上的 recipe 文件理解其中的步骤再通过 Excalidraw 扩展把理解逐元素画到画布上——这正体现了 goose 连接到实时工具、推理工作流、结构化产出的能力闭环。goose Prompt提示词Hey Goose review my video automation recipe and create a visual of the automation pipeline for me. I want clean lines and clear labels.含义让 goose 审阅你的视频自动化 recipe一条可复用的流程定义并把它画成一张清晰的自动化管线可视化图要求线条干净、标签明确。goose Output输出goose 会先展示它读取的文件再调用 Excalidraw 的画布元素创建工具输出示意如下─── reading /Users/ebonyl/Desktop/plug-and-play-video.yaml ────────────────────────── ─── Create View elements: [ {type:cameraUpdate,width:600}, ...] ──────────────────────────关键信息有两点其一goose 在读取 recipe 文件示例为plug-and-play-video.yaml其二它通过工具调用创建了 Excalidraw 的 View 与元素数组如cameraUpdate、width等结构化画布指令。Excalidraw MCP App 收到这些元素后会以手绘风格实时渲染到你已打开的 Excalidraw 画布中对 goose 而言这幅图本质上是一段结构化工具调用的结果而非预先渲染好的图片——因此你可以不断追加提示让它增删节点、调整布局画布会随对话持续演化适合用来把代码、配置或 recipe 中的隐性架构快速外化为可视资产。故障排查与延伸建议端点无响应确认端点 URL 拼写为https://excalidraw-mcp-app.vercel.app/mcp带/mcp路径并检查网络能否访问该域名生成复杂图形超时在goose configure或配置文件中调大timeout默认 300 秒浏览器未同步画面确保已打开 Excalidraw本地端或网页端让 MCP 服务有可回写的画布会话私有/鉴权部署若使用自托管的 Excalidraw MCP 服务可参考 excalidraw-mcp.md 原文档 中指向的部署说明并通过headers或 OAuth 系列字段client_id、client_secret_key、scopes完成认证只想画特定类型内容通过available_tools白名单只暴露你需要的 Excalidraw 工具减少每次会话的 token 消耗见 config-files.md 的工具过滤说明。如果希望深入扩展机制本身可继续阅读 using-extensions.md扩展安装与管理与 config-files.md配置文件与streamable_http字段的完整定义CLI 安装向导的每一步交互文案与默认值均可在 CLIExtensionInstructions.tsx 中核对。【免费下载链接】goosean open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM项目地址: https://gitcode.com/GitHub_Trending/goose3/goose创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考