Ollama MCP 服务器

一个用于将Ollama模型与支持MCP协议的应用程序(如Claude Desktop或Windsurf)集成的服务器。

  • by ikarius6
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 ikarius6/ollama-mcp-server

使用说明

Ollama MCP服务器-杰克先生

MCP(Model Context Protocol)服务器,用于将Ollama模型与支持MCP协议的应用程序集成,如Claude Desktop或Windsurf。

📋 特点

  • 列出模板:列出所有本地可用的Ollama型号
  • 文本生成:使用Ollama模型生成文本
  • 聊天:与Ollama模特进行对话
  • 下载模型:从Ollama注册处下载模型
  • 流媒体支持:处理重型模型的流媒体响应
  • 可配置超时:为需要响应的模型配置超时

🚀 先决条件

  • Node.js v18o高级
  • 奥拉马 安装和运行
    • 下载自:https://ollama.ai
    • 验证您是否正在运行: ollama list

📦 安装

  1. 克隆或下载此存储库

  2. 安装依赖项:

    npm install
    
  3. 汇编项目:

    npm run build
    
  4. 全局安装(可选但建议):

    npm link
    

    这将创建指向该命令的全局符号链接 ollama-mcp-server,允许在不指定完整路径的情况下从任何位置运行它。

🛠️ 使用

发展模式

要在自动重新加载的开发模式下运行:

npm run dev

生产方式

编译后,服务器可以直接运行:

node build/ollama-mcp-server.js

与Claude Desktop或Windsurf的集成

要将此MCP服务器与Claude Desktop或Windsurf一起使用,请将以下设置添加到您的配置文件中:

窗户: %APPDATA%\Claude\claude_desktop_config.json 哦 %USERPROFILE%\.codeium\windsurf\mcp_config.json

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 哦 ~/Library/Application Support/Windsurf/config.json

Linux: ~/.config/Claude/claude_desktop_config.json 哦 ~/.config/Windsurf/config.json

选项1:使用NPM链接(推荐)

如果您在全球安装 npm link:

{
  "mcpServers": {
    "ollama": {
      "command": "ollama-mcp-server",
      "args": [],
      "env": {
        "OLLAMA_HOST": "http://localhost:11434",
        "OLLAMA_TIMEOUT": "1200000"
      },
      "disabled": false
    }
  }
}

选项2:使用绝对路径

如果您不想使用NPM链接:

{
  "mcpServers": {
    "ollama": {
      "command": "node",
      "args": ["d:\\Aplicaciones\\ollama-mcp-server\\build\\ollama-mcp-server.js"],
      "env": {
        "OLLAMA_HOST": "http://localhost:11434",
        "OLLAMA_TIMEOUT": "1200000"
      }
    }
  }
}

注: 在选项2中,调整绝对路径 args 根据您安装项目的位置。

⚙️ 环境变量

变量 描述 默认值
OLLAMA_HOST Ollama服务器URL http://localhost:11434
OLLAMA_TIMEOUT 请求的超时(毫秒) 1200000 (20分钟)

🔧 可用的工具

MCP服务器提供以下工具:

1. ollama_list_models

列出您系统中可用的所有Ollama型号。

没有必要的参数

2. ollama_generate

使用Ollama模型生成文本。

参数:

  • model (字符串,必填):型号(例如:“Callam3”、“Mistral”)
  • prompt (字符串,必填):发送到模型的提示
  • temperature (数字,可选):生成温度(0.0至2.0,默认值:0.8)
  • top_p (数字,操作):顶部P核旁取样
  • top_k (数字,操作):前K位准采样

3. ollama_chat

他与一位Ollama模特交谈。

参数:

  • model (字符串,必填):模型名称
  • messages (数组,必需):具有“角色”和“内容”的对象数组
    • role:“系统”、“用户”、“助理”
    • content:消息内容
  • temperature (数字,可选):生成温度(默认值:0.8)

4. ollama_pull_model

从Ollama的注册表下载模型。

参数:

  • model (字符串,必填):要下载的模型的名称(例如:“calla3”,“mistral”)

📝 使用示例

在Claude Desktop或Windsurf中配置后,您可以使用以下命令:

  • “列出所有可用的Ollama型号”
  • “使用calla3模型生成一首诗”
  • “与Mistral模型讨论Python编程”
  • “下载代码调用模型”
  • “使用@mcp.ollama:calla3生成一首诗”

🐛 解决问题

服务器没有连接到Ollama

  • 确认Ollama正在运行: ollama list
  • 检查端口是否正确(默认值:11434)
  • 检查环境变量 OLLAMA_HOST

大型模型中的超时

  • 增加…的价值 OLLAMA_TIMEOUT 在配置中
  • 一些型号可能需要几分钟才能做出回应

错误“找不到模块”

  • 确保你已经执行了 npm install
  • 验证您执行了 npm run build 在使用服务器之前

📄 许可证

国际学生委员会

🤝 贡献

欢迎捐款。请打开问题或拉动请求以获得建议或改进。