返回市场
奥拉玛MCP服务器

奥拉玛MCP服务器

作者:angrysky564 星标更新:2025-05-29

项目介绍

Ollama MCP 服务器

一个全面的模型上下文协议(MCP)服务器,用于与Ollama集成,具有高级功能,包括脚本管理、多代理工作流和进程泄漏预防。

🌟 功能

  • 🔄 异步任务管理:在后台执行长时间运行的任务
  • 📝 脚本模板:创建可重用的提示模板,并进行变量替换
  • 🤖 快速代理集成:多代理工作流(链式、并行、路由、评估器)
  • 🛡️ 进程泄漏预防:适当的清理和资源管理
  • 📊 全面监控:任务跟踪、状态监控和输出管理
  • 🎯 内置提示:常见任务的交互式引导模板
  • ⚡ 多模型支持:与任何本地安装的Ollama模型一起工作

🚀 快速开始

预备条件

安装

  1. 设置环境: 请注意,此readme由不太认真的AI进行了修订。
cd /path/to/ollama-mcp-server
uv venv --python 3 12 --seed
source .venv/bin/activate
uv add mcp[cli] python-dotenv
  1. 配置Claude Desktop: 从 example_of_bad_ai_gen_mcp_config_do_not_use.json(别笑。使用 example_claude_desktop_config.json)复制配置到你的Claude Desktop配置文件中:
  • Linux~/.config/Claude/claude_desktop_config.json
  • macOS~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows%APPDATA%\Claude\claude_desktop_config.json
  1. 更新配置中的路径以匹配你的系统

  2. 重启Claude Desktop

🛠️ 可用工具

核心操作

  • list_ollama_models - 显示所有可用的Ollama模型
  • run_ollama_prompt - 使用任何模型执行提示(同步/异步)
  • get_job_status - 检查作业完成状态
  • list_jobs - 查看所有正在运行和已完成的作业
  • cancel_job - 停止正在运行的作业

脚本管理

  • save_script - 创建可重用的提示模板
  • list_scripts - 查看保存的模板
  • get_script - 读取模板内容
  • run_script - 使用变量执行模板

快速代理工作流

  • create_fastagent_script - 单代理脚本
  • create_fastagent_workflow - 多代理工作流
  • run_fastagent_script - 执行代理工作流
  • list_fastagent_scripts - 查看可用的工作流

系统集成

  • run_bash_command - 安全地执行系统命令
  • run_workflow - 多步骤工作流执行

📖 内置提示

交互式提示以指导常见任务:

  • ollama_guide - 交互式用户指南
  • ollama_run_prompt - 简单提示执行
  • model_comparison - 比较多个模型
  • fast_agent_workflow - 多代理工作流
  • script_executor - 模板执行
  • batch_processing - 多个提示处理
  • iterative_refinement - 内容改进工作流

📁 目录结构

ollama-mcp-server/
├── src/ollama_mcp_server/
│   └── server.py                 # 主服务器代码
├── outputs/                      # 生成的输出文件
├── scripts/                      # 保存的脚本模板
├── workflows/                    # 工作流定义
├── fast-agent-scripts/           # 快速代理Python脚本
├── prompts/                      # 使用指南
│   ├── tool_usage_guide.md
│   ├── prompt_templates_guide.md
│   └── setup_guide.md
├── example_mcp_config.json       # Claude Desktop配置
└── README.md

🔧 开发

运行开发服务器

cd ollama-mcp-server
uv run python -m ollama_mcp_server.server

使用MCP Inspector调试

mcp dev src/ollama_mcp_server/server.py

🛡️ 进程管理

服务器包括全面的进程泄漏预防:

  • 信号处理:正确处理SIGTERM/SIGINT
  • 后台任务跟踪:监控所有异步任务
  • 资源清理:自动终止进程
  • 内存管理:防止僵尸进程积累

通过以下命令监控健康状况:

ps aux | grep mcp | wc -l  # 应显示少于10个进程

📊 使用示例

简单提示执行

1. 在Claude中使用 "ollama_run_prompt" 提示
2. 指定模型和提示文本
3. 获取即时结果

多代理工作流

1. 使用 "fast_agent_workflow" 提示
2. 选择工作流类型(链式/并行/路由/评估器)
3. 定义代理和初始提示
4. 监控执行

脚本模板

1. 使用 save_script 创建模板
2. 使用变量:{variable_name}
3. 使用 run_script 执行
4. 传递JSON变量对象

🚨 故障排除

找不到模型:使用 list_ollama_models 查找确切名称 连接问题:使用 ollama serve 启动Ollama 进程数过高:服务器现在会自动防止泄漏 作业卡住:使用 cancel_job 停止有问题的任务

🤝 贡献

  1. 遵循MCP Python SDK开发指南
  2. 使用正确的类型提示和文档字符串
  3. 彻底测试所有新功能
  4. 确保在所有代码路径中清理进程

📄 许可证

该项目遵循与MCP Python SDK相同的许可条款。

🙏 致谢

基于 模型上下文协议Ollama ,采用MCP最佳实践的进程管理模式。


准备开始了吗? 查看 prompts/setup_guide.md 以获取详细的安装说明!