mcp-cli 解决方案概述
mcp-cli
是一款功能强大的命令行工具,专为与模型上下文提供程序(MCP)服务器交互而设计。作为MCP客户端,它通过集成的CHUK-MCP协议库,实现了与LLM的无缝通信,支持工具调用、会话管理和多种操作模式。开发者可以通过聊天模式、交互模式或命令模式,灵活地与AI模型进行交互,极大地提升了开发效率。
mcp-cli
的核心价值在于其多提供商支持(如OpenAI和Ollama)、强大的工具系统(自动发现、执行和跟踪工具)以及高级会话管理功能(历史记录、过滤和导出)。它简化了AI模型的集成和管理,让开发者能够专注于创新,而无需担心底层通信的复杂性。通过简单的安装和配置,开发者即可快速上手,充分利用MCP生态系统的优势。
mcp-cli 核心能力
多种操作模式
mcp-cli
提供多种操作模式,以适应不同的使用场景和用户偏好。聊天模式提供与LLM的交互式对话,自动调用工具来满足用户需求。交互模式允许用户通过命令直接操作服务器,例如列出可用工具或资源。命令模式则针对脚本编写和自动化,可以方便地与其他Unix工具集成,实现流水线作业。此外,还支持直接命令,允许用户在不进入交互模式的情况下运行单个命令。这种灵活性使得 mcp-cli
能够满足从简单的交互式查询到复杂的自动化任务的需求。例如,开发者可以使用命令模式编写脚本,批量处理多个文件,并使用LLM提取关键信息,而数据科学家则可以使用聊天模式探索数据,并利用工具进行分析。
强大的工具系统
mcp-cli
具备强大的工具系统,能够自动发现并执行服务器提供的工具。它支持服务器感知的工具执行,这意味着客户端可以根据服务器提供的工具定义动态地调用工具。工具调用历史会被完整记录,方便用户追踪和分析工具的使用情况。此外,mcp-cli
还支持复杂的多步骤工具链,允许LLM自动组合多个工具来完成复杂的任务。例如,用户可以提问“今天北京的天气怎么样,并根据天气情况推荐适合的户外活动?”,LLM可以自动调用天气查询工具获取天气信息,然后调用活动推荐工具,根据天气情况生成推荐列表。这种自动化工具调用极大地提高了工作效率,并降低了用户的使用门槛。
高级会话管理
mcp-cli
提供了全面的会话管理功能,可以跟踪完整的会话历史,并允许用户过滤和查看特定消息范围。会话历史可以导出为JSON格式,方便调试和分析。为了减少token使用量,mcp-cli
还支持会话压缩功能,将历史会话内容总结成概要。例如,用户可以使用 /conversation
命令查看完整的会话历史,使用 /ch <N>
命令查看特定消息,使用 /save <filename>
命令将对话保存到文件,使用 /compact
命令压缩会话历史。这些功能使得用户能够更好地管理和利用与LLM的交互过程,提高工作效率和问题解决能力。
技术实现:多LLM供应商支持
mcp-cli
通过模块化的设计,支持集成多个LLM供应商,目前已支持OpenAI和Ollama,并具有可扩展的架构,方便添加其他供应商。对于OpenAI,mcp-cli
支持多种模型,如 gpt-4o-mini, gpt-4o, gpt-4-turbo 等。对于Ollama,则支持 llama3.2, qwen2.5-coder 等模型。用户可以通过命令行参数 --provider
和 --model
选择使用的LLM供应商和模型。这种多供应商支持使得用户可以根据实际需求选择最合适的LLM,避免被单一供应商锁定,并充分利用不同LLM的优势。例如,用户可以使用 OpenAI 的 gpt-4o 模型进行高质量的文本生成,同时使用 Ollama 的 llama3.2 模型进行本地推理,以保护数据隐私。