Context7 MCP 跟 Learn 示例走 stdio,密钥不要写进 args

Learn 免费入门:codex mcp add context7 -- npx -y @upstash/context7-mcp。厂商页的 --api-key、startup_timeout_ms、字面量 http_headers 不要抄。Cloud 不读这份 config.toml。

Learn 的 MCP 页用 Context7 当 stdio 示例。CLI 要把命令写在 -- 后面:

codex mcp add context7 -- npx -y @upstash/context7-mcp

免费额度不强制 API key。codex mcp get context7 --json 应看到传输是 stdio、命令是 npx、参数里是 @upstash/context7-mcp。冷 npxstartup_timeout_sec 提到 20。

要提高限额时,密钥从启动 Codex 的进程转发,不要写进 args(会进进程列表和 config):

[mcp_servers.context7]
command = "npx"
args = ["-y", "@upstash/context7-mcp"]
env_vars = ["CONTEXT7_API_KEY"]
startup_timeout_sec = 20
enabled = true

远程托管也可以,地址是 https://mcp.context7.com/mcp。用 bearer_token_env_var,不要把 token 写进 TOML:

[mcp_servers.context7]
url = "https://mcp.context7.com/mcp"
bearer_token_env_var = "CONTEXT7_API_KEY"
enabled = true

不要做这些:

  • 不要抄厂商 Codex 页里的 args--api-key,也不要把 startup_timeout_ms = 20_000 当主键。现行键是 startup_timeout_sec
  • 不要把 Authorization: Bearer …CONTEXT7_API_KEY 字面量写进 http_headers。HTTP 走 bearer_token_env_var,自定义头走 env_http_headers
  • 不要贴 Claude / Cursor 的 mcpServers JSON。Codex 写 ~/.codex/config.toml
  • 不要给这台 required = true 挂全局。文档检索不是每条会话都要的依赖。
  • 不要给这台 stdio 再写 --port 当 HTTP。已经在跑的托管服务才用上面的 url
  • 不要把 Windows 的 npx.cmd + SystemRoot 抄进 WSL。原生 Windows 超时见启动超时那条。
  • 不要写 args 里的 ${CONTEXT7_API_KEY}。TOML 占位符不会展开;stdio 靠服务器读环境,名字必须先出现在 env_vars

npx ctx7 setup --codex 会改 config.toml AGENTS.md。提交前自己审 diff,不要当成静默的官方唯一路径。插件备选是 codex plugin marketplace add upstash/context7,再 codex plugin add context7@context7-marketplace,然后新开线程。这不比 Learn 的 mcp add 更「官方」。

厂商文宣称 CLI / 桌面 / IDE / Cloud 共用 ~/.codex/config.toml。本站已核对:网页 Work / Cloud 不读这份文件。Cloud 要在网页环境的工具里单独加。改完新开会话。

来源