Notion MCP 用官方远程 URL 再 login,不要抄 rmcp 或 SSE
CLI:codex mcp add notion --url https://mcp.notion.com/mcp,再 mcp login notion。这是 OAuth,目前不能非交互授权。中文教程说 mcp add 不能加 URL、还要 experimental_use_rmcp_client,那是过时路径。
Notion 官方给 Codex 的是远程 Streamable HTTP,不是本地包。CLI 可以一次加完,不必先手改 TOML:
codex mcp add notion --url https://mcp.notion.com/mcp
codex mcp login notion
官方文档只示范了写 ~/.codex/config.toml 再 login,效果一样:
[mcp_servers.notion]
url = "https://mcp.notion.com/mcp"
enabled = true
codex mcp login notion 会走浏览器 OAuth。Notion 写明目前没有非交互授权,不能靠 PAT / bearer 在 CI 里静默登录。网页 Work / Cloud 不读这份本机配置。
不要做这些:
- 不要抄 Claude 的
claude mcp add --transport http。Codex 远程用--url,名字写在add后面。 - 不要抄
/sse。Codex 只要 Streamable HTTP;Notion 的 SSE 是给旧客户端的退路。 - 不要一上来套
npx mcp-remote。Codex 自己会连 HTTP。 - 不要开
experimental_use_rmcp_client/features.rmcp_client当现行前置。那是早期 HTTP 客户端旗标,Figma 那条已经说过不要再抄。 - 不要信「
codex mcp add只能加本地 stdio」。Learn 和本机codex mcp add --help都有--url。 - 不要贴 Claude / Cursor 的
mcpServersJSON,也不要装已经停更的notion-mcp-server开源包当默认。 - 不要给它
required = true挂全局。文档库不是每条会话都要的依赖。 - 不要和 bearer 混用。显式
bearer_token_env_var会盖掉已登录的 OAuth。
项目层 .codex/config.toml 可以给同事同一条 url,每人仍要自己 mcp login。桌面和 IDE 经常只读 ~/.codex,见项目层 MCP 那条。改完新开会话,用 codex mcp get notion 看传输是 streamable_http。