Skip to main content
Glama

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.0

  • Disambiguation4/5

    Most tools are distinct: analyze_image handles general analysis, while ocr_extract and ocr_precise both do OCR but differ in precision and output structure. However, an agent might confuse ocr_extract with ocr_precise since both extract text.

    Naming Consistency4/5

    Two tools follow an 'ocr_' prefix pattern, while analyze_image uses a different verb_noun structure. The naming is mostly consistent within subgroups but lacks a unified pattern across all tools.

    Tool Count4/5

    3 tools is slightly thin for a 'vision' server, but covers core analysis and OCR functions. The count is appropriate for a focused utility, though more tools could be beneficial.

    Completeness3/5

    Basic image analysis and OCR are covered, but missing common vision tasks like object detection or image manipulation. The toolset feels minimal for general vision needs, leaving notable gaps.

  • Average 3.9/5 across 3 of 3 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • 0 of 1 community issues answered or closed in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

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

    No annotations are provided, so the description must fully disclose behavioral traits. However, it does not mention performance, limitations (e.g., file size, language support), or side effects. Only basic functionality is stated.

    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?

    The description is concise, with a clear front-loaded sentence explaining purpose, followed by parameter descriptions. Every sentence adds value without redundancy.

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

    Completeness3/5

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

    Given the tool's simplicity and the presence of an output schema, the description covers core aspects. However, it lacks details on input constraints (e.g., file size limits, supported languages) and error conditions, leaving some gaps.

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

    Parameters4/5

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

    Schema coverage is 0%, but the description explains both parameters: image as local path or URL, prompt as OCR hint with default behavior. This adds meaning beyond the schema, though more detail (e.g., supported image formats) could be beneficial.

    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 extracts text from images or PDFs (OCR), and provides use cases like screenshots, documents, and code. This makes the purpose unambiguous and distinct from siblings like analyze_image and ocr_precise.

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

    Usage Guidelines3/5

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

    The description implies use cases ('suitable for recognizing screenshots, documents, code text'), but does not explicitly state when to use this tool versus alternatives like ocr_precise. There is no mention of 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.

  • Behavior2/5

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

    No annotations are provided, so the description must bear full burden. It states that the tool analyzes images and supports local paths and URLs, but does not disclose non-destructive behavior, authentication needs, or rate limits. It implies read-only operation but is not explicit.

    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 concise: a single-sentence overview followed by a clear Args list. No unnecessary words, though the structure could be improved with a more formal separation of purpose and usage.

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

    Completeness3/5

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

    The description covers the tool's purpose, input parameters, and use cases. However, it lacks details on supported image formats, size limits, or performance considerations. The presence of an output schema mitigates the need for return value explanation.

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

    Parameters4/5

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

    Schema has 0% description coverage, so the description must compensate. It explains the 'image' parameter as a local path or URL, and 'prompt' as an analysis prompt with default behavior. This adds significant meaning beyond the bare schema types.

    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 analyzes image content and mentions specific use cases (image description, visual QA, chart analysis). It implicitly distinguishes from siblings ocr_extract and ocr_precise, which are OCR tools, so the purpose is well-defined.

    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 lists scenarios where the tool is applicable ('可用于图像描述、视觉问答、图表分析等场景'), providing clear context. However, it lacks explicit when-not-to-use guidance or direct mention of alternatives, though the sibling tools imply different use cases.

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

  • Behavior3/5

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

    无注释信息,描述承担了全部告知责任。提到使用传统OCR引擎、需配置Provider、返回结构化结果,但未提及是否具有破坏性、速率限制或其他约束。对于无注释工具来说,信息基本充分,但未完整披露所有行为。

    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?

    描述精炼,首句明确核心功能,随后提供配置要求和适用场景,最后以Args列表说明参数。无冗余信息,结构清晰,信息密度高。

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

    Completeness4/5

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

    考虑到有输出schema,描述不必要解释返回值,但已提及返回结构和内容。单参数工具,描述覆盖了关键使用前提和场景。但缺少对图片格式、大小限制等边缘情况的说明,整体上足够完整。

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

    Parameters4/5

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

    单个参数image,描述补充了其含义为本地绝对路径或远程URL,这在schema中未提供。参数说明清晰,弥补了schema描述覆盖率0%的不足,但未进一步说明支持的图片格式或最大尺寸。

    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?

    明确说明功能:使用传统OCR引擎精准提取图片文字,返回结构化结果包括坐标和置信度。同时通过场景描述(发票、卡证、表格)与兄弟工具区分,使用户清楚适用场景。

    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?

    指出需要配置百度或腾讯云OCR作为Provider,并说明适合需要精确文字位置信息的场景。但未明确说明何时不应使用此工具,也未直接提及兄弟工具作为替代方案,略显不足。

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

mcp-vision MCP server

Copy to your README.md:

Score Badge

mcp-vision MCP server

Copy to your README.md:

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/hahahahanb/mcp-vision'

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