AI视觉分析服务器

一个基于Z.AI平台的AI视觉分析服务器,提供图像和视频分析功能,支持本地文件和远程URL,具有多平台支持和容器化部署能力。

  • by johnneerdael
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 johnneerdael/glm-vision

使用说明

Z.AI MCP视觉分析服务器 - Python实现

一个基于Z.AI平台的用于AI视觉分析的模型上下文协议(MCP)服务器。这是使用FastMCP框架的Python实现。

概述

这台MCP服务器通过两个主要工具提供人工智能视觉分析能力:

  • 图像分析使用先进的AI视觉模型分析图像
  • 视频分析使用先进的AI视觉模型分析视频

该服务器支持本地文件和远程URL,对本地文件自动进行base64编码。

特点/特性

  • ✅ Python 实现使用FastMCP框架的现代Python代码库
  • ✅ 多平台支持带有自动检测功能的Z.AI和智浦(Zhipu)AI平台
  • ✅ 文件支持本地文件和带有验证的远程URL
  • ✅ 类型安全使用 Pydantic 进行完整的类型注解验证
  • ✅ 翻译为中文是:✓(正确/对) 异步操作非阻塞文件和API操作
  • ✅ 表示“正确”或“已确认”。 错误处理全面的错误处理,附带详细信息
  • ✅ 配置基于环境的配置管理
  • ✅ Docker 准备就绪容器部署支持

快速入门

先决条件

  • Python 3.10 或更高版本
  • Z.AI API密钥

安装

  1. 克隆仓库:

    git clone <repository-url>
    cd glm_vision
    
  2. 设置环境:

    cp .env.example .env
    # Edit .env with your API key
    
  3. 安装依赖项:

    pip install -r requirements/prod.txt
    
  4. 运行服务器:

    python -m src.vision_server
    

Docker 部署

docker build -t zai-mcp-vision-server .
docker run -e Z_AI_API_KEY=your_api_key zai-mcp-vision-server

配置

服务器通过环境变量进行配置。请参阅 .env.example 对于所有可用选项:

必需的

  • Z_AI_API_KEY您的Z.AI API密钥

可选

  • PLATFORM_MODE平台模式(ZAI,智浦,AUTO)
  • VISION_MODEL要使用的视觉模型(默认:glm-4.5v)
  • MAX_IMAGE_SIZE_MB最大图像大小(以MB为单位)(默认:5)
  • MAX_VIDEO_SIZE_MB最大视频大小(以MB为单位)(默认:8)
  • TRANSPORT传输模式(stdio,http)
  • LOG_LEVEL日志级别(DEBUG,INFO,WARNING,ERROR)

用法

MCP 工具

服务器注册了以下MCP工具:

analyze_image

使用人工智能视觉模型分析图像。

参数:

  • image_source (字符串):本地文件路径或图像的远程URL
  • prompt (字符串):详细分析提示

示例:

{
    "image_source": "/path/to/image.jpg",
    "prompt": "Describe what you see in this image"
}

analyze_video

使用AI视觉模型分析视频。

参数:

  • video_source (字符串):视频的本地文件路径或远程URL
  • prompt (字符串):详细分析提示

示例:

{
    "video_source": "https://example.com/video.mp4",
    "prompt": "Summarize the content of this video"
}

支持的格式

图片: PNG、JPG、JPEG(最大5MB) 视频: MP4、MOV、AVI、WebM、M4V(最大8MB)

发展

设置开发环境

# Install development dependencies
pip install -r requirements/dev.txt

# Run tests
pytest

# Code formatting
black src/ tests/
ruff check src/ tests/

# Type checking
mypy src/

项目结构

src/
├── vision_server.py          # Main FastMCP server
├── config/
│   ├── settings.py           # Configuration management
├── services/
│   ├── file_service.py       # File operations
├── types/
│   ├── errors.py             # Custom error types
└── utils/                     # Utility functions

从TypeScript迁移

这是原始TypeScript MCP服务器的Python实现。迁移过程中保持了:

  • ✅ 翻译为中文是:✅(这个符号本身在中文中没有特定的含义,通常用于表示正确、确认或完成,类似于英文中的“check mark”或“tick”) API 兼容性相同的工具名称和参数
  • ✅ 功能所有现有功能均保留
  • ✅ 配置兼容的环境变量
  • ✅ 错误响应一致的错误处理

许可证

Apache 许可证 2.0 - 详情请参阅 LICENSE 文件。

支持

  • 文档https://docs.z.ai/ 的中文翻译可以是:“https://z.ai官方文档/” 或者根据具体语境简化为 “z.ai 文档网站”。不过,由于网址本身是英文且具有特定指向性,直接使用英文网址在中文语境下也是被广泛接受的
  • 问题https://github.com/z-ai/mcp-vision-server/issues(的中文表述可以是):“GitHub上的z-ai/mcp-vision-server项目问题页面”
  • 支持support@z.ai(注:这个邮箱地址在中文语境下通常直接保留原样,不进行翻译,因为它是特定服务或公司的联系邮箱,直接使用即可。)

更新日志

v2.0.0(Python实现)

  • ✅ 从TypeScript完全迁移到Python
  • ✅ FastMCP框架集成
  • ✅ 增强了错误处理和验证功能
  • ✅ 改进的配置管理
  • ✅ 支持Docker容器化
  • ✅ 全面的类型安全性