关于 Model Context Protocol CLI
Model Context Protocol CLI 是用于交互式访问 MCP 服务的命令行客户端,支持 OpenAI 和 Ollama 模型。它提供聊天模式,并可探索服务端的工具、资源和提示词。
主要功能
- 01通过协议与 MCP 服务交互
- 02动态发现工具和资源
- 03支持 OpenAI 和 Ollama
- 04交互式聊天模式
- 05列出工具、资源和提示词的命令
适用场景
- 01探索服务端提供的工具和资源
- 02使用 OpenAI 与服务端聊天
- 03使用 Ollama 与服务端交互
MCP 相关
通过指定的服务配置连接 MCP 服务,可列出工具、资源和提示词,并通过聊天与服务端交互。
详细介绍
Model Context Protocol 命令行
这个代码库包含一个协议级命令行工具,用于与 Model Context Protocol 服务交互。客户端允许用户发送命令、查询数据以及与服务提供的各种资源进行交互。
功能特性
- 与 MCP 服务的协议级通信。
- 动态工具和资源探索。
- 支持多个提供商和模型:
- 提供商:OpenAI、Ollama。
- 默认模型:OpenAI 的
gpt-4o,Ollama 的qwen2.5-coder。
前置要求
- Python 3.8 或更高版本。
- 必需的依赖项(参见安装)
- 如果使用 ollama,你应该已安装并运行 ollama。
- 如果使用 openai,你应该在环境变量中设置 API 密钥(OPENAI_API_KEY=yourkey)
安装
- 克隆仓库:
git clone https://github.com/chrishayuk/mcp-cli
cd mcp-cli
- 安装 UV:
pip install uv
- 重新同步依赖项:
uv sync --reinstall
使用
要启动客户端并与 SQLite 服务交互,请运行以下命令:
uv run mcp-cli --server sqlite
命令行参数
--server:指定要使用的服务配置。必需。--config-file:(可选)JSON 配置文件的路径。默认为server_config.json。--provider:(可选)指定要使用的提供商(openai或ollama)。默认为openai。--model:(可选)指定要使用的模型。默认值取决于提供商:- OpenAI 的
gpt-4o。 - Ollama 的
llama3.2。
- OpenAI 的
示例
使用默认的 OpenAI 提供商和模型运行客户端:
uv run mcp-cli --server sqlite
使用特定的配置和 Ollama 提供商运行客户端:
uv run mcp-cli --server sqlite --provider ollama --model llama3.2
交互模式
客户端支持交互模式,允许你动态执行命令。输入 help 查看可用命令列表,或输入 quit 退出程序。
支持的命令
ping:检查服务是否响应。list-tools:显示可用的工具。list-resources:显示可用的资源。list-prompts:显示可用的提示词。chat:进入交互式聊天模式。clear:清空终端屏幕。help:显示支持命令的列表。quit/exit:退出客户端。
聊天模式
要进入聊天模式并与服务交互:
uv run mcp-cli --server sqlite
在聊天模式中,你可以使用工具并与服务器进行交互。在启动时指定的提供商和模型将按以下方式显示:
Entering chat mode using provider 'ollama' and model 'llama3.2'...
使用 OpenAI 提供商:
如果你希望使用 openai 模型,你应该
- 在运行客户端前设置
OPENAI_API_KEY环境变量,可以在 .env 文件中或作为环境变量设置。
贡献
欢迎贡献!请开启一个 issue 或提交包含你的建议更改的 pull request。
许可证
本项目采用 MIT 许可证 许可。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。