MCP 连接

状态:已实现
入口:设置 → MCP 连接/set?tab=integration
源码:py_tauri_works/src/pages/integration/src/services/integration/

通过 MCP(Model Context Protocol) 连接外部 Server,为 Works 开发助手 AI / Agent 注册可调用工具(integration.{id}.{tool})。

已废弃:「软件嵌入」

历史文档中的 软件嵌入(GUI 窗口嵌入、纯 CLI 终端操控、IBP 协议)已从产品移除
当前仅保留 MCP 连接(stdio / HTTP Streamable),不含进程嵌入与 CLI 操控。
旧截图 software-embed.png 仅作界面参考,实际 Tab 名为 MCP 连接

外部工具反向调用本应用模型请用 软件连接,不要与 MCP 混淆。


传输方式

传输说明
stdio本地 spawn(python / npx / exe)
HTTP StreamablePOST 远程 MCP endpoint(JSON 或 SSE)

页面说明:不含进程嵌入与 CLI 终端操控


1. 社区 Server 一键添加

设置 → MCP 连接社区 Server添加 MCP

模板命令说明
Filesystemnpx -y @modelcontextprotocol/server-filesystem {path}读写目录
Fetchnpx -y @modelcontextprotocol/server-fetch抓取网页
Memorynpx -y @modelcontextprotocol/server-memory键值记忆
Brave Searchnpx -y @modelcontextprotocol/server-brave-searchBRAVE_API_KEY
GitHubnpx -y @modelcontextprotocol/server-github需 Token
Demo Counterpython server.py本仓库 examples/mcp-python/
Git Deskpython + mcp/server.pyGit Desk 集成
HTTP StreamableURL远程 MCP

列表源码:src/services/integration/mcp/communityPresets.ts


2. 配置字段

字段stdioHTTP
启动命令 / URLexePathmcpUrl
参数args
工作目录workingDir
请求头mcpHeaders(JSON)
MCP 开关mcpEnabledmcpEnabled
记忆分区memoryScopeBinding同左

记忆分区(可选):将本 MCP 相关 Host 记忆挂到 Works 主私域、子私域或保持连接隔离。见 向量记忆分区


3. 侧栏快捷入口

MCP 项可勾选 侧边栏显示;开发者模式下侧栏出现对应图标,路由 /integration/:idMcpSessionPanel)。


4. HTTP Streamable 连接流程

  1. POST initializeprotocolVersion: 2025-03-26
  2. 读取响应头 Mcp-Session-Id(若 Server 支持)
  3. POST notifications/initialized
  4. POST tools/list
  5. 后续 tools/call 等同 stdio

Rust 实现:src-tauri/src/mcp_http.rs


5. Agent Actions

Action说明
integration.mcp.connect连接
integration.mcp.disconnect断开
integration.mcp.listTools列出工具
integration.mcp.listResourcesResources 列表
integration.mcp.readResource读取 Resource
integration.{id}.{tool}动态工具调用

完整列表见 Actions 清单Agent Protocol


6. Resources

integration.mcp.listResources  → { id 或 name }
integration.mcp.readResource   → { id 或 name, uri }

7. 云同步

MCP 配置可随私有云同步到 desktop/{userId}/integrations/mcp.json


相关文档