在MCP Server的开发与调试过程中,图形化界面虽然便捷,但轻量化的CLI工具往往更能直击开发者的核心需求。今天介绍的 mcphost,正是这样一个值得关注的轻量级选择——它仅有5MB,零依赖,并且支持Anthropic、Ollama、OpenAI三大主流模型平台,为开发者提供了极大的灵活度。项目地址为 mark3labs/mcphost,感兴趣的朋友可以自行查阅。
文章核心内容涵盖以下三点:
- mcphost轻量化CLI工具的特点与优势
- 基于mcphost的MCP Server配置与基本使用
- 实战案例:通过mcp-go SDK实现特定网址抓取与内容解析
配置与基本用法
以阿里千问大模型为例,配置过程相当简洁,具体命令如下所示:
export OPENAI_API_KEY=xxxxx. # 设置千问 API key
export OPENAI_URL='https://dashscope.aliyuncs.com/compatible-mode/v1'
mcphost \
--openai-url $OPENAI_URL \
--model openai:qwen-max \
--config ./mcp.json
程序启动后,终端会显示类似输出,交互过程直观高效。
实战案例详解
借助 mark3labs/mcp-go SDK 构建的 MCP Server,能够实现特定网址的抓取、内容解析,并最终格式化输出。具体实现步骤如下:
- 工具定义:创建一个Python执行工具,其描述如下:在隔离环境中运行Python代码,支持使用Playwright与无头浏览器进行网页抓取。当需要获取实时信息,且内部数据或现有工具均无法提供时,可使用此工具。注意:所有输出仅通过stdout或stderr返回,因此必须使用print语句!此外,代码运行在临时容器中,模块和代码不会持久化。
- 执行流程:
- 获取大模型生成的Python代码及其依赖清单
- 在独立的Docker环境中执行代码
- 捕获stdout/stderr输出结果
- 运行效果:
- 提问1:获取star数>50的最新10个Go开源项目
- 追加提问2:详细说明首个项目内容
从以上两个任务可以看出,系统自动调用了python-executor工具,并依次完成了对应网址的抓取和内容输出。
至此,示例程序成功运行。借助 mcphost 可以快速集成现有的 MCP Server,显著降低智能CLI程序的开发门槛。
