Skip to main content
Glama
aehyok

swagger-codegen-mcp

by aehyok

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool has a clear, distinct purpose: list_tags for API groups, list_endpoints for endpoints in a tag, list_services for available services, get_endpoint_detail for endpoint details, and generate_api_code for code generation. No two tools overlap in function, and the descriptions make their boundaries explicit.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern with lowercase and underscores: list_tags, list_endpoints, list_services, get_endpoint_detail, generate_api_code. This makes the toolset predictable and easy to navigate.

    Tool Count5/5

    With 5 tools, the server is well-scoped for its purpose of exploring Swagger/OpenAPI definitions and generating TypeScript code. Each tool covers a necessary step in the workflow, and there is no excess or deficiency.

    Completeness5/5

    The toolset covers the full lifecycle of API discovery and code generation: listing services, inspecting tags and endpoints, fetching details, and generating code. The inference of services from paths in get_endpoint_detail and generate_api_code fills potential gaps, and there are no obvious missing operations.

  • Average 4/5 across 4 of 5 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
  • 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

  • Behavior3/5

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

    With no annotations, the description carries the burden of disclosing behavioral traits. It adds one useful trait: 'Each call fetches the latest Swagger document,' which indicates freshness and potential network dependency. However, it does not mention read-only safety, error behavior, or output format, leaving some transparency gaps.

    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 concise sentences, front-loaded with the core purpose. No unnecessary information or repetition, making it highly efficient.

    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?

    The tool is simple (2 parameters, no output schema). The description states the purpose and adds a key behavioral note about fetching live Swagger docs. While it doesn't describe return types or error scenarios, these are less critical for a listing tool, making it sufficiently complete for its complexity.

    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% for both parameters (tag and swagger_url). The description does not add extra semantic meaning beyond the schema, so the baseline of 3 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 function: 'List all API endpoints under the specified tag.' The verb 'list' and resource 'API endpoints' are specific, and the tag scoping distinguishes it from sibling tools like list_tags (lists tags) and get_endpoint_detail (gets details for one endpoint).

    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 by mentioning 'specified tag' but does not explicitly tell when to use this tool over alternatives or mention prerequisites (e.g., first call list_tags to get a valid tag). Sibling tool names provide context, but the description itself lacks explicit guidance or exclusions.

    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 '每次调用都会获取最新的Swagger文档' (always fetches the latest document), which is useful. However, it does not mention other behaviors like error handling or response format, so it is adequate but not rich.

    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 short, front-loaded sentences with no redundant information. It efficiently conveys the core purpose and a key behavioral note.

    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?

    For a simple listing tool with one optional parameter and no output schema, the description adequately covers the purpose and a relevant behavior. It could mention the output structure, but the tool name and description sufficiently imply what is returned.

    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% for the single optional parameter swagger_url, so the schema provides full parameter meaning. The tool description adds no parameter-specific info beyond what the schema already states, hence the baseline score.

    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 all API groups (tags) from Swagger documentation, using the verb '列出' and resource 'API分组'. This distinguishes it from sibling tools like list_endpoints and list_services.

    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 when tags are needed and notes that each call fetches the latest Swagger doc, providing some context. However, it does not explicitly mention alternatives or when not to use this tool, leaving the guidance somewhat implicit.

    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 a notable behavior (auto-inferring the service from the path), but does not describe the output format, potential side effects, error conditions, or authentication requirements—leaving meaningful gaps for an agent.

    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-loads the main action, and contains no filler. Every clause adds useful information about functionality and behavior.

    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 is adequate for a simple generator tool but lacks elaboration on what the generated output looks like, how to select between modes operationally, and what happens if no parameter is provided. It does not mention the optional swagger_url's role or dependency on sibling discovery tools, leaving some context incomplete.

    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?

    Although schema descriptions cover 100% of parameters, the description adds semantic context by clarifying that tag and path are mutually exclusive modes and that path auto-infers the service, reinforcing the relationship between parameters beyond the schema's individual descriptions.

    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: generating TypeScript API code. It further specifies two generation modes (by tag or by single endpoint), distinguishing it from sibling tools that list or fetch endpoint 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 clear usage context: generate code for an entire module via tag or a single API via path. It implicitly frames itself as the code-generation tool among siblings, though it does not explicitly mention when to use alternatives like get_endpoint_detail.

    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 discloses a useful behavioral trait: it automatically infers the corresponding service from the path, with an example. It also states what the response includes (parameters and responses). With no annotations provided, the description carries the burden and adequately signals a read-only 'get' operation without explicit side effects.

    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 long, with the first clearly stating the primary purpose and the second adding an essential behavioral detail. No redundant or excessive information is present.

    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 low complexity and the absence of output schema/annotations, the description covers the essential aspects: what it does, what it returns, and service selection logic. Minor gaps like error behavior are acceptable for this type of retrieval 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?

    Schema description coverage is 100%, so the baseline per guidelines is 3. The description adds no new parameter meanings beyond the schema, and the auto-inference behavior is already mentioned in the swagger_url parameter description.

    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 it retrieves detailed information for a single API endpoint, including parameter and response definitions. This distinguishes it from sibling tools like list_endpoints and generate_api_code, which serve listing and code generation purposes respectively.

    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 intended use case is clear: to fetch details for a specific endpoint identified by path and method. It does not explicitly name alternatives but the context inherently implies this tool is for single-endpoint detail lookup versus listing endpoints or services.

    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 action (listing) and the output (Swagger URLs), but does not mention potential side effects, permissions, or other behavioral details. Adequate but minimal.

    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 concise sentences. It states the action and the purpose without any filler, making it easy to parse.

    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 is a simple listing operation, the description fully covers what the tool does and why to use it. No further context is needed.

    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 schema coverage is trivially 100%. The description does not need to add parameter details, and the baseline for 0-param tools is 4.

    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 states 'List all available API services and their Swagger URLs,' which is a specific verb+resource combination. It clearly distinguishes itself from sibling tools like list_tags and list_endpoints by focusing on services and Swagger URLs.

    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 adds 'used to understand what services are available,' providing clear usage context. It does not explicitly mention when not to use it or name alternatives, but the intent is clear.

    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

swagger-codegen-mcp MCP server

Copy to your README.md:

Score Badge

swagger-codegen-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/aehyok/swagger-codegen-mcp'

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