连接 Dagu MCP
启动 Dagu 后连接 /mcp。使用 builtin 鉴权时,通过 DAGU_MCP_API_KEY 环境变量提供 API key。
Dagu 文档包含 Codex 的配置说明。MCP 做在 Dagu HTTP 服务里,不用再装客户端包。先 dagu start-all。本机入口是 http://localhost:8080/mcp,带 /mcp。官方写:只有客户端和 Dagu 在同一台机器时才用 localhost。远程换成 https://dagu.example.com/mcp。服务挂在 /dagu 这种 base path 时,MCP 在 https://dagu.example.com/dagu/mcp,漏了前缀会 404。
无鉴权(none)只给隔离本机:
codex mcp add dagu --url http://localhost:8080/mcp
builtin 鉴权要 API key。官方 Codex 命令:
codex mcp add dagu --url http://localhost:8080/mcp --bearer-token-env-var DAGU_MCP_API_KEY
[mcp_servers.dagu]
url = "http://localhost:8080/mcp"
bearer_token_env_var = "DAGU_MCP_API_KEY"
enabled = true
--bearer-token-env-var 填的是变量名,不是 key。Codex 从启动环境中读取 DAGU_MCP_API_KEY。先 export 再开 codex。从 Dock 或开始菜单启动的桌面应用通常不会加载终端环境变量。Codex 不读 .env。客户端对照表写明:Codex 只走 Bearer,而且只从环境变量取。通过环境变量保存凭据。此服务使用 API key 认证,无需运行 mcp login dagu。
角色跟 Web UI / REST 同一套:viewer 只读,operator 能跑/停,developer 才能改 DAG。给 AI 的 key 尽量只开 mcp surface,无需同时开放 rest_api。可以先让它 dagu_read dagu://reference/authoring。改工作流先 dagu_change 的 mode=preview,确认后再 apply。跑任务走 dagu_execute。
Dagu 的连接配置保存在用户层 ~/.codex/config.toml。使用独立 profile 时,文件为 ~/.codex/名字.config.toml,通过 --profile 加载。
网页 Cloud 不读取 ~/.codex/config.toml。修改后重新打开会话。用 codex mcp get dagu 看传输是 streamable_http。会话里 /mcp 应列出 dagu_read、dagu_change、dagu_execute。