项目简介
'gpt' 命令行工具是一个用于与 GPT 兼容的 API 服务交互的客户端。它扩展了基本 GPT 交互,允许用户通过 Model Context Protocol (MCP) 服务器利用外部工具和管理上下文信息。通过 '-M' 参数,'gpt' 可以连接到本地或远程 MCP 服务器,从而调用服务器注册的工具,实现更复杂和功能丰富的 LLM 应用。
主要功能点
- MCP 服务器集成: 支持通过 Model Context Protocol (MCP) 服务器扩展 GPT 的能力。
- 工具调用: 允许 GPT 通过 MCP 服务器调用外部工具,执行计算、数据查询等操作。
- 本地/远程 MCP 服务器: 支持连接本地脚本实现的 MCP 服务器 (STDIO) 和远程 HTTP SSE MCP 服务器。
- 灵活的 MCP 服务器配置: 可以通过命令行参数指定 MCP 服务器的启动方式和连接地址。
- 便捷的 GPT 交互: 提供简洁的命令行接口,方便用户与 GPT 模型进行对话和任务处理。
安装步骤
- 安装 Go: 确保你的系统已安装 Go 语言环境 (版本 1.16 或更高)。
- 获取项目: 使用 'go get' 命令安装 'gpt' 工具:
确保 '$GOPATH/bin' 目录已添加到你的 'PATH' 环境变量中,以便直接运行 'gpt' 命令。go install github.com/elsejj/gpt@latest
服务器配置 (MCP 客户端配置)
'gpt' 工具本身是 MCP 客户端,需要配置如何连接和启动 MCP 服务器。通过 '-M' 参数可以指定 MCP 服务器。
1. 本地 MCP 服务器 (脚本):
使用 '-M' 参数后跟本地 MCP 服务器脚本的路径来启动和连接本地服务器。
- 'command': 本地 MCP 服务器脚本的路径。
- 'args': 脚本启动参数 (可选)。
例如,如果你的 MCP 服务器脚本是 'server.py',可以使用以下命令启动并与之交互:
gpt -M "/path/to/server.py" "你的问题"
或者,如果脚本需要参数,例如:
gpt -M "/path/to/server.py arg1 arg2" "你的问题"
'gpt' 会自动根据脚本类型 (如 '.py', '.js', '.go' 等) 选择合适的解释器 (如 'python3', 'node', 'go run' 等) 运行脚本。
2. 远程 MCP 服务器 (HTTP SSE):
使用 '-M' 参数后跟远程 MCP 服务器的 SSE 地址来连接远程服务器。
- 'url': 远程 MCP 服务器的 SSE 端点 URL。
例如,如果你的远程 MCP 服务器地址是 'http://127.0.0.1:8000/sse',可以使用以下命令连接并与之交互:
gpt -M "http://127.0.0.1:8000/sse" "你的问题"
基本使用方法
-
简单提问: 直接在命令行中输入问题:
gpt "你好,你是谁?" -
使用 MCP 服务器进行工具调用: 使用 '-M' 参数指定 MCP 服务器,然后提问,GPT 可能会调用 MCP 服务器提供的工具来辅助回答:
gpt -M "/path/to/server.py" "计算 223020320 加 2321 的结果"或者连接远程服务器:
gpt -M "http://127.0.0.1:8000/sse" "查询今天的股票信息" -
更多功能: 'gpt' 还支持从文件读取 prompt ('gpt samples/hello.md'),使用系统 prompt ('gpt -s samples/system.md "问题"'),以及处理图片 ('gpt -i samples/cat.jpg samples/image.md') 等功能,具体请参考仓库 README 文档。
注意: 使用 MCP 服务器功能需要预先配置并运行兼容 MCP 协议的服务器端程序,例如仓库中提到的 'server.py' 脚本或 MCP Python SDK 提供的示例。
信息
分类
开发者工具