MCP 服务器
OpenCowork 的 MCP 服务器管理、连接、发现和调用流程。
MCP 服务器 / MCP Servers
OpenCowork 支持 Model Context Protocol (MCP),用来把外部工具、资源和 prompts 接入 Agent。
配置存储 / Config storage
MCP 服务器配置会被写入:
~/.open-cowork/mcp-servers.json主进程会在启动时自动连接所有 enabled=true 的 server。
支持的 transport / Supported transports
| transport | 场景 |
|---|---|
stdio | 本地 CLI / 本地进程 |
sse | 远程 HTTP + SSE |
streamable-http | 新式 HTTP 传输 |
streamable-http 失败时还可以按配置回退到 sse。
主要 IPC / Main IPC
MCP 主进程 handler 提供这些能力:
mcp:listmcp:addmcp:updatemcp:removemcp:connectmcp:disconnectmcp:statusmcp:server-infomcp:all-servers-infomcp:list-toolsmcp:call-toolmcp:read-resourcemcp:list-resourcesmcp:get-promptmcp:list-promptsmcp:refresh-capabilities
Server 配置 / Server config
McpServerConfig 常见字段:
| 字段 | 作用 |
|---|---|
id / name | server 标识 |
enabled | 是否启用 |
projectId | 是否绑定到某个项目 |
transport | stdio / sse / streamable-http |
command / args / env / cwd | stdio 进程配置 |
url / headers | HTTP/SSE 配置 |
autoFallback | streamable-http 失败后是否回退 |
description | 说明 |
能力发现 / Capability discovery
连接成功后,OpenCowork 会把 server 暴露出来的:
- tools
- resources
- prompts
都整理到前端可用的列表里。Agent 就能像使用本地工具一样使用这些能力。
典型流程 / Typical flow
- 在设置里新增 MCP server
- 保存到
mcp-servers.json - 启动或手动连接 server
- 读取工具 / 资源 / prompts
- 在对话里直接调用
- server 断开后,能力自动消失
示例 / Example
{
"id": "github",
"name": "GitHub MCP",
"enabled": true,
"transport": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "..."
}
}什么时候该用 MCP? / When to use MCP?
- 访问外部系统 API
- 读写第三方资源
- 把 CLI 工具接进 Agent
- 想把团队内部服务暴露成可调用能力