项目简介

'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 模型进行对话和任务处理。

安装步骤

  1. 安装 Go: 确保你的系统已安装 Go 语言环境 (版本 1.16 或更高)。
  2. 获取项目: 使用 'go get' 命令安装 'gpt' 工具:
    go install github.com/elsejj/gpt@latest
    确保 '$GOPATH/bin' 目录已添加到你的 'PATH' 环境变量中,以便直接运行 'gpt' 命令。

服务器配置 (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" "你的问题"

基本使用方法

  1. 简单提问: 直接在命令行中输入问题:

    gpt "你好,你是谁?"
  2. 使用 MCP 服务器进行工具调用: 使用 '-M' 参数指定 MCP 服务器,然后提问,GPT 可能会调用 MCP 服务器提供的工具来辅助回答:

    gpt -M "/path/to/server.py" "计算 223020320 加 2321 的结果"

    或者连接远程服务器:

    gpt -M "http://127.0.0.1:8000/sse" "查询今天的股票信息"
  3. 更多功能: '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 提供的示例。

信息

分类

开发者工具