图像分析服务器

Moondream MCP Server是一个基于Moondream视觉模型的图像分析服务器,提供图像描述生成、物体检测和视觉问答等高级功能,适用于内容分析、无障碍访问和数据提取等场景。

  • by NightTrek
  • JavaScript
  • 本地部署
  • 19 星标
  • 更新于
在 GitHub 查看 NightTrek/moondream-mcp

使用说明

🌙 Moondream MCP服务器

一个强大的模型上下文协议(MCP)服务器,使用Moondream视觉模型为您的应用程序带来高级图像分析功能。该服务器与Claude和Cline无缝集成,在人工智能助手和复杂的计算机视觉任务之间架起了一座桥梁。

这不是一个正式的月球梦套餐。全部归功于 moondream.cn 用于制作可以在消费类硬件上运行的最佳开源视觉模型。

✨ 特性

  • 🖼️ 图像字幕:生成图像的自然语言描述
  • 🔍 目标检测:识别和定位图像中的特定对象
  • 💭 视觉问答:询问有关图像内容的问题并获得智能回复
  • 🚀 高性能:使用量化的8位模型进行高效推理
  • 🔄 自动设置:处理模型下载和环境设置
  • 🛠️ MCP集成:无缝工具使用的标准化协议

🎯 用例

  • 内容分析:自动生成图像内容的描述
  • 无障碍:为视障用户创建alt文本
  • 数据提取:通过有针对性的问题从图像中提取特定信息
  • 对象验证:确认图像中是否存在特定对象
  • 场景理解:分析复杂场景及其组件

🚀 快速开始

先决条件

  • Node.js v18或更高版本
  • Python 3.8+
  • UV包管理器(如果不存在,则自动安装)

安装

  1. 克隆和设置
git clone <repository-url>
cd moondream-server
pnpm install
  1. 构建服务器
pnpm run build

服务器自动处理其余部分:

  • 创建Python虚拟环境
  • 如果没有紫外线,则安装紫外线
  • 下载并设置Moondream模型
  • 管理模型服务器进程

与克劳德/克莱恩的融合

添加到MCP设置文件(claude_desktop_config.json 或 cline_mcp_settings.json):

{
  "mcpServers": {
    "moondream": {
      "command": "node",
      "args": ["/path/to/moondream-server/build/index.js"]
    }
  }
}

🛠️ 可用工具

分析图像

强大的图像分析工具,具有多种模式:

{
  "name": "analyze_image",
  "arguments": {
    "image_path": string,  // Path to image file
    "prompt": string       // Analysis command
  }
}

提示类型:

  • "generate caption" -创建自然语言描述
  • "detect: [object]" -查找特定对象(例如,“检测:汽车”)
  • "[question]" -回答有关图像的问题

示例:

// Image Captioning
{
  "image_path": "photo.jpg",
  "prompt": "generate caption"
}

// Object Detection
{
  "image_path": "scene.jpg",
  "prompt": "detect: person"
}

// Visual Q&A
{
  "image_path": "painting.jpg",
  "prompt": "What colors are used in this painting?"
}

🔧 技术细节

建筑

服务器作为双组件系统运行:

  1. MCP接口层

    • 处理协议通信
    • 管理工具界面
    • 处理请求/响应
  2. Moondream模型服务器

    • 运行视觉模型
    • 处理图像分析
    • 提供HTTP API终结点

模型信息

使用Moondream量化模型:

  • 违约: moondream-2b-int8.mf.gz
  • 高效的8位量化
  • 从Hugging Face自动下载
  • ~500MB型号大小

演出

  • 自动缓存快速启动
  • 通过量化实现高效的内存使用
  • 响应式API端点
  • 并发请求处理

🔍 调试

常见问题和解决方案:

  1. 模型下载问题

    # Manual model download
    wget https://huggingface.co/vikhyatk/moondream2/resolve/main/moondream-0_5b-int4.mf.gz
    
  2. 服务器端口冲突

    • 默认端口:3475
    • 使用以下方法检查流程: lsof -i :3475
  3. Python环境

    • UV管理依赖关系
    • 检查临时目录中的日志
    • 系统临时文件夹中的虚拟环境

🤝 贡献

欢迎投稿!感兴趣的领域:

  • 附加型号支持
  • 性能优化
  • 新的分析功能
  • 文档改进

📄 许可证

[在此处添加您的许可证信息]

🙏 致谢


Made with ❤️ by Nighttrek