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

  • Disambiguation5/5

    Each tool targets a distinct input type (local image, remote image, multiple images, models). No overlap between analyze tools is present.

    Naming Consistency5/5

    All tools follow a clear verb_noun pattern: list_models and analyze_* are consistent and predictable.

    Tool Count5/5

    Four tools is well-scoped for a vision analysis server, covering model listing and image analysis without unnecessary bloat.

    Completeness5/5

    The set covers the core workflows: listing available models, analyzing local and remote images, and multi-image analysis. No obvious gaps for the domain.

  • Average 3.8/5 across 4 of 4 tools scored.

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

    • No community issues in the last 6 months
    • 2 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?

    With no annotations provided, the description must fully disclose behavioral traits. It mentions the input (URL) and the output (vision model recognition result), but fails to disclose potential side effects like network fetching of the URL, authentication requirements, rate limits, or error behaviors. This leaves significant behavioral ambiguity for a tool that involves remote resources.

    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 a single, concise sentence that directly states the tool's action and result. It is front-loaded with the primary purpose ('analyze a remote image') and avoids any extraneous details. Every word contributes to understanding the tool's core function.

    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 an output schema and the presence of sibling tools that suggest ambiguity, the description is underspecified. It does not explain the return format in detail, provide usage guidelines, or differentiate when to use this tool over analyze_image/analyze_images. For a six-parameter tool without annotations, this is insufficient context.

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

    Parameters3/5

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

    Schema description coverage is 100%, so all six parameters are already documented in the schema. The description adds no additional semantic information beyond what the schema provides, such as parameter relationships or usage examples. Baseline of 3 is appropriate since the schema carries the full parameter documentation burden.

    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's function with a specific verb (analyze) and resource (remote image via URL), and explicitly mentions the input format (http/https URL). It distinguishes itself from sibling tools like analyze_image by specifying 'remote' and 'via URL', making its purpose unique and unambiguous.

    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 usage for remote images passed via URL, but it does not explicitly state when to use this tool versus its siblings (analyze_image, analyze_images) or provide any exclusions. There is no explicit guidance on alternatives, leaving the selection partially inferred from the purpose rather than clearly documented.

    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 carries the full burden of disclosing behavioral traits. It only states that it returns a recognition result, without mentioning whether the operation is read-only, whether it has side effects such as network calls, or any limitations. This is a minimal disclosure, leaving important behavioral aspects unspecified.

    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 a single, focused sentence that conveys the core purpose and input methods. It is front-loaded with the action and resource, contains no fluff, and every word contributes to understanding the tool's function.

    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 explains the main purpose but lacks detail about the return format (since there is no output schema) and doesn't clarify when to use this tool over its siblings. The schema covers parameter semantics, but the overall context of choosing between local and URL-based analysis is not explicitly addressed in the description.

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

    Parameters3/5

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

    The schema description coverage is 100%—every parameter has a detailed description. The tool description adds no additional meaning beyond what the schema already provides (e.g., it mentions image_path and image_data but doesn't elaborate on their semantics). Thus the baseline of 3 is appropriate; the description does not compensate or enhance beyond the schema.

    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 a local image via path or base64 data and returns the visual model's recognition result. It specifically mentions 'local image' which distinguishes it from the sibling tool 'analyze_image_url' that likely handles URLs, and 'analyze_image' (singular) differentiates from 'analyze_images' (plural). The verb 'analyze' and resource 'local image' are explicit.

    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 usage for local images (via path or base64) but does not explicitly state when to use this tool vs alternatives like analyze_image_url or analyze_images. It neither mentions exclusions nor names alternative tools. The sibling names suggest a distinction, but the description itself doesn't provide clear comparative guidance.

    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?

    No annotations are provided, so the description carries the burden. It discloses the underlying API call (/v1/models) and implies read-only behavior via '查询'. However, it does not mention authentication, rate limits, or what happens when provider is omitted, leaving gaps for a networked operation.

    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 a single concise sentence that includes both the action and the endpoint. It is front-loaded with the purpose and contains no redundant content.

    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?

    Given the tool's simplicity (one optional parameter, no output schema), the description is mostly complete: it names the operation and the API call. It could briefly mention whether the parameter is required or defaults to current provider, but this is a minor gap for a straightforward list operation.

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

    Parameters3/5

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

    The schema already fully documents the provider parameter with a description. The tool description mentions 'current provider' but doesn't add details about how provider is used or defaults. With 100% schema coverage, the baseline is 3 and the description adds minimal semantic value beyond the schema.

    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 lists models supported by the current provider, with the specific API endpoint /v1/models. The verb '查询' (query) and resource '模型列表' are specific. It is obviously distinct from sibling tools that analyze images.

    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 context is clear: use when you need to see which models the current provider supports. It doesn't explicitly mention when not to use or alternatives, but siblings are unrelated so no exclusion is needed. The optional provider parameter and mention of 'current provider' imply default behavior, though not explicit.

    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?

    With no annotations, the description carries the full burden. It discloses the key behavior of accepting mixed image sources and the intended use cases, but does not mention any limitations, error handling, or return format. For a read-only analysis tool, this is acceptable but not rich. It adds some context beyond the schema.

    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 a single, well-structured sentence that front-loads the main action and key differentiators. It is concise with no wasted words, while still conveying the essential purpose and use cases.

    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 core usage but has gaps given no output schema and no annotations. It does not explain what the response looks like (e.g., combined vs per-image analysis), nor any potential prerequisites or limitations. However, the schema is complete and the description gives enough for a simple analysis tool.

    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 100%, so the baseline is 3. The description adds meaningful context by explicitly stating the mixed input types (path/base64/URL) and the purpose of the analysis (comparison, differences, comprehensive understanding), which helps agents understand how to construct the 'images' parameter and use the 'prompt' parameter appropriately.

    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 the resource 'multiple images' with explicit use cases (comparison, finding differences, comprehensive understanding). It distinguishes from siblings by explicitly handling multiple images and mixed input types (path/base64/URL), which is not covered by analyze_image or analyze_image_url.

    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 provides clear context for when to use the tool: when multiple images need joint analysis or comparison. It does not explicitly list alternative tools or exclusions, but the sibling names (analyze_image, analyze_image_url) make it obvious that this is the multi-image variant. The mention of 'mixed' input also hints at a key usage condition.

    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

ai-vision MCP server

Copy to your README.md:

Score Badge

ai-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/kaijia323/ai-vision'

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