终极缝合:喂饭式macOS配置Codex MCP指南
【终极缝合】喂饭式macOS配置Codex MCP指南
本文将为您提供一个详尽的指南,帮助您在macOS上配置Codex CLI以及MCP(Model Context Protocol)服务,实现高效、便捷的AI应用。
一、安装各种工具
首先,您需要安装一些必要的工具,包括Codex和CC Switch。
安装Codex
使用npm全局安装Codex CLI工具。
npm i -g @openai/codex下载安装CC Switch
CC Switch是一个用于管理多个MCP服务的工具,您可以从这里下载并安装它。
二、配置KEY
关于API密钥的配置,请参考各家中转站的文档进行设置,这里不再赘述。
三、安装MCP
在安装MCP之前,请确保您已经安装了npx和uv,并正确配置了源。以下是安装和配置MCP的步骤:
- 打开CC Switch,选择Codex,选择MCP——添加MCP。
- 先使用预设添加上
sequential-thinking和context7,再在自定义里手动添加如下MCP(格式:标题-TOML,自己保存):
ddg-search
type = "stdio"
command = "uvx"
args = [ "duckduckgo-mcp-server" ]
=======分割线=======
@playwright/mcp
type = "stdio"
command = "npx"
args = [ "@playwright/mcp@latest" ]
=======分割线=======
mcp-deepwiki
type = "stdio"
command = "npx"
args = [ "-y", "mcp-deepwiki@latest" ]
- 检查您的codex配置
~/.codex/config.toml,确保它包含以下设置:
disable_response_storage = true
model = "gpt-5"
model_provider = "packycode"
model_reasoning_effort = "high"
# 注意,这里默认是没有api-key的。如果你需要更多的搜索额度,去context7的网站注册申请一个key即可。
[mcp_servers.context7]
args = ["-y", "@upstash/context7-mcp", "--api-key", "你的key"]
command = "npx"
type = "stdio"
[mcp_servers.ddg-search]
args = ["duckduckgo-mcp-server"]
command = "uvx"
type = "stdio"
[mcp_servers.mcp-deepwiki]
args = ["-y", "mcp-deepwiki@latest"]
command = "npx"
type = "stdio"
[mcp_servers.playwright]
args = ["@playwright/mcp@latest"]
command = "npx"
type = "stdio"
[mcp_servers.sequential-thinking]
args = ["-y", "@modelcontextprotocol/server-sequential-thinking"]
command = "npx"
type = "stdio"
[model_providers.packycode]
base_url = "https://codex-api-slb.packycode.com/v1"
env_key = "PACKYCODE_API_KEY"
name = "packycode"
requires_openai_auth = true
wire_api = "responses"四、安装Serena并配置
接下来,我们将安装Serena并配置它以与Codex CLI协同工作。
git clone https://github.com/oraios/serena.git
cd serena
uv run serena start-mcp-server --context codex --transport streamable-http --port 9121然后修改codex配置~/.codex/config.toml,在顶层添加rmcp_client = true,然后在MCP区域添加:
[mcp_servers.serena]
url = "http://127.0.0.1:9121/mcp"五、编写Serena脚本
在您喜欢的目录写一个脚本,比如vi ~/serena.sh,并添加以下内容:
#!/bin/bash
APP_DIR="$HOME/serena"
PID_FILE="$APP_DIR/serena.pid"
COMMAND="uv run serena start-mcp-server --context codex --transport streamable-http --port 9121"
if [ ! -d "$APP_DIR" ]; then
echo "错误: 应用程序目录 '$APP_DIR' 不存在。"
echo "请先创建该目录并放置好您的 serena 项目。"
exit 1
fi
start() {
if [ -f "$PID_FILE" ]; then
PID=$(cat "$PID_FILE")
if kill -0 "$PID" > /dev/null 2>&1; then
echo "Serena 已经在运行中,PID: $PID"
exit 0
else
echo "发现一个无效的 PID 文件,将自动删除它。"
rm "$PID_FILE"
fi
fi
echo "正在启动 Serena..."
cd "$APP_DIR" && $COMMAND > /dev/null 2>&1 &
PID=$!
echo $PID > "$PID_FILE"
sleep 1
if kill -0 $PID > /dev/null 2>&1; then
echo "Serena 启动成功,PID: $PID"
else
echo "Serena 启动失败,请检查配置或手动执行命令排查问题。"
rm "$PID_FILE"
exit 1
fi
}
stop() {
if [ ! -f "$PID_FILE" ]; then
echo "Serena 未在运行 (未找到 PID 文件)。"
exit 0
fi
PID=$(cat "$PID_FILE")
if ! kill -0 "$PID" > /dev/null 2>&1; then
echo "Serena 未在运行 (但找到了一个无效的 PID 文件)。"
rm "$PID_FILE"
exit 0
fi
echo "正在停止 Serena (PID: $PID)..."
kill "$PID"
rm "$PID_FILE"
echo "Serena 已停止。"
}
case "$1" in
start)
start
;;
stop)
stop
;;
*)
echo "用法: $0 {start|stop}"
exit 1
;;
esac
exit 0每次开机的时候执行一次~/serena.sh start即可启动Serena服务。如果您希望加入开机自启服务,可以自行添加相关配置。由于macOS用户通常不太喜欢频繁关机,因此这里没有加入开机自启的设置。
参考资料
希望这个指南能够帮助您成功配置Codex CLI和MCP服务,享受高效便捷的AI应用体验!
评论已关闭