项目简介
Ollama MCP Server 是一个 Model Context Protocol (MCP) 服务器,旨在将本地 Ollama 模型的能力暴露为可通过 MCP 协议访问的工具和服务。它允许兼容 MCP 协议的 LLM 客户端,如 Mattermost MCP Host,利用本地 Ollama 模型进行文本生成和聊天补全等任务。
主要功能点
- 资源管理: 提供对 Ollama 模型列表和模型配置的访问,作为 MCP 资源进行管理。
- 工具注册与执行: 注册了 'generate' (文本生成) 和 'chat' (聊天补全) 两个核心工具,允许 LLM 客户端调用 Ollama 模型进行推理。
- Prompt 模板: 定义了 'default-prompt' 和 'system-prompt' 两种 Prompt 模板,支持客户端定制与 Ollama 模型的交互方式。
- 标准 MCP 协议: 遵循 MCP 协议规范,通过 Stdio (标准输入输出) 传输协议与 MCP 客户端进行 JSON-RPC 通信。
安装步骤
- 环境准备: 确保已安装 Python 3.13.1+ 和 uv 包管理器。
- 克隆仓库: 从 GitHub 克隆 'mattermost-mcp-host' 仓库到本地。
git clone https://github.com/jagan-shanmugam/mattermost-mcp-host - 进入目录: 通过命令行进入 'ollama-mcp-server' 目录。
cd mattermost-mcp-host/ollama-mcp-server - 创建虚拟环境: 创建并激活 Python 虚拟环境以隔离项目依赖。
python -m venv .venv source .venv/bin/activate # 或 .venv\Scripts\activate for Windows - 安装依赖: 使用 uv 包管理器安装项目依赖。
uv sync
服务器配置
MCP 客户端(如 'mattermost-mcp-host')需要配置连接 Ollama MCP 服务器的信息。在 'mattermost-mcp-host' 项目的 'src/mattermost_mcp_host/mcp-servers.json' 文件中,您可以添加如下服务器配置:
{ "mcpServers": { "ollama-server": { // 服务器名称,在 Mattermost 中使用 #ollama-server 命令前缀 "serverName": "ollama-mcp-server", // MCP 服务器声明的名称 "command": "python", // 启动 MCP 服务器的命令 "args": ["-m", "ollama_mcp_server.main"], // 传递给启动命令的参数,用于运行 Ollama MCP 服务器主模块 "type": "stdio" // 连接类型,这里使用标准输入输出 } } }
配置参数注释:
- 'serverName': 自定义服务器名称,例如 "ollama-server"。这个名称将用作 Mattermost 中调用该服务器的命令前缀(例如 '#ollama-server tools')。
- 'command': 启动 MCP 服务器进程的命令。对于 Ollama MCP Server,这里使用 'python' 解释器。
- 'args': 传递给 'command' 的参数列表。'["-m", "ollama_mcp_server.main"]' 指示 Python 运行 'ollama_mcp_server' 包中的 'main' 模块,即启动 Ollama MCP 服务器的主程序。
- 'type': MCP 客户端与服务器建立连接的类型。'"stdio"' 表示使用标准输入输出流进行通信,这是本地运行 MCP 服务器常用的方式。
基本使用方法
- 启动 Ollama MCP Server: 在 'ollama-mcp-server' 目录下,运行以下命令启动服务器。
服务器将通过标准输入输出等待客户端连接。python -m ollama_mcp_server.main - 配置 MCP 客户端: 在 'mattermost-mcp-host' 项目中,按照 服务器配置 步骤配置 'mcp-servers.json' 文件,添加 'ollama-server' 的配置。
- 在 Mattermost 中使用: 启动 'mattermost-mcp-host' 客户端后,在 Mattermost 中可以使用 '#ollama-server' 命令前缀与 Ollama MCP 服务器交互。
- '#ollama-server tools': 列出 Ollama MCP 服务器提供的工具 (generate, chat)。
- '#ollama-server call generate prompt '请生成一段关于夏天的诗歌'': 调用 'generate' 工具生成文本。
- '#ollama-server resources': 列出 Ollama MCP 服务器提供的资源,如模型列表。
通过以上步骤,您就可以利用 Ollama MCP Server 将本地 Ollama 模型集成到支持 MCP 协议的 LLM 应用中,实现本地化的模型推理能力。
信息
分类
AI与计算