Skip to main content
Glama
zhangwanli09

internal-swagger-mcp

by zhangwanli09

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool serves a distinct function: listing sources, searching APIs, fetching details, and refreshing cache. There is no overlap between these operations.

    Naming Consistency5/5

    All tool names follow the consistent pattern 'swagger_<verb>_<noun>' with lowercase and underscores. The naming is uniform and predictable.

    Tool Count5/5

    Four tools are well-scoped for a Swagger documentation MCP server, covering the essential operations without unnecessary bloat.

    Completeness5/5

    The tool surface covers the full workflow: discover sources, search endpoints, get detailed specs, and refresh cached docs. No obvious gaps exist for the stated purpose.

  • Average 4.5/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
    • 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

  • Behavior4/5

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

    Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds meaningful behavioral details: what the response includes (basic info, parameter definitions, response examples, mock field table) and explains the 'Required' column semantics ('是' = required, '否' = optional, '?' = ambiguous). This goes beyond annotations without contradicting them.

    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 well-structured with a clear first sentence and bullet points for parameters and response sections. While it is longer than necessary, every bullet adds meaningful detail (e.g., required column semantics, response components). It is front-loaded with the primary purpose and avoids fluff.

    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 output schema exists (so return values are formally specified) and annotations declare safety traits, the description covers the essential operational context: how to specify the target API (source, method, path) and what the response contains. It does not cover error scenarios or rate limits, but these are not critical for a read-only detail operation. The description is sufficiently complete for a well-annotated tool.

    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 input schema has 100% description coverage for all three parameters, with clear explanations (e.g., method enum, path example, source from sibling tools). The description adds little beyond what the schema already provides—the source field is explained more explicitly in the schema, and the path/method examples are duplicated. Baseline 3 is appropriate when schema does the heavy lifting.

    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 'Get full details of a single API interface, including all parameter definitions and response examples.' This is a specific verb+resource combination that distinguishes it from sibling tools like swagger_list_sources (listing sources) and swagger_search_api (searching APIs).

    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 tells the agent that the 'source' parameter comes from the output of swagger_list_sources or swagger_search_api, providing context on when to use this tool. However, it does not explicitly state when not to use it or compare with alternatives, so it falls short of a perfect 5.

    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?

    Annotations already cover idempotence, non-destructiveness, and non-read-only. The description adds context about force-refetch semantics (ignoring cache), that it updates the cache, and the return shape (success/failure and interface counts). This goes beyond annotations, though it doesn't disclose every possible side effect.

    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 compact and well-structured: it starts with the core action, then provides a usage hint, parameter explanation, and return summary. Every sentence contributes value without redundancy or filler.

    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's simple signature (one optional param), full schema coverage, rich annotations, and existing output schema, the description provides sufficient context for an agent to invoke it correctly. It covers purpose, usage timing, parameter behavior, and return contents.

    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?

    Input schema has 100% description coverage for the single 'source' parameter, and the description repeats the schema text almost exactly. No additional meaning is added; the baseline of 3 for full schema coverage applies.

    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 purpose with a specific verb ('Force-refetch') and resource ('Swagger documentation data'), and it distinguishes itself from sibling tools (list, search, get detail) by focusing on cache refresh. The action is unambiguous.

    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 when to use the tool ('after the documentation has been updated...') but does not mention when not to use it or explicitly reference alternatives. This clear context earns a 4, lacking only the exclusion/alternative guidance for a 5.

    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?

    Annotations already indicate readOnlyHint=true and destructiveHint=false, and the description does not contradict them. It adds valuable behavioral context: search scope, default for include_deprecated, default/max limit, and response fields, giving a clear picture beyond the annotations.

    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 well-structured with sections for parameters, response, and examples. It is lengthy but every sentence earns its place, and the front-loaded summary makes intent immediately clear. No filler or redundant content.

    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 complexity (5 params, filters, response fields), the description is complete: it covers search behavior, filters, defaults, response content, and examples. With an output schema present and good annotations, there are no significant 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 100% (all parameters described in schema). The description still adds meaning beyond schema by providing example keywords, explaining the source origin from swagger_list_sources, and clarifying enum usage (HTTP method). This compensates with practical guidance.

    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: 'Search API interfaces in the internal Swagger documentation' and specifies the searchable fields (name, description, path, module). This distinguishes it from siblings like swagger_list_sources (lists sources) and swagger_get_api_detail (fetches details).

    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 concrete usage context through examples and notes that the 'source' parameter comes from swagger_list_sources results. However, it does not explicitly state when to use this tool versus alternatives or mention exclusions, which prevents a perfect score.

    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 adds valuable behavioral nuance beyond the annotations: it explains that fetchedAt may be null (meaning not yet loaded) and that totalInterfaces is only shown when loaded. This clarifies caching behavior and return semantics, which the annotations do not cover. No contradictions with annotations.

    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 and well-structured: a clear opening sentence, a bulleted list of return fields, and a usage tip. Every sentence serves a purpose, and it is easy to scan.

    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?

    For a parameterless read-only list operation with an output schema, the description is fully complete. It explains what is returned, including edge cases, and how it fits into the broader workflow with sibling tools.

    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?

    The tool has zero parameters, so the baseline is 4. The description focuses on return fields rather than parameters, which is appropriate. It doesn't need to add parameter details because none exist.

    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 specific function: 'List all configured Swagger documentation sources and their cache status.' It uses a strong verb ('List') and a specific resource ('Swagger documentation sources'), and effectively distinguishes itself from siblings by noting it should be used before swagger_search_api.

    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?

    Explicit usage guidance is provided: 'Use this before calling swagger_search_api to discover which services are available.' This tells the agent exactly when to employ this tool and mentions a sibling tool as the subsequent step.

    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

internal-swagger-mcp MCP server

Copy to your README.md:

Score Badge

internal-swagger-mcp 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/zhangwanli09/internal-swagger-mcp'

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