命令行界面增强工具

一个用于增强与Gemini API交互的命令行界面工具,支持通过FastMCP访问多种工具。

  • by jon2allen
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 jon2allen/mcp_command_serv

使用说明

命令行接口增强器(command_cli_enh.py)

这个脚本提供了一个增强的命令行界面,用于与Gemini API进行交互,并利用FastMCP访问工具。

用法

python3 command_cli_enh.py [OPTIONS]

参数

  • -p, --prompt <TEXT>直接从命令行提供提示文本。
  • -f, --file <PATH>指定包含提示信息的文本文件的路径。

注: 你必须提供以下两者之一 --prompt 或者 --file,但不能两者都选。

可用的MCP工具

可用工具概览

--- 工具 1/4 ---

  • 名字: 运行命令
  • 目的: 在本地机器上运行一个shell命令并获取其输出。参数:command:要执行的shell命令。workdir:命令的工作目录。如果为None,则使用当前目录。stdin:可选的输入流,用于将数据传递给命令。返回:一个字典,包含命令的输出、退出代码和错误状态。
  • 输入:
    • 命令*:
    • 工作目录:字符串 | null
    • stdin: <字符串 | null>

--- 工具 2/4 ---

  • 姓名: 获取当前目录
  • 目的: 获取当前工作目录返回字符串 -> 目录(例如“/home/user1”)
  • 输入: (无)

--- 工具3/4 ---

  • 姓名: 改变目录
  • 目的: 将目录更改为指定的字符串,支持相对路径和绝对路径。如果出错,将返回字符串“error: invalid directory”(错误:无效的目录)
  • 输入:
    • c_dir*:(可翻译为)c目录*(或根据上下文,可能指某个特定的配置目录或代码目录等,具体翻译需结合上下文)

--- 工具4/4 ---

  • 姓名: 运行预期脚本
  • 目的: 运行一个交互式程序,该程序包含一系列“期望/发送”操作。适用于需要输入的程序。重要提示:在发送文本时,不要发送回车符或换行符。参数:program:要运行的命令(例如,“python3 myscript.py”)。可以是任何命令。actions:一个字典列表,例如[{"action": "expect", "text": "foo"}, {"action": "send", "text": "bar"}]。返回值:交互过程的输出。
  • 输入:
    • 程序*:
    • 动作*:

############################## 资源: [资源(name='system_info', 标题=None, URI=任意URL('resource://system_info'), 描述='提供有关主机操作系统的基本信息。', MIME类型='text/plain', 大小=None, 图标=None, 注释=None, 元数据={'_fastmcp': {'标签': []}})]

文件 用途
许可证(LICENSE) 包含MIT许可证,授权用户使用、复制、修改和分发该软件。
README.md 提供了项目的总体概述、目的及使用说明。
command_cli_enh.py 一个用于与 mcp_command_server_enh.py 脚本交互的命令行界面(CLI)。
config.toml 项目的配置文件,可能包含服务器和命令行界面(CLI)的设置。
item.py 随机蔬菜和水果生成器 - 用于演示。
list.py 用于列出MCP工具的命令,使用list tools功能。
mcp_command_server_enh.py 主命令服务器脚本,用于监听并执行命令。
orig.py 看起来像是一个早期版本或相关脚本。
pexpect_auto.py 使用 pexpect 库来自动化与另一个程序的交互。
pythagoras.py 一个与勾股定理相关的脚本,可能用于测试或演示。
test1.txt - test7.txt 用于测试脚本功能的测试提示符(或测试用例)。
test_float_input.py 用于测试浮点数输入的脚本。
test_input.py 一个用于测试一般输入的脚本。