Skip to main content
Glama
1orZero

z_ai_vision_mcp_server_clone

by 1orZero

z_ai_vision_mcp_server_clone

OpenAI-compatible MCP server for running image analysis tools against your own vision model endpoint.

Tools

  • ui_to_artifact

  • extract_text_from_screenshot

  • diagnose_error_screenshot

  • understand_technical_diagram

  • analyze_data_visualization

  • ui_diff_check

  • analyze_image

Related MCP server: vision-mcp

Configuration

Set either VISION_ENDPOINT or VISION_BASE_URL.

Variable

Required

Description

VISION_ENDPOINT

Yes, unless VISION_BASE_URL is set

Full chat completions endpoint.

VISION_BASE_URL

Yes, unless VISION_ENDPOINT is set

Base URL; /chat/completions is appended.

VISION_MODEL

Yes

Vision model name sent in the request body.

VISION_API_KEY

No

Bearer token. Omit for local endpoints that do not require auth.

VISION_PROVIDER

No

Label for your provider. Defaults to custom.

VISION_MAX_IMAGE_MB

No

Local image size limit. Defaults to 5.

VISION_TIMEOUT_MS

No

Request timeout. Defaults to 300000.

VISION_TEMPERATURE

No

Optional model temperature.

VISION_TOP_P

No

Optional model top_p.

VISION_MAX_TOKENS

No

Optional max_tokens.

You can also place these values in a local .env file in the working directory where the server starts. Real environment variables override .env values.

Run

npm install
npm run build
VISION_ENDPOINT=http://localhost:11434/v1/chat/completions VISION_MODEL=llava npm start

Or with .env:

npm start

MCP Client Example

{
  "mcpServers": {
    "z-ai-vision-clone": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "z_ai_vision_mcp_server_clone"],
      "env": {
        "VISION_ENDPOINT": "https://your-provider.com/v1/chat/completions",
        "VISION_MODEL": "your-vision-model",
        "VISION_API_KEY": "your-api-key"
      }
    }
  }
}

Available Tools

7 tools
analyze_data_visualizationAnalyze Data VisualizationC

Analyze charts, graphs, and dashboards for metrics, trends, anomalies, and implications.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYes
image_sourceYes
analysis_focusNo

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Description omits behavioral details such as output format, required input quality, or side effects. Since no annotations exist, this gap is significant.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence is concise but overly terse, sacrificing necessary detail. It is front-loaded but incomplete.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of annotations, output schema, and parameter descriptions, this description is insufficient for an agent to correctly invoke the tool. It lacks details on inputs and outputs.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With schema description coverage at 0%, the description adds no meaning to the three parameters. It does not explain what 'image_source', 'prompt', or 'analysis_focus' mean or their expected values.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly specifies the resource ('charts, graphs, and dashboards') and action ('analyze for metrics, trends, anomalies, and implications'). It differentiates from sibling tools like 'analyze_image' by focusing on data visualizations, though not explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like 'understand_technical_diagram' or 'analyze_image'. The description does not specify prerequisites or exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

analyze_imageAnalyze ImageC

General-purpose image analysis for cases not covered by the specialized image tools.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYes
image_sourceYes

TDQS

C2.2/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits such as side effects, authentication needs, or output format. It fails to mention any, leaving the agent uninformed about what happens when the tool is invoked.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short (12 words), but it sacrifices informativeness for brevity. It does not earn its place as it fails to provide necessary context for usage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and two undocumented parameters, the description is severely incomplete. An agent cannot safely or effectively use this tool based on the provided information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage, and the tool description does not explain the role of 'image_source' or 'prompt'. This leaves the agent without understanding how to construct a valid request.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description indicates it is a general-purpose image analysis tool, contrasting with specialized siblings. However, it lacks specificity about what analysis entails (e.g., object detection, color analysis), making the purpose vague.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states to use this tool 'for cases not covered by the specialized image tools,' providing clear context for when it is appropriate. It does not elaborate on specific exclusion criteria or name alternatives, but the guidance is direct.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

diagnose_error_screenshotDiagnose Error ScreenshotC

Analyze an error screenshot and suggest likely causes and fixes.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYes
contextNo
image_sourceYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must carry full burden. It fails to disclose behavioral traits such as whether internet access is needed, data storage implications, or limitations (e.g., requires clear error message, cannot handle handwritten errors). The description implies a diagnostic output but lacks specifics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence of 12 words, front-loaded with key action and outcome. No redundant information. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 3 parameters, no annotations, and no output schema, the description is too sparse. It does not explain return values, edge cases, or limitations. More details are needed for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 3 parameters (prompt, context, image_source) with 0% description coverage. The tool description adds no meaning beyond the schema; it doesn't explain what each parameter does or how to use them. This is a significant gap given low schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'analyze' and 'suggest', the resource 'error screenshot', and outcomes 'causes and fixes'. It distinguishes from sibling tools like 'analyze_image' (general) and 'extract_text_from_screenshot' (text-only), making it specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. Does not mention prerequisites, exclusions, or scenarios where other tools (e.g., 'analyze_image' or 'ui_diff_check') would be more appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

extract_text_from_screenshotExtract Text from ScreenshotC

