README
🚀 MCP-LLM 桥接器
本项目使用 TypeScript 开发,旨在将本地大语言模型(借助 Ollama)与模型上下文协议(MCP)服务器连接起来。通过此桥接器,开源模型能像 Claude 一样运用相同的工具和功能,进而打造强大的本地 AI 助手。
🚀 快速开始
该项目可将本地大型语言模型与 MCP 服务器相连,MCP 服务器具备多种实用功能,如文件系统操作、勇敢的网络搜索、GitHub 交互、Google Drive 和 Gmail 集成、内存/存储管理以及使用 Flux 进行图像生成。桥接器会在 LLM 的输出和 MCP 的 JSON - RPC 协议间进行转换,让任何 Ollama 兼容模型都能像 Claude 一样使用这些工具。
✨ 主要特性
- 多 MCP 支持和动态工具路由:可支持多个 MCP 服务器,并能根据工具类型动态路由请求。
- 工具调用的结构化输出验证:确保工具调用输出的结构符合要求。
- 用户提示中的自动工具检测:能自动识别用户提示中的工具调用需求。
- 强大的 Ollama 进程管理:有效管理 Ollama 相关进程。
- 详细的日志记录和错误处理:便于排查和解决问题。
📦 安装指南
安装 Ollama 和所需模型
ollama pull qwen2.5-coder:7b-instruct
安装 MCP 服务器
npm install -g @modelcontextprotocol/server-filesystem
npm install -g @modelcontextprotocol/server-brave-search
npm install -g @modelcontextprotocol/server-github
npm install -g @modelcontextprotocol/server-memory
npm install -g @patruff/server-flux
npm install -g @patruff/server-gmail-drive
配置凭证
- 设置
BRAVE_API_KEY用于勇敢搜索。 - 设置
GITHUB_PERSONAL_ACCESS_TOKEN用于 GitHub。 - 设置
REPLICATE_API_TOKEN用于 Flux。 - 使用以下命令配置 Gmail 凭证:
cp $HOME/.config/Google/credentials.json ~/.config/gmail-credential
配置文件
创建或编辑位于 $HOME/.config/mcp-llm/config.json 的配置文件,示例内容如下:
{
"ollama": {
"host": "http://localhost:11434"
},
"gmail": {
"enable": false,
"credential_path": "~/.config/gmail-credential"
}
}
💻 使用示例
基础用法
启动桥接器
npm run start
发送简单消息
curl -X POST http://localhost:3000/api/v1/message -H "Content-Type: application/json" -d '{"message": "你好,世界!"}'
发送带有工具调用的消息
curl -X POST http://localhost:3000/api/v1/message -H "Content-Type: application/json" -d '{"message": "给我讲个笑话,请使用 joke-teller 工具。"}'
🔧 技术细节
- 桥接器支持多线程处理,最大连接数为 100。
- 请求超时时间为 30 秒,重试次数为 3 次。
- 支持文件附件上传和下载。
📚 详细文档
当前配置
| 属性 | 详情 |
|------|------|
| 模型类型 | 使用 Qwen 2.5 7B(qwen2.5-coder:7b-instruct)通过 Ollama |
| MCP 服务 | 文件系统操作 (@modelcontextprotocol/server-filesystem)、勇敢搜索 (@modelcontextprotocol/server-brave-search)、GitHub (@modelcontextprotocol/server-github)、记忆 (@modelcontextprotocol/server-memory)、Flux 图像生成 (@patruff/server-flux)、Gmail 和 Google Drive (@patruff/server-gmail-drive) |
架构
- 桥接器:作为核心组件,负责工具注册和执行管理。
- LLM 客户端:处理 Ollama 交互并格式化工具调用。
- MCP 客户端:管理 MCP 服务器连接和 JSON - RPC 通信。
- 工具路由器:根据工具类型将请求路由到适当的 MCP。
未来改进计划
- 实现更多 MCP 服务器支持。
- 添加并行工具执行功能。
- 支持流式响应输出。
- 提升错误恢复能力。
- 添加对话记忆功能。
- 扩展对更多 Ollama 模型的支持。
相关项目
该项目与更广泛的 Claude 生态系统集成,涉及模型上下文协议(MCP)、Claude 桌面配置、Ollama 项目以及各种 MCP 服务器实现,最终可打造一个功能强大的本地 AI 助手,在本地硬件上实现类似于 Claude 的诸多功能。
扫码联系在线客服