Skip to main content
Glama

Server Quality Checklist

58%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.0

  • Disambiguation5/5

    Each tool targets a distinct input type: images, PDFs, and system diagnostics. The descriptions make boundaries clear, with no overlapping purposes.

    Naming Consistency4/5

    Two tools follow the read_* pattern, but 'vision_doctor' deviates from the verb_noun style. Still, it's readable and predictable.

    Tool Count5/5

    Three tools is well-scoped for a local vision server: two primary operations and one diagnostic helper. No redundancy or bloat.

    Completeness4/5

    Image and PDF reading are covered, along with setup diagnostics. Minor gaps like a standalone model list tool exist, but the core workflow is complete.

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

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

    • No community issues in the last 6 months
    • 9 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
  • Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.

    If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.

    MCP servers without a LICENSE cannot be installed.

  • 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

  • Behavior4/5

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

    Beyond the readOnlyHint annotation, the description adds meaningful behavioral details: processing happens through a local vision model, output is a verbatim transcription plus structural description, and supported image formats are specified. It does not contradict the annotations, and the local-model detail adds useful context about privacy and execution.

    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?

    Three sentences deliver purpose, output, supported formats, use cases, and question semantics without fluff. The most important information is front-loaded and every sentence contributes.

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

    Completeness5/5

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

    The tool is moderately complex (vision model, multiple formats, optional question), but the description covers return values, use cases, and parameter behavior. Since there is no output schema, the description properly explains what the agent can expect. Combined with strong annotations, no critical gaps remain.

    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 coverage is 100%, so the baseline is 3. The description clarifies that supplying `question` returns a focused detail instead of full transcription, but the schema already states 'Optional specific question about the image. Omit for a full description,' making this marginal added value.

    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 opens with a specific verb ('Read') and resource ('local image file'), enumerates supported formats, and states the concrete output: verbatim text transcription plus structural description. This clearly distinguishes it from sibling tools like read_pdf, which handles PDFs.

    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?

    Explicit use cases are listed ('screenshots, error dialogs, design mockups, whiteboard photos, and graphs') and parameter usage for focused questions is described. It provides clear context for when to use the tool but does not explicitly mention when not to use it or name alternatives.

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

  • Behavior5/5

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

    The description goes well beyond the readOnlyHint annotation by disclosing the hybrid mechanism: text-layer pages are extracted exactly, while scanned pages are rendered and read by a local vision model. It also mentions the cost implication ('for free') and the optional question-based search, providing valuable behavioral context.

    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 two sentences, front-loaded with the purpose, and each sentence earns its place. It is efficient and avoids redundancy with the schema.

    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 complexity and absence of an output schema, the description covers the main behavior and usage well. It implies the output (text transcription or answer) but does not explicitly describe the return structure. Overall, it is sufficiently complete for most use cases.

    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 the baseline is 3. The description adds usage examples for pages and question, but the schema already provides similar details, so the added value is marginal. It does not significantly enhance parameter understanding 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 identifies the tool as reading a local PDF, with a specific verb and resource. It distinguishes from sibling tools by focusing on PDFs, and explains the dual text/vision behavior, which sets it apart from read_image and vision_doctor.

    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 using the tool (local PDFs, page selection, question-based extraction) but does not explicitly mention exclusions or alternative tools. The guidance on when to use pages and question is helpful, but it lacks an explicit 'when not to use' or alternative tool comparison.

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

  • Behavior4/5

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

    The description adds concrete behavioral details—exactly what it checks (Ollama, vision model, poppler)—beyond the readOnlyHint annotation. It does not mention potential side effects, but the annotation already establishes it as read-only. It could be more explicit about output format, but the described reporting behavior is clear.

    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 two sentences: first states the functional output, second gives usage guidance. Every sentence is informative and there is no redundant information. It is front-loaded and easy to understand.

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

    Completeness5/5

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

    Given the tool has no parameters, no output schema, and simple diagnostics, the description provides sufficient context: what it reports, when to call it, and its relationship to siblings. It is complete enough for an agent to decide to use it and understand its high-level behavior.

    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?

    There are zero parameters, so the baseline for parameter semantics is 4. The description does not need to explain parameters, and it adds value by explaining the tool's purpose and usage, which indirectly clarifies the empty 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 uses the specific verb 'Report' and clearly defines what is reported: Ollama reachability, vision model pulled status, and poppler installation. This distinguishes it from sibling tools read_image and read_pdf by making it a diagnostic tool rather than a content reader.

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

    Usage Guidelines5/5

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

    Explicitly states when to use: 'Call this first when read_image or read_pdf fails.' This provides a clear trigger and implies that read_image/read_pdf are the primary tools, with this tool serving as a troubleshooting step. No alternative is needed beyond the siblings already listed.

    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-local-vision MCP server

Copy to your README.md:

Score Badge

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

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