Skip to main content
Glama
DaniManas
by DaniManas

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 clearly distinct purpose with no overlap: compare_papers analyzes multiple papers for contradictions, extract_claims processes individual paper content, find_research_gaps identifies gaps across papers, get_citations handles citation networks, get_paper_abstract retrieves single paper metadata, and search_papers finds papers by query. The descriptions clearly differentiate their functions, eliminating any ambiguity.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern using snake_case: compare_papers, extract_claims, find_research_gaps, get_citations, get_paper_abstract, and search_papers. The verbs (compare, extract, find, get, search) are appropriate and distinct, creating a predictable and readable naming convention throughout the set.

    Tool Count5/5

    With 6 tools, this server is well-scoped for academic research assistance. Each tool earns its place by covering essential research workflows: searching papers, retrieving abstracts, extracting claims, comparing papers, analyzing gaps, and exploring citations. This count is neither too sparse nor bloated, fitting the domain perfectly.

    Completeness4/5

    The tool set covers core research workflows comprehensively, including search, retrieval, analysis, and comparison. Minor gaps exist, such as no tools for saving/bookmarking papers or tracking research progress, but agents can work around these. The surface supports end-to-end research tasks without dead ends.

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

  • 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 mentions the tool compares claims to find contradictions and consensus, but doesn't describe how this analysis is performed, what the output format entails beyond abstracts, or any limitations (e.g., number of papers, processing time). For a tool with no annotation coverage, this is a significant gap in transparency.

    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 appropriately sized and front-loaded, with the core purpose stated first, followed by structured sections for Args and Returns. Each sentence earns its place, though the Returns section could be more informative given the output schema exists.

    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?

    Given the tool has one parameter with 0% schema coverage and an output schema exists, the description is partially complete. It clarifies the parameter format but lacks behavioral details (e.g., how comparison is done, limitations). The output schema reduces the need to explain return values, but more context on the tool's operation would improve 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 description coverage is 0%, so the description must compensate. It adds value by explaining that 'paper_ids' is a 'comma-separated list of OpenAlex paper IDs' with an example ('W123,W456,W789'), which clarifies the format beyond the schema's basic string type. However, it doesn't detail constraints like ID validation or list length limits, leaving some semantics undocumented.

    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's purpose: 'Compare claims across multiple papers to find contradictions and consensus.' This specifies both the verb (compare) and resource (papers/claims). However, it doesn't explicitly differentiate from sibling tools like 'extract_claims' or 'find_research_gaps' beyond the comparison focus.

    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 explicit guidance on when to use this tool versus alternatives like 'extract_claims' or 'find_research_gaps' is provided. The description implies usage for comparison analysis but doesn't specify scenarios, prerequisites, or exclusions. This leaves the agent with minimal contextual direction.

    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. It mentions the tool 'searches' and 'returns' formatted strings, implying a read-only operation, but lacks details on behavioral traits such as rate limits, authentication needs, error handling, or whether it performs destructive actions. The description doesn't compensate for the absence of annotations.

    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 and appropriately sized, with a clear purpose statement followed by 'Args' and 'Returns' sections. Each sentence adds value, such as explaining defaults and optional parameters, though it could be slightly more front-loaded by integrating key details into the opening sentence.

    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?

    Given the complexity (a search tool with 3 parameters), no annotations, and an output schema present (implied by 'Returns'), the description is moderately complete. It covers basic functionality and parameters but lacks context on usage guidelines, behavioral transparency, and deeper parameter semantics, leaving gaps for an AI agent to infer correctly.

    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 description adds some meaning beyond the input schema by explaining that 'query' is for 'research topic or keywords', 'max_results' has a default of 5, and 'year_from' filters papers 'from this year onwards'. However, with 0% schema description coverage and 3 parameters, it only partially compensates—e.g., it doesn't detail query syntax, result ordering, or validation rules for parameters.

    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's purpose: 'Search for academic papers on OpenAlex based on a query.' It specifies the verb ('search'), resource ('academic papers'), and platform ('OpenAlex'). However, it doesn't explicitly differentiate from sibling tools like 'find_research_gaps' or 'get_citations', which may also involve paper searching but with different scopes or purposes.

    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 provides no guidance on when to use this tool versus alternatives. With sibling tools like 'find_research_gaps' and 'get_citations', there's no indication of when this general search tool is preferred over more specific ones, nor does it mention prerequisites or exclusions for usage.

    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?

    With no annotations provided, the description carries full burden for behavioral disclosure. It mentions analyzing 'multiple papers' and default/max values for 'num_papers', but lacks critical details: whether this requires external API calls, potential rate limits, processing time, or how papers are sourced (e.g., from a database vs. web search). For a tool with no annotation coverage, this leaves significant behavioral gaps.

    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 purpose statement, parameter details, and return value explanation in separate sections. It's appropriately sized—each sentence adds value without redundancy. Minor improvement could be front-loading the return details more clearly, but overall it's efficient.

    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?

    Given 2 parameters with 0% schema coverage and no annotations, the description does a fair job explaining parameters and returns. However, the output schema exists ('Returns: Analysis of research gaps...'), so description needn't detail return values. The main gap is lack of behavioral context (e.g., how papers are retrieved), making it incomplete for a tool that likely involves complex operations.

    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 description coverage is 0%, so the description must compensate. It provides clear semantics for both parameters: 'query' as the 'Research topic to analyze' and 'num_papers' as 'Number of papers to analyze' with default and max values. This adds meaningful context beyond the bare schema types, though it doesn't specify format expectations for 'query' (e.g., keywords vs. natural language).

    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's purpose: 'Analyze multiple papers on a topic to identify research gaps and unanswered questions.' It specifies the verb ('analyze'), resource ('multiple papers'), and outcome ('identify research gaps'). However, it doesn't explicitly differentiate from siblings like 'compare_papers' or 'extract_claims' beyond the gap-finding focus.

    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 gap analysis in research topics, but provides no explicit guidance on when to use this tool versus alternatives like 'search_papers' or 'compare_papers'. The context of analyzing 'multiple papers' suggests it's for synthesis rather than single-paper operations, but this is only implied, not stated as a guideline.

    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?

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool extracts claims from an abstract, but doesn't describe how it works (e.g., NLP methods, confidence scores), what happens with invalid inputs, rate limits, or error handling. For a tool with zero annotation coverage, this leaves significant behavioral gaps.

    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 appropriately sized and front-loaded with the core purpose in the first sentence. The Args and Returns sections are structured but slightly verbose for a single parameter; every sentence earns its place by clarifying inputs and outputs, though it could be more streamlined.

    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 moderate complexity (extraction task), no annotations, and an output schema that handles return values, the description is reasonably complete. It covers purpose, parameters, and returns, but could improve by adding more behavioral context or usage guidelines to fully compensate for the lack of annotations.

    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 0%, so the description must compensate. It adds meaning by specifying that paper_id is an 'OpenAlex paper ID', which clarifies the format beyond the schema's generic string type. However, it doesn't explain where to find this ID or provide examples, leaving some ambiguity for the single parameter.

    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 specific action ('Extract key claims and findings') and target resource ('from a paper's abstract'), distinguishing it from siblings like get_paper_abstract (which retrieves the abstract) or search_papers (which searches for papers). It precisely defines the tool's function without being vague or tautological.

    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 you need claims from an abstract, but provides no explicit guidance on when to use this tool versus alternatives like compare_papers or find_research_gaps. It mentions the required paper_id parameter, which hints at prerequisites, but lacks clear when/when-not instructions or named alternatives for different use cases.

    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. While it mentions the return of 'Citation network information with paper details', it lacks details on permissions, rate limits, error handling, or data format. For a tool with no annotation coverage, this leaves significant 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 front-loaded with the core purpose in the first sentence, followed by a structured breakdown of arguments and returns. Each sentence earns its place by adding essential information without redundancy, making it efficient and well-organized for quick understanding.

    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 moderate complexity (3 parameters, no annotations, but with an output schema), the description is fairly complete. It covers the purpose, parameters, and return overview. Since an output schema exists, detailed return value explanations are not needed, but more behavioral context could enhance completeness for a tool with no annotations.

    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 description coverage is 0%, so the description must compensate. It adds meaningful semantics beyond the schema by explaining each parameter: 'paper_id' as 'The OpenAlex paper ID', 'direction' with its three options and meanings, and 'max_results' with its default and purpose. This provides clear context that the schema alone does not offer.

    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 specific action ('Get citation network') and resource ('for a paper'), distinguishing it from sibling tools like 'get_paper_abstract' or 'search_papers'. It explicitly defines the scope of what the tool retrieves ('see what cites it and what it cites'), making the purpose unambiguous and distinct.

    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 specifying the tool's function for citation networks, but it does not explicitly state when to use this tool versus alternatives like 'compare_papers' or 'find_research_gaps'. No guidance is provided on prerequisites, exclusions, or comparative contexts, leaving usage context inferred rather than clearly defined.

    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 burden of behavioral disclosure. It states the tool retrieves abstract text with title and metadata, implying a read-only operation, but doesn't specify potential limitations like rate limits, authentication needs, or error conditions. It adds basic context but lacks depth for a tool with no annotation support.

    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 front-loaded with the core purpose in the first sentence, followed by structured Args and Returns sections that efficiently document inputs and outputs. Every sentence adds value without redundancy, making it highly concise and well-organized.

    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 (1 parameter) and the presence of an output schema (which handles return values), the description is largely complete. It covers purpose, parameter semantics, and output overview. However, without annotations, it could benefit from more behavioral details like error handling or data freshness, slightly reducing completeness.

    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 description adds meaningful context for the single parameter by specifying that paper_id is 'The OpenAlex paper ID (from search_papers results)', which clarifies its source and format beyond the schema's basic string type. Since schema description coverage is 0%, this compensates well, though it doesn't detail exact ID formats or constraints.

    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 specific action ('Get the full abstract') and resource ('for a specific paper'), distinguishing it from sibling tools like search_papers (which finds papers) or get_citations (which retrieves citations). It precisely defines the tool's function without ambiguity.

    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 implicitly indicates usage by specifying the paper_id should come 'from search_papers results', providing context for when to use this tool. However, it lacks explicit guidance on when not to use it or alternatives (e.g., vs. extract_claims for different content), 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.

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

ResearchMCP MCP server

Copy to your README.md:

Score Badge

ResearchMCP 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/DaniManas/ResearchMCP'

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