Skip to main content
Glama
devrev

DevRev MCP Server

Official
by devrev

Server Quality Checklist

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

  • Disambiguation4/5

    Most tools have distinct purposes, but there is some overlap between 'list_works' and 'search' for finding work items, and 'get_sprints' and 'get_vista' both relate to sprints, which could cause confusion. However, descriptions clarify their specific uses, such as 'search' being general and 'get_sprints' being part-specific.

    Naming Consistency5/5

    Tool names follow a consistent snake_case pattern with clear verb_noun structures, such as 'create_work', 'update_part', and 'list_meetings'. There are no deviations in naming conventions, making the set predictable and easy to understand.

    Tool Count4/5

    With 16 tools, the count is slightly high but reasonable for a DevRev server covering work items, parts, sprints, meetings, and user details. It provides comprehensive functionality without being overly bloated, though it borders on the upper limit of ideal scope.

    Completeness5/5

    The tool set offers complete CRUD/lifecycle coverage for work items and parts (create, get, update, list), includes auxiliary functions like sprints, meetings, and search, and even has a validation tool for stage transitions. No obvious gaps exist for managing DevRev resources effectively.

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

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

  • 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?

    With no annotations provided, the description carries the full burden of behavioral disclosure but offers minimal information. It doesn't mention whether this is a read-only operation, if it requires authentication, how results are paginated (beyond the cursor parameter in schema), rate limits, or what the output format looks like. The description fails to compensate for the lack 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.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is extremely concise with a single, front-loaded sentence: 'List meetings in DevRev'. There is no wasted verbiage or redundant information, making it efficient for quick scanning.

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

    Completeness2/5

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

    For a tool with 13 parameters, no annotations, no output schema, and moderate schema coverage, the description is inadequate. It doesn't explain the tool's behavior, output, or usage context, leaving significant gaps that could hinder an AI agent's ability to invoke it correctly without trial and error.

    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 62%, providing moderate documentation for parameters. The description adds no additional parameter semantics beyond the schema's details, such as explaining filter combinations or default behaviors. However, with schema coverage above 50%, the baseline score of 3 is appropriate as the schema does most of the work.

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

    Purpose3/5

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

    The description 'List meetings in DevRev' states the basic action (list) and resource (meetings) but is vague about scope and format. It doesn't specify whether this lists all meetings, filtered meetings, or meetings accessible to the user, nor does it distinguish from sibling tools like 'search' or 'list_works' that might handle similar data.

    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 provided on when to use this tool versus alternatives like 'search' or 'list_works'. The description implies a listing function but doesn't clarify prerequisites, access requirements, or typical use cases, leaving the agent to infer usage from the parameter schema alone.

    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. 'List all parts' implies a read operation, but the description doesn't mention pagination behavior (though the schema has a cursor parameter), rate limits, authentication requirements, or what happens when no parts exist. It doesn't describe the return format or any side effects. For a tool with 12 parameters and no annotation coverage, this is insufficient.

    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 extremely concise at just 6 words. It's front-loaded with the core purpose and wastes no words. Every element ('List', 'all parts', '(enhancements)', 'in DevRev') contributes to understanding, making it efficiently structured despite its brevity.

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

    Completeness2/5

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

    For a complex tool with 12 parameters, no annotations, and no output schema, the description is inadequate. It doesn't explain what 'parts' are in the DevRev context, how filtering works, what the response looks like, or any behavioral constraints. The agent would struggle to use this tool effectively without significant trial-and-error or external knowledge.

    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 67%, so the schema documents most parameters well. The description adds no parameter information beyond what's in the schema - it doesn't explain what 'parts' or 'enhancements' mean in context, nor does it clarify the relationship between parameters. The baseline is 3 since the schema does substantial documentation work, but the description doesn't compensate for the 33% coverage gap or add meaningful context.

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

    Purpose3/5

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

    The description 'List all parts (enhancements) in DevRev' clearly states the verb ('List') and resource ('parts'), but it's vague about scope and differentiation. It doesn't specify whether this lists ALL parts unconditionally or just those matching filter criteria, and doesn't distinguish it from sibling tools like 'get_part' (singular) or 'search' (which might handle parts). The parenthetical '(enhancements)' adds some context but doesn't fully clarify.

    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. There's no mention of when to choose 'list_parts' over 'search' (which appears in sibling tools) or 'get_part' (singular). It doesn't indicate whether this is for browsing all parts versus filtered queries, nor does it mention any prerequisites or constraints 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?

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool performs a search but does not describe any behavioral traits such as whether it's read-only, has rate limits, requires authentication, or what the output format might be. This is a significant gap for a tool with no structured behavioral hints.

    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 extremely concise with a single sentence, 'Search DevRev using the provided query', which is front-loaded and wastes no words. Every part of the sentence contributes to the purpose, making it efficient and well-structured for its brevity.

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

    Completeness2/5

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

    Given the complexity of a search tool with 2 required parameters, no annotations, and no output schema, the description is incomplete. It does not explain what 'DevRev' is, how the search results are returned, or any constraints like pagination or error handling. This leaves the agent with insufficient context to use the tool effectively beyond basic parameter input.

    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 50%, with one parameter ('namespace') having a description and enum values, while 'query' lacks a description. The tool description does not add any meaning beyond the schema, as it does not explain what 'query' should contain or how the search operates. Since schema coverage is moderate, the baseline score of 3 is applied, but the description fails to compensate for the undocumented 'query' parameter.

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

    Purpose3/5

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

    The description states the tool's purpose as 'Search DevRev using the provided query', which includes a verb ('Search') and resource ('DevRev'), making it clear what the tool does. However, it lacks specificity about what 'DevRev' refers to (e.g., a platform or system) and does not distinguish it from sibling tools like 'list_parts' or 'list_works', which might also retrieve data. This makes it vague but not tautological.

    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. It does not mention sibling tools like 'list_parts' or 'list_works', nor does it specify contexts or exclusions for its use. This leaves the agent without explicit or implied usage instructions, relying solely on the tool name and parameters.

    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 states the tool adds an entry, implying a write/mutation operation, but does not disclose any behavioral traits such as permissions required, whether the action is idempotent, rate limits, or what happens on success/failure (e.g., response format). This leaves significant gaps for an agent to understand how to use it safely and effectively.

    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 that front-loads the core purpose without any wasted words. It directly states what the tool does, making it easy for an agent to parse quickly. Every part of the sentence earns its place by specifying the action and target resources.

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

    Completeness2/5

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

    Given the complexity of a write operation with no annotations and no output schema, the description is incomplete. It does not address behavioral aspects (e.g., side effects, error handling) or provide context on the return values, leaving the agent with insufficient information to use the tool confidently in a broader 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?

    The schema description coverage is 100%, with clear descriptions for both parameters ('id' and 'timeline_entry'), so the schema does the heavy lifting. The description adds no additional meaning beyond what the schema provides (e.g., it does not explain format constraints or examples for the timeline entry). Thus, it meets the baseline of 3 for high schema coverage without compensating with extra insights.

    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 action ('Add a timeline entry') and the target resource ('to a work item (issue, ticket) or part (enhancement)'), providing a specific verb+resource combination. However, it does not distinguish this tool from potential sibling tools that might also modify timeline entries (e.g., 'update_timeline_entry' or 'delete_timeline_entry'), though no such siblings are listed, so the distinction is implicit rather than explicit.

    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. It does not mention prerequisites (e.g., needing an existing work item or part), exclusions (e.g., not for other resource types), or direct alternatives among the sibling tools (e.g., 'update_work' might also modify timeline entries). Usage is implied by the purpose but not explicitly stated.

    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 creation but lacks details on permissions needed, whether it's idempotent, error handling, or what happens on success/failure. For a mutation tool, 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.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded and wastes no space, 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.

    Completeness2/5

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

    For a creation tool with 5 parameters, no annotations, and no output schema, the description is incomplete. It lacks behavioral context, usage guidelines, and details on return values or side effects, which are critical for an agent to invoke it 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?

    Schema description coverage is 60%, with descriptions for 'owned_by', 'parent_part', and 'description'. The tool description adds no parameter semantics beyond the schema, but the baseline is 3 since schema coverage is moderate and the description doesn't compensate or contradict.

    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 action ('Create') and resource ('new part (enhancement) in DevRev'), making the purpose unambiguous. It doesn't explicitly differentiate from siblings like 'create_work' or 'update_part', but the specificity of 'part (enhancement)' provides some implicit distinction.

    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 provided on when to use this tool versus alternatives like 'create_work' or 'update_part'. The description states what it does but offers no context about prerequisites, appropriate scenarios, or exclusions, leaving the agent to infer 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 the full burden of behavioral disclosure. It states the tool creates items but lacks details on permissions required, whether creation is idempotent, error handling, or what happens on success (e.g., returns a work ID). This is inadequate for a mutation tool with zero annotation coverage.

    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 zero waste. It's front-loaded with the core action and resource, making it easy to parse quickly.

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

    Completeness2/5

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

    For a mutation tool with 5 parameters, 40% schema coverage, no annotations, and no output schema, the description is incomplete. It doesn't address behavioral aspects like permissions or outcomes, leaving significant gaps for an AI agent to use the tool effectively.

    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 40% (only 'applies_to_part' and 'owned_by' have descriptions). The description adds no parameter semantics beyond the schema, failing to explain 'type' enum values, 'title' purpose, or 'body' content. With low coverage, it doesn't compensate, but the schema's enum and required fields provide some structure, keeping it at baseline.

    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 verb ('Create') and resource ('new work item (issue, ticket) in DevRev'), making the purpose unambiguous. It distinguishes from siblings like 'update_work' by specifying creation, but doesn't explicitly differentiate from 'list_works' or 'get_work' beyond the action verb.

    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 provided on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., authentication), when not to use it, or how it relates to siblings like 'update_work' for modifications or 'list_works' for viewing existing items.

    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 but offers minimal behavioral insight. It states it retrieves information but doesn't disclose what kind of information is returned, error conditions, authentication needs, or rate limits. For a read operation with zero annotation coverage, this leaves significant gaps in understanding how the tool behaves.

    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 that directly states the tool's purpose without unnecessary words. It's appropriately sized for a simple lookup tool and front-loads the essential information.

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

    Completeness2/5

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

    For a tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what information is returned about the part, potential error responses, or how it integrates with the DevRev system. Given the lack of structured data, the description should provide more context about the tool's behavior and outputs.

    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 schema already documents the single 'id' parameter thoroughly. The description adds no additional meaning about the parameter beyond what's in the schema (e.g., format examples, validation rules, or context about DevRev IDs). This meets the baseline for high schema coverage.

    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 action ('Get information about') and resource ('a part (enhancement) in DevRev'), making the purpose understandable. It specifies retrieval by ID, which distinguishes it from list_parts that likely returns multiple items. However, it doesn't explicitly contrast with sibling tools like get_work or update_part, keeping it from a perfect score.

    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. It doesn't mention when to choose get_part over list_parts for single-item retrieval, or how it differs from get_work for different resource types. There's no context about prerequisites or typical 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?

    With no annotations provided, the description carries full burden for behavioral disclosure but only states the basic action. It doesn't mention pagination behavior (though hinted in schema), rate limits, authentication requirements, or what the output looks like. For a complex list tool with 19 parameters, this is inadequate.

    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 that states the core purpose without unnecessary words. It's appropriately sized and front-loaded, with every word earning its place.

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

    Completeness2/5

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

    Given the tool's complexity (19 parameters, no output schema, no annotations), the description is insufficient. It doesn't explain the filtering capabilities, pagination behavior, or return format, leaving significant gaps for the agent to understand how to effectively use this 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 79%, which is high, so the baseline is 3. The description adds no parameter-specific information beyond what's in the schema, so it doesn't compensate for the 21% coverage gap but doesn't degrade from the baseline either.

    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 verb ('List') and resource ('all work items (issues, tickets) in DevRev'), providing a specific purpose. However, it doesn't distinguish this tool from potential sibling list/search tools (like 'search' or 'list_parts'), which prevents a perfect score.

    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 like 'search' or 'get_work'. There's no mention of prerequisites, limitations, or typical use cases, leaving the agent without contextual usage information.

    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. While 'Update' implies a mutation operation, the description doesn't address critical behavioral aspects like required permissions, whether changes are reversible, error conditions, or what happens to unspecified fields. This leaves significant gaps for an agent to understand the tool's 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, efficient sentence that communicates the core purpose without unnecessary words. It's appropriately sized and front-loaded with the essential information.

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

    Completeness2/5

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

    For a mutation tool with 8 parameters, no annotations, and no output schema, the description is insufficiently complete. It doesn't address behavioral expectations, error handling, or provide context about what constitutes a valid update operation. The agent would need to guess about many important aspects of using this 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?

    With 88% schema description coverage, the schema already documents most parameters well. The description adds no additional parameter information beyond what's in the schema. The baseline score of 3 reflects adequate parameter documentation primarily from the schema, not from the description.

    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 action ('Update') and resource ('existing part (enhancement) in DevRev'), making the purpose immediately understandable. However, it doesn't explicitly differentiate this tool from sibling tools like 'update_work' or 'create_part', which would be needed for a perfect score.

    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 like 'create_part' or 'update_work'. It mentions 'enhancement' in parentheses but doesn't explain if this is the only type of part that can be updated or how it differs from other part types.

    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 this is an update operation, implying mutation, but doesn't mention permissions required, whether changes are reversible, error handling, or response format. For a mutation tool with 10 parameters, 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.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single, efficient sentence that front-loads the core purpose without unnecessary elaboration. It uses minimal words to convey the essential action and resource, making it highly concise and well-structured.

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

    Completeness2/5

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

    Given the complexity (10 parameters, nested objects, no output schema, and no annotations), the description is inadequate. It doesn't explain what fields can be updated, how partial updates work, or reference sibling tools like valid_stage_transition for guidance. For a mutation tool with rich input schema, more context is needed.

    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 no parameter-specific information beyond what the schema provides. With 50% schema description coverage (5 of 10 parameters have descriptions), the description doesn't compensate for undocumented parameters like 'title' or 'body'. Baseline is 3 since the schema does moderate lifting, but the description adds no value.

    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 verb ('update') and resource ('existing work item'), specifying it's for issues or tickets in DevRev. It distinguishes from sibling tools like create_work (creation vs. update) and update_part (different resource type), though it doesn't explicitly mention these distinctions.

    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 like create_work or update_part. It mentions the resource type but doesn't specify prerequisites (e.g., needing an existing work item ID) or contextual triggers for updates, leaving usage unclear.

    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 lists subtypes, implying a read-only operation, but fails to mention critical details like whether it returns all subtypes at once, supports pagination, requires authentication, or has rate limits. This leaves significant gaps in understanding how the tool behaves in practice.

    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 that front-loads the core purpose ('List all subtypes') without unnecessary words. Every part of the sentence contributes directly to understanding the tool's function, making it highly concise and well-structured for quick comprehension.

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

    Completeness2/5

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

    Given the tool's simplicity (1 parameter, no output schema, no annotations), the description is incomplete. It lacks information on return values (e.g., format of subtypes list), error conditions, or operational constraints like authentication needs. For a tool that interacts with a system like DevRev, this leaves the agent under-informed about how to effectively use it.

    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 by explaining that 'leaf_type' determines which subtypes are listed, which clarifies the parameter's role beyond the schema's enum values ('issue', 'ticket'). Since schema description coverage is 0%, this compensation is valuable, though it doesn't detail the format or constraints of the output subtypes.

    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 action ('List all subtypes') and the resource ('in DevRev for a given leaf type'), making the purpose immediately understandable. However, it doesn't differentiate this tool from potential siblings like 'list_parts' or 'list_works', which also list resources but for different entity types, leaving some ambiguity about its specific domain.

    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 minimal guidance by specifying 'for a given leaf type', which implies usage when you need subtypes of a particular leaf type. However, it offers no explicit advice on when to use this tool versus alternatives (e.g., 'search' for broader queries) or any prerequisites, leaving the agent to infer context without clear 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 states the tool retrieves sprints but doesn't disclose behavioral traits like whether it's read-only (implied by 'Get'), potential rate limits, authentication needs, error handling, or return format. For a tool with no annotations, 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 two sentences, front-loaded with the core purpose and followed by usage hint. It's efficient with zero waste, but could be slightly more structured (e.g., bullet points for clarity). Overall, it's appropriately sized and clear.

    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 no annotations, no output schema, and a simple input schema, the description is minimally adequate. It covers the purpose and hints at usage but lacks details on behavior, return values, or error cases. For a retrieval tool with 2 parameters, it meets the bare minimum but has clear gaps in 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 100%, so the schema fully documents both parameters (ancestor_part_id and state). The description adds minimal value beyond the schema by mentioning 'part ID' and 'state', but doesn't provide additional semantics like examples or edge cases. 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.

    Purpose4/5

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

    The description clearly states the verb ('Get') and resource ('active or planned sprints'), and specifies the target ('for a given part ID'). It distinguishes from siblings like 'get_part' or 'get_work' by focusing on sprints. However, it doesn't explicitly differentiate from potential sprint-related tools not in the sibling list, so it's not a perfect 5.

    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 context ('for an issue based on its part'), suggesting this is for retrieving sprints related to parts/issues. It doesn't provide explicit when-to-use vs. alternatives (e.g., compared to 'search' or other get tools), nor does it mention prerequisites or exclusions, leaving some ambiguity.

    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 it retrieves 'all information' but doesn't specify what that includes (e.g., fields, relationships), whether it's a read-only operation, error handling for invalid IDs, or performance aspects. This leaves significant gaps 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 a single, clear sentence with zero waste—it directly states the tool's purpose and key input. It's appropriately sized and front-loaded, making it easy to understand at a glance without unnecessary elaboration.

    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's simplicity (1 parameter, 100% schema coverage, no output schema), the description is adequate for basic understanding but incomplete. It lacks details on return values (since no output schema), error cases, or behavioral traits, which are important for a retrieval tool with no annotations. It meets minimum viability but has clear gaps.

    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 the single parameter 'id' documented as 'The DevRev ID of the work item'. The description adds minimal value by mentioning 'using its ID', reinforcing but not expanding beyond the schema. Baseline 3 is appropriate as the schema does the heavy lifting.

    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 action ('Get all information') and resource ('DevRev work item') with specific examples ('issue, ticket') and identifies the required input ('using its ID'). It distinguishes from siblings like 'list_works' or 'search' by focusing on retrieval of a single item by ID. However, it doesn't explicitly contrast with 'get_part' or 'update_work', keeping it from a perfect score.

    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 have a specific work item ID, suggesting it's for detailed retrieval rather than listing or searching. However, it lacks explicit guidance on when to use alternatives like 'list_works' for multiple items or 'search' for filtered queries, and doesn't mention prerequisites or exclusions, leaving some ambiguity.

    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 describes the tool as a retrieval operation, which implies it's read-only and non-destructive, but doesn't explicitly state this. It adds useful context about what a vista is and hints at the response content, but lacks details on error handling, rate limits, or authentication needs. The description adds some value but leaves gaps in behavioral 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 with two sentences that are front-loaded: the first sentence states the core purpose, and the second adds context about vistas and the response. There is no wasted text, and each sentence earns its place by clarifying the tool's function and utility. It could be slightly more structured but is efficient overall.

    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's moderate complexity (single parameter, no output schema, no annotations), the description is somewhat complete. It explains what a vista is and hints at the response, but lacks details on return values, error cases, or integration with sibling tools. Without an output schema, more information on the response structure would be beneficial. The description is adequate but has clear gaps for full contextual understanding.

    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, with the parameter 'id' documented as 'The DevRev ID of the vista'. The description adds no additional semantic details about the parameter beyond what the schema provides, such as format examples or constraints. According to the rules, with high schema coverage (>80%), the baseline is 3 even with no param info in the description, which applies here.

    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: 'Retrieve information about a vista in DevRev using its ID' with the specific verb 'retrieve' and resource 'vista'. It distinguishes the tool by explaining that a vista is a 'sprint board which contains sprints (or vista group items)', which helps differentiate it from sibling tools like 'get_sprints' or 'get_work'. However, it doesn't explicitly contrast with similar retrieval tools like 'get_part' or 'get_work', keeping it from a perfect score.

    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 stating 'using its ID' and mentions the response can be used to 'filter on sprints', which suggests a context for when to use this tool. However, it lacks explicit guidance on when to choose this over alternatives like 'get_sprints' or 'list_parts', and doesn't specify prerequisites or exclusions. The guidance is present but not comprehensive.

    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 states the tool retrieves a list for validation purposes, which implies a read-only, non-destructive operation, but doesn't cover aspects like authentication needs, rate limits, error handling, or the format of the returned list. For a tool with no annotations, this leaves significant gaps in behavioral understanding.

    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 and adds usage guidance in the second. Both sentences earn their place by providing essential information without redundancy or fluff, making it efficiently structured and appropriately sized.

    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's moderate complexity (2 required parameters, no output schema, no annotations), the description covers the basic purpose and usage context adequately. However, it lacks details on behavioral traits (e.g., response format, errors) and doesn't fully address parameter semantics, leaving room for improvement in completeness for effective agent use.

    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 50% (only the 'id' parameter has a description). The description adds some value by clarifying that 'type' refers to 'work item (issue, ticket) or part (enhancement)' and 'id' is 'The DevRev ID', but it doesn't fully compensate for the lack of schema details on 'type' or explain parameter interactions. With 2 parameters and partial coverage, the baseline is met but not exceeded.

    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: 'gets a list of valid stage transition for a given work item (issue, ticket) or part (enhancement).' It specifies the verb ('gets'), resource ('valid stage transition'), and target objects, though it doesn't explicitly differentiate from siblings like 'update_work' or 'update_part' beyond the 'before updating' hint.

    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 on when to use this tool: 'Use this before updating stage of the work item or part to ensure the transition is valid.' It implies an alternative (directly updating without checking) but doesn't explicitly name sibling tools like 'update_work' or 'update_part' as alternatives, nor does it specify exclusions.

    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 states the tool fetches user details, it doesn't describe what details are returned, whether authentication is required, rate limits, or error conditions. 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.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is perfectly concise with two sentences that each add clear value: the first states the purpose, and the second provides usage guidance. There's zero wasted text, and it's front-loaded with essential information.

    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's simplicity (0 parameters, no output schema, no annotations), the description is adequate but has clear gaps. It explains when to use the tool but doesn't describe what user details are returned or any behavioral aspects. For a tool that fetches data, more information about the return format would be helpful.

    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 input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description appropriately doesn't discuss parameters, which is correct for this case. A baseline of 4 is applied since the schema fully covers the lack of 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 with a specific verb ('Fetch') and resource ('current DevRev user details'), making it immediately understandable. However, it doesn't differentiate this tool from potential sibling user-related tools (though none are listed in the provided siblings), which prevents a perfect score.

    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?

    The description provides explicit usage guidance by stating 'When the user specifies 'me' in the query, this tool should be called to get the user details.' This clearly indicates the specific context for using this tool versus alternatives, which is excellent for agent decision-making.

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

Copy to your README.md:

Score Badge

mcp-server 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/devrev/mcp-server'

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