MCP 服务器扩展 agent 能做的事 —— 一个数据库、一个工单系统、一个内部 API。Cetas 从两处读取它们的配置:
<CETAS_HOME>/.cetas/mcp.json # 用户级
<cwd>/.mcp.json # 项目级同名的服务器以项目级为准,所以一个仓库可以钉住它需要的那套服务器,而不去动别人 home 目录里的东西。
什么时候连
| 入口 | 默认 | 改动方式 |
|---|---|---|
| 终端 | 第一个回合时连 | — |
| 编辑器(ACP) | 第一个回合时懒加载 | CETAS_MCP_MODE=eager 改为启动时连 |
| 编辑器提供的服务器 | 始终 eager | 这些服务器归编辑器所有 |
默认懒加载,是因为启动不该被你这轮根本不用的服务器卡住。连不上的服务器表现为工具失败,而不是启动失败。
各入口能看到哪些服务器
- 终端和编辑器都组合了 MCP 扩展,所以两者都读上面两个文件。
- 编辑器还可以通过 ACP 直接提供服务器定义。那些服务器归编辑器:Cetas 不会写回去,终端也看不到。
排查连接问题
CETAS_DEBUG_MCP_CATALOG=1 cetas-acp会把每个会话在组装时的工具目录 dump 到 <CETAS_HOME>/.cetas/debug/<session-id>-catalog.json —— 回答“服务器连上了吗?它到底暴露了什么?“最快的方式。要看线上细节,用 CETAS_DEBUG_WIRE=1。
先看目录:一个连上了但没暴露工具的服务器,是服务器的问题,不是 Cetas 的问题,而目录能让这个区分一目了然。