返回市场
GLM图像MCP

GLM图像MCP

作者:QuickkApps2 星标更新:2025-10-26

项目介绍

GLM 图像 MCP 服务器

🚀 增强型模型上下文协议 (MCP) 服务器,用于通过 OpenRouter 和 Google Gemini 视觉模型进行聚焦图像分析

npm 版本 许可证:MIT Node.js 版本 MCP 兼容

✨ 功能

🎯 多提供商支持

  • OpenRouter: 访问多个视觉模型,包括 x-ai/grok-4-fast:free、Claude 等
  • Google Gemini: 直接访问 Gemini 2.5 Pro 和 Flash 模型
  • 灵活切换: 按请求选择提供商或设置环境默认值
  • 自动检测: 自动检测可用 API 密钥并选择最佳提供商

🔧 高级图像分析

  • 基本分析: 使用可定制提示分析整个图像
  • 聚焦分析: 分析特定方面(文本、人脸、对象、颜色、布局)
  • 智能验证: 坚固的参数和图像验证,带有安全检查
  • 错误处理: 综合错误报告和优雅回退

🚀 性能与安全性

  • 快速处理: 优化快速图像分析
  • 内存高效: 处理大图像时无内存泄漏
  • 安全第一: 输入验证和恶意内容净化
  • 跨平台: 在 Windows、macOS 和 Linux 上运行

📁 项目结构

glm-image-mcp/
├── glm-image-mcp.js                    # 主 MCP 服务器 ⭐
├── package.json                        # 包配置
├── README.md                          # 此文件
├── LICENSE                            # MIT 许可证
├── .gitignore                         # Git 忽略规则
├── .github/
│   └── workflows/
│       └── test.yml                   # GitHub Actions 工作流
├── utils/
│   └── validation.js                  # 输入验证工具
└── examples/
    ├── basic-analysis.js              # 基本用法示例
    └── multi-provider-config.js       # 多提供商配置

🚀 快速开始

方案 1: 直接从 GitHub 安装(推荐)

# 使用 npx 全局安装(无需 npm 发布)
npx github:QuickkApps/GLM-Image-MCP

# 或使用 git 全局安装
npm install -g git+https://github.com/QuickkApps/GLM--Image-MCP.git

# 或本地安装
npm install git+https://github.com/QuickkApps/GLM-Image-MCP.git

方案 2: 从 GitHub 克隆

git clone https://github.com/QuickkApps/GLM-Image-MCP.git
cd GLM-Image-MCP
npm install

方案 3: 直接从 GitHub 使用(npx)

npx github:QuickkApps/GLM-Image-MCP

🔧 配置

1. 设置 API 密钥

选择一个或两个提供商:

# 对于 OpenRouter(推荐用于模型多样性)
export OPENROUTER_API_KEY="your-openrouter-api-key"
export OPENROUTER_MODEL="x-ai/grok-4-fast:free"

# 对于 Google Gemini(快速且可靠)
export GEMINI_API_KEY="your-gemini-api-key"
export GEMINI_MODEL="gemini-2.5-pro"

2. MCP 客户端配置

配置您的 MCP 客户端(如 Claude Desktop、GLM 或任何 MCP 兼容的 IDE):

{
  "mcpServers": {
    "glm-image-mcp": {
      "command": "npx",
      "args": ["github:QuickkApps/GLM-Image-MCP"],
      "env": {
        "OPENROUTER_API_KEY": "your-openrouter-key",
        "OPENROUTER_MODEL": "x-ai/grok-4-fast:free",
        "GEMINI_API_KEY": "your-gemini-key",
        "GEMINI_MODEL": "gemini-2.5-pro"
      }
    }
  }
}

4. 模型配置

您可以使用环境变量设置自定义模型:

# 对于 OpenRouter 模型
export OPENROUTER_MODEL="anthropic/claude-3-sonnet"
export OPENROUTER_MODEL="openai/gpt-4-vision-preview"
export OPENROUTER_MODEL="x-ai/grok-4-fast:free"

