qwen-vision-mcp
Enables Claude Code to analyze images using Qwen vision models (via DashScope) when the main model is text-only.
README
qwen-vision-mcp
让 Claude Code 具备"看图"能力的 MCP 服务器。当主模型是纯文本模型(如 DeepSeek)时,通过本工具把图片交给 Qwen 视觉模型(默认阿里云 DashScope 的 qwen-vl-max)分析,再把结果返回给 Claude。
原理
Claude Code ──(MCP stdio)──> qwen-vision-server.py ──(base64 图片)──> DashScope API (qwen-vl-max)
▲ │
└────────────────────── 返回文字描述 ◀──────────────────────────────────┘
- 主模型理解你的话、决定"该看图了",然后调用
analyze_image工具 qwen-vision-server.py把图片文件 base64 编码,发给视觉模型,拿回文字描述- 真正"看懂"图片的是 qwen 视觉模型,主模型负责调度和转述
前置要求
- Claude Code
- uv(推荐,自动装依赖、跨平台)。安装:
- Windows:
winget install astral-sh.uv或pip install uv - macOS/Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
- Windows:
- 一个 DashScope(阿里云百炼)API Key,申请地址:https://bailian.console.aliyun.com
不想用 uv 也可以,见文末"不使用 uv 的备用方案"。
快速开始
# 1. 克隆仓库
git clone https://github.com/<你的用户名>/qwen-vision-mcp.git
cd qwen-vision-mcp
# 2. 设置你的 API Key —— 必须在"启动 claude 的那个终端"里设置
# Windows (PowerShell)
$env:DASHSCOPE_API_KEY = "sk-你的key"
# macOS / Linux (bash/zsh)
export DASHSCOPE_API_KEY="sk-你的key"
然后用 Claude Code 打开这个目录:
- 首次打开会弹出信任提示"Do you trust the files in this folder?",选第一项: "Yes, proceed with MCP servers and hooks enabled"(允许项目里的 MCP 服务器)
- 确认 qwen-vision 已连接:在 Claude Code 里输入
/mcp,应显示 qwen-vision 为 Connected - 直接给 Claude 发一张图片,或说:
用 qwen 看这张图,里面有什么?
自定义后端
默认走阿里云 DashScope。想用其他兼容 OpenAI 的视觉接口(比如自建 GPU 服务),改 .mcp.json 里 env 的三个变量:
| 变量 | 默认值 | 说明 |
|---|---|---|
DASHSCOPE_API_KEY |
(必须填) | API Key,支持 ${环境变量} 占位 |
QWEN_BASE_URL |
https://dashscope.aliyuncs.com/compatible-mode/v1 |
接口地址 |
QWEN_MODEL |
qwen-vl-max |
模型名 |
项目结构
qwen-vision-mcp/
├── qwen-vision-server.py # MCP 服务器脚本(核心,含 uv 内联依赖声明)
├── .mcp.json # MCP 配置(项目作用域,Claude Code 自动加载)
├── requirements.txt # 备用方案的 Python 依赖(python 命令时用)
├── README.md # 本文档
└── .gitignore # 防止 key 泄漏
不使用 uv 的备用方案
如果你不想装 uv,改成 python 方式:
pip install -r requirements.txt
然后把 .mcp.json 里的启动命令改成:
"command": "python",
"args": ["qwen-vision-server.py"]
macOS/Linux 若
python不存在,改用python3,并相应改command。
常见问题
Q: analyze_image 工具没出现?
A: 先确认 /mcp 里 qwen-vision 是 Connected;不是就重启 Claude Code。若完全没加载,大概率是没通过首次信任提示,重开一次选"允许 MCP servers"。
Q: 报 401 Unauthorized?
A: API Key 不对或没设置。确认启动 claude 的终端里 DASHSCOPE_API_KEY 已 export(每次新开终端都要再设,或用 setx 持久化)。
Q: 回答是空的?
A: 若换用了推理型模型(如 Qwen3.5),答案可能放在 reasoning_content,脚本已自动兜底。仍为空就检查 key 余额、模型名。
Q: 不想每次设环境变量?
A: Windows 可 setx DASHSCOPE_API_KEY "sk-你的key" 持久化到用户环境;或改 .mcp.json 直接填 key,但千万别提交到 git(见安全提醒)。
安全提醒
- 不要把 API Key 写进代码或提交到 GitHub,否则别人能用你的额度替你的 key 买单
- 本项目
.gitignore已排除.env、*.key等文件,但.mcp.json里若手填了 key,提交前务必改回${DASHSCOPE_API_KEY} .mcp.json会让克隆者执行其中的启动命令,这是正常的(需要用户同意信任),但也请确认你只提交了自己写的脚本
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。