项目简介
Codex Shell工具MCP服务器是OpenAI Codex项目中的一个关键组件,旨在为大型语言模型(LLM)客户端提供一套标准化的接口,用于安全、受控地执行本地shell命令和脚本。它遵循Model Context Protocol (MCP),通过JSON-RPC协议与客户端通信,使得LLM能够扩展其功能,与本地操作系统环境进行交互,例如执行文件操作、系统查询或运行开发工具。
主要功能点
- 安全的本地shell命令执行: 服务器提供一个受限的沙盒环境,确保LLM客户端发出的shell命令在安全范围内执行,防止对系统造成未授权的访问或破坏。
- 标准化的工具调用接口: 将复杂的shell命令抽象为易于LLM理解和调用的工具,通过MCP协议进行通信,简化了LLM与底层系统的集成。
- 上下文信息回传: 命令执行的结果、标准输出、错误信息等会作为结构化的上下文信息,通过MCP协议返回给LLM客户端,帮助LLM更好地理解执行状态并进行后续决策。
- 跨平台兼容性: 支持在Linux和macOS操作系统上运行,确保了广泛的适用性。
安装步骤
要安装和构建Codex Shell工具MCP服务器,您需要完成以下步骤:
- 安装Node.js: 确保您的开发环境已安装Node.js运行时。
- 克隆GitHub仓库:
首先,将整个Codex项目仓库克隆到您的本地机器。
git clone https://github.com/openai/codex.git cd codex - 构建Shell工具MCP服务器:
进入 'shell-tool-mcp' 目录,安装Node.js依赖并构建服务器启动脚本。此步骤将生成一个Node.js启动脚本,该脚本负责启动底层的Rust MCP服务器二进制文件。
成功构建后,您将在 'codex/shell-tool-mcp/bin' 目录下找到一个名为 'mcp-server' 的启动脚本。cd shell-tool-mcp npm install npm run build
服务器配置 (供MCP客户端使用)
为了让MCP客户端(例如OpenAI Codex CLI agent或其他兼容MCP的LLM应用)能够连接并使用此服务器,您需要在客户端的配置文件中添加该MCP服务器的连接信息。以下是一个示例配置格式,您只需提供启动服务器所需的命令及其参数即可:
# 示例:MCP客户端的配置文件片段 # (这通常是一个JSON或TOML文件,具体格式取决于您的MCP客户端) [mcp_servers] # server_name 字段可以自定义,例如 "my_shell_tool" my_shell_tool = { # command 字段指向您构建后得到的 mcp-server 启动脚本的路径。 command = "codex/shell-tool-mcp/bin/mcp-server", # args 字段通常保持为空数组,因为启动脚本会自动处理大部分配置。 args = [], }
- 'my_shell_tool': 这是您为该MCP服务器定义的唯一名称。MCP客户端将使用此名称来识别并调用服务器上提供的工具。
- 'command': 指定用于启动服务器的脚本路径。根据上述安装步骤,它的完整路径应为 'codex/shell-tool-mcp/bin/mcp-server'。
- 'args': 启动服务器时传递给 'mcp-server' 脚本的额外参数列表。默认情况下,此服务器不需要特殊启动参数,因此可以是一个空数组。
基本使用方法 (集成到MCP客户端)
一旦MCP客户端成功配置了Codex Shell工具MCP服务器,LLM即可通过工具调用的方式,向 'my_shell_tool' 服务器发送请求以执行shell命令。例如,LLM可能会生成一个类似于 "Call tool 'my_shell_tool.shell' with arguments '{"command": "ls -l", "cwd": "/path/to/project"}'" 的内部指令。服务器将接收此请求,在沙盒中执行 'ls -l' 命令,并将执行结果(如文件列表)返回给LLM客户端,以供LLM分析和决策。
信息
分类
开发者工具