# 对于 Google Gemini 模型
export GEMINI_MODEL="gemini-1.5-flash"
export GEMINI_MODEL="gemini-2.5-pro"
export GEMINI_MODEL="gemini-1.5-pro"

# 使用 npx
OPENROUTER_MODEL="anthropic/claude-3-sonnet" npx github:QuickkApps/GLM-Image-MCP
GEMINI_MODEL="gemini-1.5-flash" npx github:QuickkApps/GLM-Image-MCP

3. 本地开发配置

对于本地开发:

{
  "mcpServers": {
    "glm-image-mcp": {
      "command": "node",
      "args": ["glm-image-mcp.js"],
      "cwd": "/path/to/glm-image-mcp",
      "env": {
        "OPENROUTER_API_KEY": "your-openrouter-key",
        "GEMINI_API_KEY": "your-gemini-key"
      }
    }
  }
}

🛠️ 可用工具

analyze_image - 综合图像分析

使用提供商和模型选择分析图像。

参数:

  • image_path (字符串,必需): 图像文件路径
  • prompt (字符串,必需): 分析提示
  • provider (字符串,可选): "openrouter" 或 "gemini"(未指定时自动检测)
  • model (字符串,可选): 要使用的特定模型(覆盖环境默认值)

describe_image - 快速图像描述

使用默认描述性提示详细描述图像。

参数:

  • image_path (字符串,必需): 图像文件路径
  • prompt (字符串,可选): 自定义提示(未提供时使用默认值)
  • provider (字符串,可选): "openrouter" 或 "gemini"
  • model (字符串,可选): 要使用的特定模型

focused_analyze_image - 聚焦分析

使用聚焦提示分析图像的特定方面。

参数:

  • image_path (字符串,必需): 图像文件路径
  • focus_area (字符串,可选): 特定区域 ("text", "faces", "objects", "colors", "layout")
  • prompt (字符串,可选): 自定义聚焦分析提示
  • provider (字符串,可选): "openrouter" 或 "gemini"
  • model (字符串,可选): 要使用的特定模型

📊 使用示例

基本分析与自动检测

{
  "image_path": "/path/to/image.jpg",
  "prompt": "描述您在这张图片中看到的内容"
  // 自动检测可用提供商
}

OpenRouter 使用特定模型

{
  "image_path": "/path/to/image.jpg",
  "prompt": "详细分析这张图片",
  "provider": "openrouter",
  "model": "anthropic/claude-3-sonnet"
}

Gemini 快速分析

{
  "image_path": "/path/to/image.jpg",
  "prompt": "您在这张图片中看到了哪些物体?",
  "provider": "gemini",
  "model": "gemini-1.5-flash"
}

聚焦分析

{
  "image_path": "/path/to/document.jpg",
  "focus_area": "text",
  "provider": "gemini"
}

自定义聚焦分析

{
  "image_path": "/path/to/chart.jpg",
  "prompt": "从这个图表中提取所有数据点和趋势",
  "provider": "openrouter",
  "model": "x-ai/grok-4-fast:free"
}

🎯 提供商比较

功能OpenRouterGoogle Gemini
模型多样性50+ 视觉模型Gemini 2.5 Pro/Flash
速度非常快
成本变化(按模型)竞争力
准确性卓越
最佳用途模型灵活性速度与一致性
免费模型是 (grok-4-fast)有限配额

🔧 API 密钥设置

OpenRouter API 密钥

  1. 访问 OpenRouter.ai
  2. 注册并获取您的 API 密钥
  3. 设置环境变量: export OPENROUTER_API_KEY="your-key"

Google Gemini API 密钥

  1. 访问 Google AI Studio
  2. 创建新的 API 密钥
  3. 设置环境变量: export GEMINI_API_KEY="your-key"

🧪 测试

快速测试

# 测试安装
npx glm-image-mcp --help

# 测试样本图像(如果有)
node examples/basic-analysis.js

集成测试