Extract visible text from a screenshot, including code, logs, terminal output, and documents.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYes
image_sourceYes
programming_languageNo

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It only states the basic function without mentioning limitations (e.g., image format, size, handwritten text) or side effects. This is a significant gap for a tool with no other documentation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, which is concise, but it omits important details. It includes useful examples but lacks structure—no sections for usage, parameters, or behavior.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema, annotations, and parameter descriptions, the tool definition is incomplete. The description does not cover return values, error conditions, or formatting, leaving the agent with insufficient context to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description adds no information about the three parameters. The purpose of 'prompt' and 'programming_language' is unclear, and 'image_source' format is not specified. The description fails to compensate for the missing schema details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool extracts visible text from screenshots, listing specific content types like code and logs. This distinguishes it from sibling tools such as analyze_image or diagnose_error_screenshot, which target different tasks.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus its siblings, such as diagnose_error_screenshot or analyze_data_visualization. The description lacks context about prerequisites or preferred scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ui_diff_checkUI Diff CheckC

Compare a reference UI screenshot with an actual implementation screenshot.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYes
actual_image_sourceYes
expected_image_sourceYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears the full burden. It only states 'compare' without disclosing whether it returns a diff image, text, pass/fail, or any side effects. Lacks details on authentication, rate limits, or destructive potential.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence, but it lacks structure. It does not front-load key information or use bullet points. While short, it omits critical details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Without annotations, output schema, or parameter descriptions, the description is incomplete. It does not specify return format, error handling, or how the comparison is performed. For a tool comparing images, critical context is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, meaning no parameter descriptions in schema. The tool description adds no semantics beyond parameter names. 'prompt', 'actual_image_source', and 'expected_image_source' are not explained (e.g., URL format, file type).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'compare' and the two resources (reference and actual screenshots). It conveys the core function but does not explicitly differentiate from siblings like 'analyze_image' or 'diagnose_error_screenshot'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. Does not specify prerequisites, limitations, or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ui_to_artifactUI to ArtifactC

Convert a UI screenshot into code guidance, a recreation prompt, a design spec, or a description.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYes
output_typeYes
image_sourceYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden for behavioral disclosure. It does not mention how the image source is processed, what format the output takes, or any requirements/limitations (e.g., image size, type). This is insufficient for a conversion tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The single-sentence description is concise and to the point. It wastes no words but could benefit from a second sentence to clarify parameter roles or output behavior without harming conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given three required parameters, no output schema, and no annotations, the description is too brief. It omits crucial details about the output format, the meaning of each output type, and how the tool handles the image. This leaves significant gaps for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so description must compensate. It only adds meaning for 'output_type' by listing the four enum values. The 'image_source' and 'prompt' parameters are not described at all, leaving ambiguity about their format or purpose.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool converts a UI screenshot into one of four specific outputs (code guidance, recreation prompt, design spec, description). This distinct purpose sets it apart from siblings like analyze_image (general) or ui_diff_check (comparison).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., ui_diff_check, diagnose_error_screenshot). The description lacks any context about prerequisites, limitations, or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

understand_technical_diagramUnderstand Technical DiagramC

Explain architecture diagrams, flowcharts, UML, ER diagrams, and related technical drawings.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYes
diagram_typeNo
image_sourceYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description must fully disclose behavioral traits. It only says 'explain' without detailing how the explanation is delivered (e.g., text, structured data), what input is required beyond 'image_source' and 'prompt', or any limitations (e.g., supported image formats, resolution).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that directly states the tool's purpose and lists supported diagram types. It is front-loaded and avoids redundancy, though it could be more structured by including input/output hints.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given three parameters (two required) and no output schema or annotations, the description should explain the expected return format, prerequisites (e.g., valid image URL), or examples. It fails to do so, leaving the agent uncertain about how to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, meaning the description must compensate. It only loosely implies that 'diagram_type' corresponds to listed types, but does not explain the meaning or constraints of 'image_source' or 'prompt' (e.g., what constitutes a valid prompt). No additional parameter-level context is provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Explain') and the resource ('technical diagrams'), and enumerates specific diagram types (architecture, flowcharts, UML, ER). However, it does not explicitly differentiate from sibling tools like 'analyze_data_visualization' or 'analyze_image', which could also handle technical diagrams.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No usage guidance is provided. The description does not specify when to use this tool versus alternatives, nor does it mention prerequisites or cases where the tool should not be used.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 7 tool updatesv0.1.1
    • First observedanalyze_data_visualization
    • First observedanalyze_image
    • First observeddiagnose_error_screenshot
    • First observedextract_text_from_screenshot
    • First observedui_diff_check
    • First observedui_to_artifact
    • First observedunderstand_technical_diagram

TDQS

B3/5.0
Disambiguation4/5

Each tool has a distinct purpose (e.g., data visualization vs. error screenshot vs. text extraction), but 'analyze_image' as a catch-all creates slight ambiguity since it overlaps with the specialized tools.

Naming Consistency4/5

Most names follow a verb_noun pattern (analyze_*, extract_text_*, understand_*), but 'ui_diff_check' and 'ui_to_artifact' deviate slightly from the typical structure.

Tool Count5/5

With 7 tools focused on image and UI analysis, the count is well-scoped—no unnecessary duplication and full coverage of the domain.

Completeness5/5

The tool set covers major visual analysis tasks (charts, screenshots, text extraction, UI comparison, diagram understanding) with no obvious gaps for the intended use case.

Maintenance

ActivityStale
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

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/1orZero/z_ai_vision_mcp_server_clone'

If you have feedback or need assistance with the MCP directory API, please join our Discord server