图像识别服务器

一个基于Python的MCP服务器,提供多模型支持的图像识别功能,适用于图像描述和问答场景。

  • by glasses666
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 glasses666/mcp-image-recognition-py

使用说明

MCP图像识别服务器(Python)

Python中的MCP服务器实现,使用各种LLM提供程序(Gemini、OpenAI、Qwen/Tongyi、Doubao等)提供图像识别功能。

特性

  • 图像识别:描述图片或回答有关图片的问题。
  • 多模型支持:双子座、GPT-4o、Qwen VL、豆瓣等之间动态切换。
  • 灵活的:接受图像URL或Base64数据。

快速设置(推荐)

我们提供自动化脚本,一键设置环境和依赖关系。

Linux/macOS

git clone https://github.com/glasses666/mcp-image-recognition-py.git
cd mcp-image-recognition-py
./setup.sh

视窗

  1. 克隆或下载此存储库。
  2. 双击 setup.bat.

脚本完成后,只需编辑 .env 使用API密钥文件。


安装与使用(手册)

如果您更喜欢手动安装或想使用 uv:

先决条件

  • Python 3.10或更高版本
  • 为您首选的模型提供商(Google Gemini、OpenAI、Aliyun DashScope等)提供API密钥

方法1:使用 uv (推荐)

紫外线 是一个非常快的Python包管理器。

1.直接用 uv run

您不需要手动创建虚拟环境。

# Clone the repo
git clone https://github.com/glasses666/mcp-image-recognition-py.git
cd mcp-image-recognition-py

# Create .env file with your API keys
cp .env.example .env
# Edit .env with your keys

# Run the server
uv run server.py

2.使用 uvx (用于临时执行)

如果你想在不显式克隆仓库的情况下运行它(通过git进行实验支持):

# Note: You still need to provide environment variables. 
# It's easier to clone and use 'uv run' for persistent config via .env
uvx --from git+https://github.com/glasses666/mcp-image-recognition-py mcp-image-recognition

方法2:标准Python(pip)

Linux/macOS

  1. 克隆和设置:

    git clone https://github.com/glasses666/mcp-image-recognition-py.git
    cd mcp-image-recognition-py
    python3 -m venv venv
    source venv/bin/activate
    pip install -r requirements.txt
    
  2. 配置:

    cp .env.example .env
    # Edit .env and add your API keys
    
  3. 运行:

    python server.py
    

视窗

  1. 克隆和设置:

    git clone https://github.com/glasses666/mcp-image-recognition-py.git
    cd mcp-image-recognition-py
    python -m venv venv
    .\venv\Scripts\activate
    pip install -r requirements.txt
    
  2. 配置:

    copy .env.example .env
    # Edit .env and add your API keys
    
  3. 运行:

    python server.py
    

配置

创建一个 .env 项目根目录中的文件基于 .env.example:

1.适用于谷歌双子座(建议考虑速度/成本)

从获取API密钥 谷歌AI工作室.

GEMINI_API_KEY=your_google_api_key
DEFAULT_MODEL=gemini-1.5-flash

2.同益倩雯(Qwen-阿里云)

从获取API密钥 阿里云DashScope.

OPENAI_API_KEY=your_dashscope_api_key
OPENAI_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
DEFAULT_MODEL=qwen-vl-max

3.斗宝(Volcengine)

从获取API密钥 Volcengine方舟.

OPENAI_API_KEY=your_volcengine_api_key
OPENAI_BASE_URL=https://ark.cn-beijing.volces.com/api/v3
DEFAULT_MODEL=doubao-pro-32k

代理AI配置(克劳德桌面等)

要将此服务器与MCP客户端(如Claude Desktop)一起使用,请将其添加到配置文件中。

配置文件路径

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • 视窗: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json (如果可用)

配置JSON

选项A:使用 uv (最简单) 如果你有 uv 安装后,您可以让它处理环境。

{
  "mcpServers": {
    "image-recognition": {
      "command": "/path/to/uv",
      "args": [
        "run",
        "--directory",
        "/absolute/path/to/mcp-image-recognition-py",
        "server.py"
      ],
      "env": {
        "GEMINI_API_KEY": "your_gemini_key_here",
        "OPENAI_API_KEY": "your_openai_key_here",
        "OPENAI_BASE_URL": "https://api.openai.com/v1",
        "DEFAULT_MODEL": "gemini-1.5-flash"
      }
    }
  }
}

选项B:标准Python Venv 确保您提供 绝对路径 到虚拟环境中的python可执行文件。

{
  "mcpServers": {
    "image-recognition": {
      "command": "/absolute/path/to/mcp-image-recognition-py/venv/bin/python", 
      "args": [
        "/absolute/path/to/mcp-image-recognition-py/server.py"
      ],
      "env": {
        "GEMINI_API_KEY": "your_gemini_key_here",
        "OPENAI_API_KEY": "your_openai_key_here",
        "OPENAI_BASE_URL": "https://api.openai.com/v1",
        "DEFAULT_MODEL": "gemini-1.5-flash"
      }
    }
  }
}

Windows注意事项: 对于路径,使用双反斜杠 \\ (例如。, C:\\Users\\Name\\...).


使用工具

recognize_image

分析图像并返回文本描述。

参数:

  • image (string,必填):要分析的图像。支持:
    • HTTP/HTTPS URL(例如。, https://example.com/cat.jpg)
    • Base64编码字符串(有或没有 data:image/...;base64, 前缀)
  • prompt (字符串,可选):特定指令。默认设置:“描述此图像”。
  • model (string,可选):覆盖此特定请求的默认模型。

许可证

麻省理工学院