vision-mcp-server
Provides image analysis capabilities by calling vision models through an OpenAI-compatible API, enabling AI agents to describe and analyze images using OpenAI or compatible providers.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@vision-mcp-serverDescribe this image: https://example.com/img.jpg"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Vision MCP Server|视觉分析 MCP 服务器
中文
这是一个通过视觉模型分析图片的本地 MCP Server。
例如当你在客户端使用的主模型只支持文字输入时,可以把本 MCP 添加到 Agent 工具中,由 analyze_image 工具调用独立的视觉模型完成图片理解。
v1.1 支持:
魔搭 ModelScope、智谱 BigModel,以及其他 OpenAI Chat Completions 兼容视觉接口
同一 API Key 下配置多个模型,并按顺序 fallback
跨供应商 fallback
自动旋转、格式校验和等比例缩放图片,默认最长边 2048
本地目录限制、下载限制、日志脱敏和在线图片 SSRF 防护
Related MCP server: vision-mcp
配置应该写在哪里?
将模型地址、模型 ID 和 API Key 写入客户端或 Agent 的 MCP 配置:
{
"mcpServers": {
"vision-mcp-server": {
"command": "npx",
"args": ["-y", "vision-mcp-server"],
"env": {
"配置项": "配置值"
}
}
}
}请妥善保管 API Key,不要把包含真实 Key 的 MCP 配置公开或提交到代码仓库。
下面四种配置方式选择一种即可。
方式一:魔搭,一个 Key 配置多个模型
适合只使用魔搭 API-Inference 的用户。
{
"mcpServers": {
"vision-mcp-server": {
"command": "npx",
"args": ["-y", "vision-mcp-server"],
"env": {
"MODELSCOPE_TOKEN": "your_modelscope_token",
"MODELSCOPE_MODELS": "Qwen/Qwen3.5-397B-A17B,Qwen/Qwen3.5-35B-A3B"
}
}
}
}MODELSCOPE_MODELS 是使用英文逗号分隔的有序列表:
首先调用
Qwen/Qwen3.5-397B-A17B。如果它返回限流、超时或服务端故障,则调用后面的模型。
所有模型共用同一个
MODELSCOPE_TOKEN。
请确认所填写模型当前支持魔搭 API-Inference 和图片输入。魔搭的可用模型会变化,本项目不会限制具体 Model ID。
旧版单模型配置仍然兼容:
{
"MODELSCOPE_TOKEN": "your_modelscope_token",
"MODELSCOPE_MODEL": "Qwen/Qwen3.5-397B-A17B"
}如果同时设置 MODELSCOPE_MODELS 和 MODELSCOPE_MODEL,优先使用 MODELSCOPE_MODELS。
方式二:智谱,一个 Key 配置任意视觉模型
智谱模式不会写死模型。用户必须通过 VISION_MODELS 明确填写自己有权限使用的视觉模型:
{
"mcpServers": {
"vision-mcp-server": {
"command": "npx",
"args": ["-y", "vision-mcp-server"],
"env": {
"VISION_PROVIDER": "zhipu",
"ZAI_API_KEY": "your_zhipu_api_key",
"VISION_MODELS": "glm-4v-flash"
}
}
}
}默认示例仅使用免费的 glm-4v-flash。如需其他模型,请先确认智谱账户权限和计费规则,再手动加入 VISION_MODELS,例如:
glm-5v-turbo:付费视觉模型glm-4.6v:付费视觉模型glm-4.1v-thinking-flashx:增强型视觉模型,是否可用取决于账号权限glm-4.6v-flash:免费视觉模型glm-4.1v-thinking-flash:免费视觉模型glm-4v-flash:免费基础图片理解模型
实际可用模型、价格和权限以智谱官方模型列表为准。
注意:我们在 2026-08-09 的真实联调中,多次遇到 glm-4.6v-flash 返回 HTTP 429、业务码 1305(模型当前访问量过大),而 glm-4v-flash 可正常调用。这属于智谱免费共享服务的临时过载,不是本 MCP 的图片格式错误。如确需配置付费模型作为 fallback,请先确认计费规则和账户额度。
方式三:一个通用 OpenAI 兼容接口,配置多个模型
适合 OpenRouter、硅基流动、自建 vLLM/LM Studio 或其他兼容接口。接口必须支持:
POST {baseUrl}/chat/completionsOpenAI 风格的
messages[].content[]image_url.url中的 base64 data URL
{
"mcpServers": {
"vision-mcp-server": {
"command": "npx",
"args": ["-y", "vision-mcp-server"],
"env": {
"VISION_PROVIDER": "openai-compatible",
"OPENAI_BASE_URL": "https://provider.example/v1",
"OPENAI_API_KEY": "your_api_key",
"VISION_MODELS": "vision-model-a,vision-model-b,vision-model-c"
}
}
}
}三个模型共用 OPENAI_API_KEY,并按照 VISION_MODELS 中的顺序 fallback。
“OpenAI 兼容”不代表第三方一定支持图片。若某接口只兼容文本或不接受 base64 图片,本 MCP 无法使其获得视觉能力。
方式四:同时配置魔搭、智谱和其他供应商
需要跨供应商 fallback 时,使用 VISION_ROUTES。Key 仍然分别放在 env 中;VISION_ROUTES 只通过 apiKeyEnv 引用 Key 所在的环境变量名。
{
"mcpServers": {
"vision-mcp-server": {
"command": "npx",
"args": ["-y", "vision-mcp-server"],
"env": {
"MODELSCOPE_TOKEN": "your_modelscope_token",
"ZAI_API_KEY": "your_zhipu_api_key",
"CUSTOM_OPENAI_API_KEY": "your_custom_api_key",
"VISION_ROUTES": "[{\"name\":\"modelscope\",\"baseUrl\":\"https://api-inference.modelscope.cn/v1\",\"apiKeyEnv\":\"MODELSCOPE_TOKEN\",\"models\":[\"Qwen/Qwen3.5-397B-A17B\",\"Qwen/Qwen3.5-35B-A3B\"],\"maxImageEdge\":2048},{\"name\":\"zhipu\",\"baseUrl\":\"https://open.bigmodel.cn/api/paas/v4\",\"apiKeyEnv\":\"ZAI_API_KEY\",\"models\":[\"glm-4v-flash\"],\"maxImageEdge\":2048},{\"name\":\"custom-openai\",\"baseUrl\":\"https://provider.example/v1\",\"apiKeyEnv\":\"CUSTOM_OPENAI_API_KEY\",\"models\":[\"your-vision-model\"],\"maxImageEdge\":2048}]"
}
}
}
}上例的完整调用顺序为:
魔搭第一个模型
魔搭第二个模型(同一个魔搭 Key)
智谱第一个模型
智谱后续模型(同一个智谱 Key)
自定义兼容接口模型
VISION_ROUTES 一旦设置,就会覆盖前三种简化配置。
VISION_ROUTES 字段
字段 | 必填 | 说明 |
| 否 | 路由名称,只用于安全日志和测试筛选 |
| 是 | OpenAI 兼容接口基础地址 |
| 是 | API Key 所在的环境变量名,不是 Key 本身 |
| 二选一 | 单个模型 ID |
| 二选一 | 有序模型 ID 数组,同一路由共用一个 Key |
| 否 | 额外请求头;不要在这里存 API Key |
| 否 | 该路由请求超时,单位毫秒 |
| 否 | 该路由接受的图片最长边 |
| 否 | 供应商特有的请求字段,例如智谱 |
智谱开启思考模式的路由字段示例:
{
"extraBody": {
"thinking": { "type": "enabled" }
}
}fallback 什么时候发生?
会切换到下一模型:
HTTP
408、429、500、502、503、504请求超时、连接重置、DNS 或其他网络连接错误
不会切换:
HTTP
400:图片、Prompt 或请求参数错误HTTP
401/403:Key、权限或模型授权错误内容安全拒绝
本地图片不存在、格式无效或路径不允许
失败模型会进入冷却,默认 60 秒。这样可避免每次工具调用都先撞一次已经限流的模型。
配置参数总表
供应商和模型
环境变量 | 使用场景 | 说明 |
| 魔搭 | 魔搭 API Token |
| 魔搭旧版单模型 | 单个模型 ID |
| 魔搭多模型 | 英文逗号分隔,优先于 |
| 简化配置 |
|
| 智谱 | 智谱 API Key |
| 通用兼容接口 | 基础地址,例如 |
| 通用兼容接口 | API Key |
| 简化配置高级选项 | 改用指定名称的 Key 环境变量 |
| 智谱/通用兼容接口 | 必填;英文逗号分隔的有序模型列表 |
| 多供应商 | 高级路由 JSON;设置后覆盖简化配置 |
图片、安全和可靠性
环境变量 | 默认值 | 说明 |
|
| 简化配置的默认最长边 |
|
| 输入或处理后图片最大字节数 |
|
| 解码图片最大像素数 |
| 未限制 | 允许读取的本地目录,多个目录用英文逗号分隔 |
|
| 在线图片下载超时 |
|
| 模型请求超时 |
|
| 失败路由冷却时间 |
|
| 输出脱敏调试日志到 stderr |
推荐为本地图片配置允许目录:
{
"VISION_ALLOWED_DIRS": "D:\\Pictures,D:\\Screenshots"
}MCP 工具
analyze_image
参数 | 必填 | 说明 |
| 是 | 本地绝对路径、HTTP/HTTPS URL 或 image data URL |
| 否 | 针对图片的问题,默认“请描述这张图片的内容” |
示例:
{
"name": "analyze_image",
"arguments": {
"image": "D:\\Pictures\\chart.png",
"prompt": "提取图表中的标题、数据和单位"
}
}图片处理
在发送给供应商之前,本 MCP 会:
校验真实文件内容,仅接受 JPEG、PNG、WebP、GIF。
应用 EXIF 方向。
按所有候选路由中最小的
maxImageEdge等比例缩放,不放大小图。有透明通道时输出 PNG,否则输出 JPEG。
清除 EXIF 等元数据。
将图片作为 base64 data URL 发送给视觉接口。
在线图片会先安全下载并做同样处理;localhost、内网地址和云元数据地址默认禁止访问。
安装要求
Node.js
20.9.0或更高版本MCP 客户端支持本地 stdio Server
使用 npx 无需提前全局安装:
npx -y vision-mcp-server开发
npm install
npm test
npm run build更新日志
见 CHANGELOG.md。
English
Vision MCP Server adds image understanding to MCP agents by calling a separately configured vision model.
For a local stdio installation, put provider credentials and model IDs in the MCP host configuration under mcpServers.<name>.env. Models in the same comma-separated VISION_MODELS/MODELSCOPE_MODELS list share one API key and are tried in order. Use VISION_ROUTES for ordered fallback across multiple providers.
Supported configurations:
ModelScope:
MODELSCOPE_TOKEN+MODELSCOPE_MODELSZhipu:
VISION_PROVIDER=zhipu+ZAI_API_KEY+ explicitVISION_MODELSGeneric OpenAI-compatible endpoint:
VISION_PROVIDER=openai-compatible+OPENAI_BASE_URL+OPENAI_API_KEY+VISION_MODELSMultiple providers:
VISION_ROUTES
Zhipu models are not hardcoded. Free and paid vision model IDs can be mixed in any order. See the complete configuration examples above.
The server falls back only for rate limits, timeouts, network failures, and selected 5xx responses. Invalid images, authentication failures, and request validation errors do not trigger fallback.
License: MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Tools
Related MCP Servers
- Alicense-qualityDmaintenanceAn MCP server for analyzing images using OpenRouter vision models, offering capabilities like automatic image resizing, model configuration, and handling custom queries about images.10MIT
- Alicense-qualityDmaintenanceAn MCP server that analyzes images using OpenRouter's Gemini Flash model, supporting local file paths and URLs.63MIT
- Alicense-qualityCmaintenanceAn MCP server that enables any LLM to describe images from file paths, URLs, or base64 data by forwarding them to a supported vision provider such as OpenAI, Anthropic, or local Ollama models.1,6459MIT
- AlicenseAqualityBmaintenanceMCP server for image recognition, supporting multiple vision backends (Anthropic, Zhipu, Ollama) to describe, answer questions, and analyze images.3461MIT
Related MCP Connectors
MCP server for NanoBanana AI image generation and editing
MCP server for ByteDance Seedream AI image generation
MCP server for Flux AI image generation
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Markusbetter/vision-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server