MCP服务器切换工具

一个基于终端的UI工具,用于管理OpenAI Codex中的MCP(Model Context Protocol)服务器,无需手动编辑TOML配置文件即可轻松切换服务器状态。

  • by Parham125
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Parham125/Codex-MCP-Toggling

使用说明

Codex MCP服务器切换管理器

一种基于终端的UI工具,用于管理OpenAI Codex中的MCP(模型上下文协议)服务器。无需手动编辑TOML配置文件,即可轻松打开/关闭服务器。

特性

  • 基于交互式诅咒的终端用户界面
  • 在活动和非活动状态之间切换MCP服务器
  • 自动化管理 ~/.codex/config.toml 和 ~/.codex/config-toggled.toml
  • 颜色编码状态指示器
  • 键盘导航

需求

  • Python 3.13(或Python 3.11+)
  • curses模块(通常预装在类Unix系统上)
  • tomli-w包

安装

1.安装Python 3.13

apt-get update && \
apt-get install -y software-properties-common curl && \
add-apt-repository -y ppa:deadsnakes/ppa && \
apt-get update && \
apt-get install -y python3.13 python3.13-venv python3.13-dev build-essential libssl-dev libffi-dev cargo && \
apt-get remove -y python3-blinker && \
curl -sS https://bootstrap.pypa.io/get-pip.py | python3.13

2.克隆或下载此存储库

git clone https://github.com/Parham125/Codex-MCP-Toggling
cd Codex-MCP-Toggling

3.安装依赖项

pip install -r requirements.txt

4.使脚本可执行

chmod +x main.py

用法

直接运行

./main.py

创建全局命令

要从任何地方运行该工具,请在PATH中创建一个bash脚本:

  1. 为本地二进制文件创建一个目录(如果不存在):
mkdir -p ~/.local/bin
  1. 创建包装器脚本(用实际安装路径替换路径):
cat > ~/.local/bin/codex-mcp-toggle << 'EOF'
#!/bin/bash
exec python3.13 /path/to/Codex-MCP-Toggling/main.py "$@"
EOF

[!注意] 替换 /path/to/Codex-MCP-Toggling/ 使用克隆存储库的实际路径。

  1. 使其可执行:
chmod +x ~/.local/bin/codex-mcp-toggle
  1. 确保 ~/.local/bin 在你的路径。增添 ~/.bashrc 或 ~/.zshrc:
export PATH="$HOME/.local/bin:$PATH"
  1. 重新加载shell配置:
source ~/.bashrc  # or source ~/.zshrc

现在你可以跑了 codex-mcp-toggle 从任何地方!

控制

  • ↑/↓ -在服务器间导航
  • 太空 -打开/关闭服务器
  • q -退出

状态指示灯

  • [✓] 绿色-服务器处于活动状态
  • [ ] 红色-服务器处于非活动状态

运作原理

该工具管理两个TOML配置文件:

  • ~/.codex/config.toml -活动MCP服务器(由Codex使用)
  • ~/.codex/config-toggled.toml -非活动MCP服务器(已关闭)

切换服务器时:

  • 活跃的→ 未激活:服务器配置从 config.toml 到 config-toggled.toml
  • 未激活→ 活跃的:服务器配置从 config-toggled.toml 到 config.toml

支持的MCP服务器配置

切换时,该工具会保留所有服务器配置选项:

STDIO服务器:

  • command -启动器命令
  • args -命令参数
  • env -环境变量
  • cwd -工作目录
  • env_vars -列入白名单的环境变量

流式HTTP服务器:

  • url -端点URL
  • bearer_token_env_var -来自环境的承载令牌
  • http_headers -硬编码标题
  • env_http_headers -来自环境的标头

常见选项:

  • startup_timeout_sec -启动超时覆盖
  • tool_timeout_sec -每个工具超时覆盖
  • enabled -启用/禁用标志
  • enabled_tools -工具列表
  • disabled_tools -工具块列表

备注

  • 如果配置文件不存在,该工具会自动创建配置文件
  • 所有更改都会立即保存
  • 切换时保留服务器配置
  • 切换服务器以使更改生效后重新启动Codex

相关项目