README
🚀 命令行界面增强工具 (command_cli_enh.py)
本脚本借助 FastMCP 实现工具访问,为与 Gemini API 交互提供了增强的命令行界面。
🚀 快速开始
💻 使用示例
python3 command_cli_enh.py [OPTIONS]
📋 参数说明
-p,--prompt <TEXT>:直接从命令行提供提示文本。-f,--file <PATH>:指定包含提示文本的文本文件路径。
⚠️ 重要提示
你必须提供
--prompt或--file其中之一,但不能同时提供。
✨ 主要特性
可用的 MCP 工具
可用工具概述
-
工具 1/4 - run_command
- 名称:run_command
- 用途:在本地机器上运行 shell 命令并获取输出。参数:command 为要执行的 shell 命令;workdir 为命令的工作目录,若为 None,则使用当前目录;stdin 为可选的要输入到命令中的标准输入。返回值为包含命令输出、退出代码和错误状态的字典。
- 输入:
- command*:
- workdir: <string | null>
- stdin: <string | null>
-
工具 2/4 - get_current_dir
- 名称:get_current_dir
- 用途:获取当前工作目录,返回字符串形式的目录(例如 "/home/user1")。
- 输入:无
-
工具 3/4 - change_dir
- 名称:change_dir
- 用途:将目录更改为指定的字符串,支持相对和绝对路径。若出现错误,将返回字符串 "error: invalid directory"。
- 输入:
- c_dir*:
-
工具 4/4 - run_expect_script
- 名称:run_expect_script
- 用途:针对需要输入的交互式程序,通过一系列 expect/send 操作来运行程序。重要提示:在 send 操作中不要发送回车符或换行符。参数:program 为要运行的命令(例如 "python3 myscript.py"),可以是任何命令;actions 为字典列表,例如 [{"action": "expect", "text": "foo"}, {"action":"send","text":"bar"}]。返回值为交互的输出。
- 输入:
- program*:
- actions*:
资源信息
[Resource(name='system_info', title=None, uri=AnyUrl('resource://system_info'), description='Provides basic information about the host operating system.', mimeType='text/plain', size=None, icons=None, annotations=None, meta={'_fastmcp': {'tags': []}})]
📚 详细文档
文件说明
| 文件 | 用途 | |------|------| | LICENSE | 包含 MIT 许可证,授予使用、复制、修改和分发该软件的权限。 | | README.md | 提供项目的总体概述、目的和使用说明。 | | command_cli_enh.py | 用于与 mcp_command_server_enh.py 脚本交互的命令行界面(CLI)。 | | config.toml | 项目的配置文件,可能包含服务器和 CLI 的设置。 | | item.py | 随机蔬菜和水果生成器,用于演示。 | | list.py | 使用 list tools 命令列出 MCP 工具。 | | mcp_command_server_enh.py | 主命令服务器脚本,用于监听和执行命令。 | | orig.py | 似乎是早期版本或相关脚本。 | | pexpect_auto.py | 使用 pexpect 库自动与另一个程序进行交互。 | | pythagoras.py | 与勾股定理相关的脚本,可能用于测试或演示。 | | test1.txt - test7.txt | 用于测试脚本功能的测试提示文件。 | | test_float_input.py | 用于测试浮点数输入的脚本。 | | test_input.py | 用于测试常规输入的脚本。 |
微信扫一扫