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

  • Disambiguation2/5

    search_novels and get_novel_by_name overlap heavily, as both find novels by name/title. get_novel_by_name also returns the first chapter, blurring the boundary with get_novel_info and read_chapter.

    Naming Consistency4/5

    Most tools follow a clear verb_noun pattern like search_novels, get_novel_info, and read_chapter. get_novel_by_name is slightly less consistent because of its prepositional modifier, but it remains readable and predictable.

    Tool Count5/5

    Five tools is well-scoped for a web novel browsing and reading server. Each tool covers a distinct step in the discovery-to-reading workflow without unnecessary bloat.

    Completeness4/5

    The core workflow is covered: search, get novel details, list chapters, and read chapter content. Minor conveniences like getting the next chapter or latest updates are absent, but the main reading experience has no dead ends.

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

    No annotations are provided, so the description carries the burden of explaining behavior. It does state the operation is a read ('Get') and lists the data contained in the result, but it does not mention failure behavior, permissions, or whether this is strictly read-only beyond the verb itself.

    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 front-loads the action and immediately lists the key returned fields. There is no redundant wording or filler.

    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?

    For a single-parameter read tool with an output schema, the mechanics are largely covered. However, the description misses guidance on how this tool relates to get_novel_by_name and search_novels, which is an important contextual gap for tool selection.

    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% and the only parameter, book_id, is already documented as 'The novel's book ID (from search results)'. The description adds little parameter-specific meaning, but with full schema coverage the baseline of 3 is appropriate.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description states a clear verb ('Get') and resource ('novel') and lists specific details returned: title, author, chapter count, first chapter. It is understandable, though it does not explicitly differentiate from the sibling get_novel_by_name, which could plausibly return the same kind of information.

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

    Usage Guidelines2/5

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

    The description gives no guidance about when to use this tool versus siblings like search_novels, get_chapter_list, or get_novel_by_name. The schema hints that book_id comes from search results, but the description itself provides no workflow or alternative routing.

    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 of behavioral disclosure. 'Search' implies a read-only, non-destructive operation, which is transparent, but the description does not mention pagination of results or output format. The output schema covers return shape, and the page parameter is described in the schema, so this does not significantly harm usability.

    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 front-loaded sentence with no wasted words. It states the action, target, and criteria in a clear order, making it easy for an agent to parse quickly.

    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 tool is simple and has an output schema, so the description does not need to explain return values. However, it lacks any relationship to sibling tools, particularly get_novel_by_name, which appears to overlap in purpose. An agent cannot tell whether this search returns partial matches or whether get_novel_by_name is for exact names, leaving a gap in contextual completeness.

    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 both parameters are already documented. The description adds a small clarification that 'query' can be a title or a keyword, reinforcing the schema's example, but it does not add meaning to the 'page' parameter beyond the existing schema description. Baseline 3 is appropriate.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description uses a specific verb ('search') and identifies the resource ('web novels') and the filter criteria ('title or keyword'). It clearly states the core function and distinguishes from content-retrieval tools like read_chapter, though it does not explicitly contrast with get_novel_by_name.

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

    Usage Guidelines2/5

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

    No guidance is given on when to use this tool versus alternatives. The description does not mention that get_novel_by_name might be more appropriate for exact-name lookups, nor any conditions such as exact matching. An agent must infer the use case from the tool name and schema alone.

    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 burden of explaining behavior. It does disclose the return contents (book_id and first chapter) and implies a read/search operation, but it does not clarify matching semantics such as exact name, partial match, or case sensitivity, nor does it mention failure behavior.

    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 front-loads the 'Quick search' purpose and packs the key return information into minimal words. There is no filler or 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?

    For a single-parameter tool with an output schema available, the description covers the core invocation and return behavior adequately. The main gap is the lack of guidance on how this differs from sibling search tools, but the low complexity reduces the need for extensive 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 coverage is 100%, and the parameter is already described as 'Novel name to search for'. The description's 'by name' phrasing adds little beyond the schema, so a baseline score of 3 is appropriate.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the tool finds a novel by name and returns a book_id along with the first chapter. It is specific about the resource and outcome, though it does not explicitly differentiate itself from the sibling search_novels tool.

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

    Usage Guidelines2/5

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

    The phrase 'Quick search' hints at a simple lookup, but there is no explicit guidance on when to use this tool versus search_novels or get_novel_info. No alternatives or exclusions are mentioned, leaving the routing decision to the agent.

    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 behavioral disclosure. It only states that it retrieves the full table of contents but gives no information about read-only guarantees, failure behavior, authentication requirements, or whether the result includes chapter IDs or only titles. The description is too sparse to illuminate any behavioral traits beyond the bare operation.

    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 a single focused sentence that is immediately informative and free of fluff. It is front-loaded with the core action and object, though it is so terse that it misses opportunities to add routing or edge-case context without bloating.

    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 very simple tool with one parameter, 100% schema coverage, and an output schema, the description is sufficiently complete for selection and invocation. The main missing element is guidance on how to obtain book_id (e.g., via search_novels), but the existing structure already covers the mechanics of the call.

    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 fully documents the only parameter, book_id, with a reasonable description, and the tool description does not contradict or add to it. Since schema_description_coverage is 100%, the baseline of 3 is appropriate; the description offers no extra semantic meaning 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 uses a specific verb ('Get') and a clear resource ('the full table of contents for a novel'), which directly distinguishes it from siblings like read_chapter (a single chapter), get_novel_info (general novel metadata), search_novels, and get_novel_by_name. An agent can unambiguously tell what this tool returns.

    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 intended use is implied by the description and name: when the agent needs a complete table of contents for a given novel. However, it provides no explicit when-to-use or when-not-to-use guidance, and no alternatives are named or contrasted. The context is clear but exclusions are absent.

    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 provided, the description carries the full behavioral burden. 'Read the full content' strongly implies a non-destructive, retrieval operation, which adds some behavioral transparency. However, it does not mention response characteristics, auth or access constraints, or any edge-case behavior like locked or unavailable chapters.

    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 efficient sentence with no filler, front-loading the verb and object. It is appropriately sized for a simple tool with two well-documented parameters and an output schema.

    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 tool is simple and the output schema exists, but the description leaves sibling differentiation to inference. An agent might confuse `read_chapter` with `get_chapter_list` without further guidance. The description is minimally adequate but has a clear gap: no explicit routeing among the five sibling tools.

    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%, with both `book_id` and `chapter_id` already explained in the input schema. The description itself adds no parameter-level detail, so the baseline of 3 is appropriate: the schema does the work, and the description does not conflict or expand on it.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description uses a specific verb ('Read') and a specific resource ('a chapter') and is not a tautology. It clearly tells the agent this tool retrieves full chapter content, though it does not explicitly differentiate itself from sibling tools like get_chapter_list.

    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?

    Usage context is implied: if you need the full content of a chapter, this is the tool. There is no explicit statement about when to prefer this over get_chapter_list or get_novel_info, and no exclusions are mentioned, so the guidance is present only by inference.

    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

WebNovel-MCP MCP server

Copy to your README.md:

Score Badge

WebNovel-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/minhmc2007/WebNovel-MCP'

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