# 克隆并本地测试
git clone https://github.com/your-username/glm-image-mcp.git
cd glm-image-mcp
npm install
npm test

🔄 模型选择优先级

  1. 请求 model 参数: 覆盖所有环境默认值
  2. 仅请求 provider: 使用该提供商的默认模型
  3. 无参数: 根据可用 API 密钥自动检测提供商
  4. 环境变量: 当没有请求参数时设置默认值

🚨 故障排除

常见问题

服务器无法启动

# 检查 Node.js 版本
node --version  # 应该 >= 14.0.0

# 检查依赖项
npm install

# 测试语法
node -c glm-image-mcp.js

API 密钥问题

Error: 未找到 API 密钥。请设置 GEMINI_API_KEY 或 OPENROUTER_API_KEY

解决方案: 设置正确的环境变量

无效提供商

Error: 无效提供商: invalid_provider

解决方案: 使用 "openrouter" 或 "gemini"

图像文件问题

Error: 图像文件未找到: /path/to/image.jpg

解决方案: 验证文件路径并确保文件存在

不支持的格式

Error: 不支持的图像格式: .gif。支持的格式: .jpg, .jpeg, .png, .webp, .bmp, .tiff

解决方案: 将图像转换为支持的格式

🔒 安全特性

  • ✅ API 密钥永远不会被记录或暴露
  • ✅ 输入验证防止恶意内容
  • ✅ 图像缓冲区验证格式和大小
  • ✅ 文件大小限制(最大 50MB)
  • ✅ 路径遍历保护
  • ✅ 综合错误处理

📈 性能

指标
启动时间< 2 秒
分析时间3-10 秒(取决于图像大小和模型)
内存使用量~50MB 基础 + 图像大小
支持的格式JPEG, PNG, WebP, BMP, TIFF
最大文件大小50MB

🤝 与 MCP 客户端集成

此 MCP 服务器与任何 MCP 兼容客户端无缝工作:

Claude Desktop

{
  "mcpServers": {
    "glm-image-mcp": {
      "command": "npx",
      "args": ["glm-image-mcp"]
    }
  }
}

GLM 4.6

  1. 在您的 GLM 4.6 接口中配置 MCP 设置
  2. 按请求选择提供商或设置默认值
  3. 根据需要选择模型
  4. 接收针对 GLM 4.6 处理优化的文本响应

其他 MCP 客户端

任何 MCP 兼容客户端都可以使用此服务器,并采用标准配置格式。

📦 依赖项

  • @modelcontextprotocol/sdk (^1.19.1) - MCP 框架
  • node-fetch (^2.6.7) - HTTP 请求
  • sharp (^0.33.0) - 图像处理(可选,用于增强验证)

🚀 部署选项

1. npm 包(推荐)

npm install -g glm-image-mcp
glm-image-mcp

2. 直接从 GitHub

npx github:QuickkApps/GLM-Image-MCP

# 使用自定义模型
OPENROUTER_MODEL="anthropic/claude-3-sonnet" npx github:QuickkApps/GLM-Image-MCP
GEMINI_MODEL="gemini-1.5-flash" npx github:QuickkApps/GLM-Image-MCP

3. Docker(即将推出)

docker run -e OPENROUTER_API_KEY=your-key glm-image-mcp

4. GitHub Actions

在 CI/CD 管道中使用包含的 GitHub Actions 工作流。

🤝 贡献

我们欢迎贡献!请参阅我们的 贡献指南 以了解详情。

开发设置

git clone https://github.com/your-username/glm-image-mcp.git
cd glm-image-mcp
npm install
npm test

拉取请求流程

  1. 分叉仓库
  2. 创建功能分支
  3. 进行更改
  4. 如适用添加测试
  5. 提交拉取请求

📄 许可证

本项目根据 MIT 许可证发布 - 请参阅 LICENSE 文件以了解详细信息。

🙏 致谢

📞 支持


🚀 适用于 MCP 生态系统的简单、可靠且强大的图像分析

由 [QuicKK Apps] 制作