ZIN MCP Client 是一个轻量级、快速、简单的命令行客户端,用于与基于 STDIO 的 MCP (Model Context Protocol) 服务器进行交互,桥接本地运行的 LLM (通过 Ollama) 和 MCP 服务器。
ZIN MCP Client可同时连接多个MCP服务器,通过Ollama使用本地大语言模型,,交互式命令行界面有丰富的格式化功能,会详细的日志,便于调试和故障排除,利用LangChain的ReAct代理模式智能调用工具,支持跨平台使用。
• 下载地址:https://github.com/zinja-coder/zin-mcp-client/releases
• 解压下载的压缩包:unzip zin-mcp-client-<version>.zip
• 解压后目录结构:
zin-mcp-client/
├── zin_mcp_client.py
├── src/
├── mcp-config.json
├── README.md
├── LICENSE
cd zin-mcp-client
项目使用uv(推荐)代替pip进行依赖管理:
• 安装uv(若尚未安装):
curl -LsSf https://astral.sh/uv/install.sh | sh
• 可选步骤:设置环境
uv venv
source .venv/bin/activate # Windows系统使用 .venv\Scripts\activate
• 可选步骤:安装依赖
uv pip install -r requirements.txt
pip install -r requirements.txt
或
pip install -r requirements.txt --break-system-packages
1、下载并安装Ollama:https://ollama.com/download
• Linux系统可直接运行以下命令安装:
curl -fsSL https://ollama.com/install.sh | sh
2、下载并运行任何具备工具调用能力的LLM,例如llama 3.1:
ollama run llama3.1:8b
注意:上述命令将获取4b参数的模型。若硬件配置较强,可获取更高参数的模型以获得更好性能。
3、使用以下命令在API服务器上启动Ollama:
ollama serve
这将在端口1134上提供Ollama API服务,可使用curl命令确认其是否运行:
curl http://localhost:11434/
若返回Ollama is running
,则表示服务正在运行。
配置文件是MCP服务器配置文件,用于告知zin mcp客户端如何启动MCP服务器。它采用与Claude配置文件相同的格式。以下是Zin MCP套件服务器的示例配置文件:
{
"mcpServers": {
"jadx-mcp-server": {
"command": "/path/to/uv",
"args": [
"--directory",
"/path/to/jadx-mcp-server/",
"run",
"jadx_mcp_server.py"
]
},
"apktool-mcp-server": {
"command": "/path/to/uv",
"args": [
"--directory",
"/path/to/apktool-mcp-server/",
"run",
"apktool_mcp_server.py"
]
}
}
}
替换内容:
• path/to/uv
替换为uv可执行文件的实际路径
• path/to/jadx-mcp-server
替换为存储jadx-mcp-server的绝对路径
注意:配置文件的默认位置是zin-mcp-client目录下的mcp-config.json,但也可以使用--config选项指定自定义配置文件的路径,例如:
uv run zin_mcp_client.py --server jadx-mcp-server --model llama3.1:8b --config /home/zinjacoder/mcp-config.json
运行zin_mcp_client.py:
uv run zin_mcp_client.py
可使用以下选项:
• --server
:指定选择的服务器
• --config
:提供配置文件的路径
• --model
:使用特定的模型
• --debug
:启用详细输出
对于低配置系统,一次仅使用一个服务器,避免LLM产生幻觉。
所有日志、调试信息、原始流量和交互内容都以易读的方式存储在日志中。若出现问题,可查看日志。
可使用--debug
标志启用调试模式,在运行时将每个细节打印到控制台,帮助查找问题。
若无法自行解决错误,可使用日志和调试模式的输出,通过在https://github.com/zinja-coder/zin-mcp-client/issues
上打开问题向我们反馈。
目前,基于专有API的模型(如Anthropic的Claude)在工具调用方面更为熟练,然而,开源领域发展迅速!通过Ollama,越来越多在函数调用数据集上进行了专门微调的模型可供使用。在Hugging Face等平台上搜索标记为“函数调用”或“工具使用”的模型,或在r/LocalLLaMA等社区查看讨论,是找到有能力的本地模型的关键。