Skip to main content
Glama
qpiai

Zoho Projects MCP Server

by qpiai

Server Quality Checklist

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

  • Disambiguation5/5

    Every tool has a clearly distinct purpose with no ambiguity. Tools are organized by resource (issue, phase, project, task, portal, user) and action (create, get, list, update, delete, search), making it easy for an agent to select the right one. Overlap is minimal, such as list_issues vs. search, but their descriptions clarify distinct use cases.

    Naming Consistency5/5

    Tool names follow a highly consistent verb_noun pattern throughout, such as create_issue, get_project, list_tasks, update_task, and delete_project. There are no deviations in naming conventions, making the set predictable and easy to navigate for an agent.

    Tool Count4/5

    With 20 tools, the count is slightly high but reasonable for a project management domain covering multiple resources like issues, tasks, projects, portals, phases, and users. It feels comprehensive rather than bloated, though it borders on the upper limit of ideal scope.

    Completeness5/5

    The tool surface provides complete CRUD/lifecycle coverage for the domain, including create, get, list, update, and delete operations for key resources like issues, tasks, and projects. There are no obvious gaps, and tools like search and list_users add useful functionality, ensuring agents can handle typical workflows without dead ends.

  • Average 2.8/5 across 20 of 20 tools scored.

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

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • 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. 'Delete a task' implies a destructive mutation, but it fails to disclose critical traits such as permissions required, whether deletion is permanent or reversible, side effects (e.g., impact on related issues or phases), or error handling. This is inadequate for a destructive operation 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 extremely concise with a single sentence ('Delete a task'), which is front-loaded and wastes no words. While it may be overly brief for completeness, it earns full marks for conciseness as every word directly contributes to the core purpose without redundancy or fluff.

    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 destructive nature, lack of annotations, and no output schema, the description is incomplete. It does not address behavioral aspects like safety warnings, return values, or error conditions. For a mutation tool with significant implications, the description should provide more context to guide safe and effective usage, but it falls short here.

    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 parameters ('project_id' and 'task_id') documented in the schema. The description adds no additional meaning about parameters beyond what the schema provides, such as format examples or relationships between project and task IDs. However, with high schema coverage, the baseline score of 3 is appropriate as the schema handles the parameter documentation adequately.

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

    Purpose2/5

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

    The description 'Delete a task' is a tautology that restates the tool name without adding meaningful context. While it identifies the verb ('Delete') and resource ('task'), it lacks specificity about scope or differentiation from sibling tools like 'delete_project' or 'update_task'. It meets the minimum requirement of stating what the tool does but does so in an overly simplistic manner.

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

    Usage Guidelines1/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 a valid task ID), exclusions (e.g., cannot delete completed tasks), or comparisons to siblings like 'update_task' for modifications or 'delete_project' for broader deletions. This leaves the agent with insufficient context for appropriate tool selection.

    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 full burden for behavioral disclosure. 'Update an issue' implies a mutation operation but doesn't specify what happens during the update (e.g., whether all fields must be provided, if partial updates are supported, what permissions are required, or what the response contains). For a mutation tool with zero annotation coverage, this leaves critical behavioral aspects undocumented.

    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 three words, with zero wasted language. It's front-loaded with the core action. While this conciseness comes at the expense of completeness, the description itself doesn't contain any redundant or unnecessary elements.

    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, no annotations, and no output schema, the description is inadequate. It doesn't explain what the tool returns, what happens during execution, or provide any context about the update operation. The 100% schema coverage helps with parameters, but the overall description fails to provide sufficient context for safe and effective 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 100%, so all parameters are documented in the schema itself. The description adds no parameter information beyond what's already in the structured fields. According to scoring rules, when schema coverage is high (>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.

    Purpose2/5

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

    The description 'Update an issue' is a tautology that merely restates the tool name without adding meaningful context. It doesn't specify what aspects of an issue can be updated or distinguish this tool from sibling update tools like update_project or update_task. While the verb 'update' is clear, the description lacks specificity about the resource or scope.

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

    Usage Guidelines1/5

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

    The description provides no guidance about when to use this tool versus alternatives. It doesn't mention prerequisites (like needing an existing issue), when to choose update_issue over create_issue or get_issue, or any constraints on usage. With multiple sibling tools available, this absence of contextual guidance is problematic.

    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. 'Update a task' implies a mutation operation but reveals nothing about required permissions, whether updates are partial or complete, what happens to unspecified fields, error conditions, or response format. For a mutation tool with zero annotation coverage, this leaves critical behavioral aspects undocumented.

    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 maximally concise with a single three-word phrase. There's no wasted language or unnecessary elaboration. While this conciseness comes at the expense of completeness, the description is perfectly structured for its minimal content.

    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 7 parameters, no annotations, and no output schema, the description is severely inadequate. It doesn't explain what 'updating' entails operationally, what values can be changed, how the system responds, or any behavioral characteristics. The combination of mutation nature and lack of structured metadata demands more descriptive content than provided.

    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 all parameters are documented in the schema itself. The description adds no parameter information beyond what's already in the schema - it doesn't explain relationships between parameters, provide examples, or clarify semantics. The baseline score of 3 reflects adequate parameter documentation coming entirely from the schema, not the description.

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

    Purpose2/5

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

    The description 'Update a task' is essentially a tautology that restates the tool name with minimal additional information. While it does specify the resource ('task'), it lacks specificity about what aspects can be updated and doesn't differentiate from sibling update tools like update_issue or update_project. This provides only basic orientation without meaningful elaboration.

    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 siblings like update_issue, update_project, and create_task available, there's no indication of when task updates are appropriate versus creating new tasks or updating other entities. No prerequisites, exclusions, or contextual recommendations are mentioned.

    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 full burden. It states it's a list operation but doesn't disclose behavioral traits like pagination behavior (implied by parameters but not described), rate limits, authentication needs, or what happens with invalid inputs. The description is minimal and lacks operational context.

    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, efficient sentence that states the core function without waste. It's appropriately sized for a simple list tool, though it could be more front-loaded with key details. No redundant or verbose elements.

    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 no annotations and no output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., issue objects, pagination metadata), error conditions, or how it differs from siblings. For a list tool with pagination parameters, more context on behavior and output 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?

    Schema description coverage is 100%, so parameters are fully documented in the schema. The description adds no additional meaning about parameters beyond implying 'project or portal' scope for 'project_id'. It doesn't explain parameter interactions or usage nuances, meeting the baseline for high schema coverage.

    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 verb ('List') and resource ('issues'), but lacks specificity about scope or filtering. It mentions 'from a project or portal' which provides some context, but doesn't distinguish itself from sibling tools like 'get_issue' or 'search' that also retrieve issue data. The purpose is clear but generic.

    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. The description mentions 'project or portal' scope, but doesn't clarify when to use 'list_issues' versus 'get_issue' (single issue) or 'search' (filtered search). No prerequisites, exclusions, or comparative context are provided.

    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. 'Create a new issue' implies a write operation, but it doesn't specify permissions needed, whether it's idempotent, error handling, or what happens on success/failure. This is a significant gap 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 extremely concise with just three words, front-loading the core purpose without any wasted text. Every word earns its place, though this conciseness comes at the cost of completeness.

    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, no annotations, and no output schema, the description is inadequate. It doesn't explain what an 'issue' is in this system, what happens after creation, or provide any context beyond the bare minimum. More information is needed given the complexity and lack of structured data.

    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 all 5 parameters with descriptions and constraints. The description adds no additional meaning beyond what's in the schema, such as explaining relationships between parameters or usage examples. 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.

    Purpose3/5

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

    The description 'Create a new issue' clearly states the action (create) and resource (issue), but it's vague about what an 'issue' entails in this context and doesn't distinguish it from sibling tools like 'create_task' or 'create_project'. It provides basic purpose but lacks specificity about the domain or scope.

    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_task' or 'update_issue'. The description doesn't mention prerequisites, context, or exclusions, leaving the agent to infer usage from the tool name 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 the full burden of behavioral disclosure. It states 'Create a new project', implying a write/mutation operation, but doesn't cover critical aspects like required permissions, whether creation is idempotent, error handling, or what happens on success (e.g., returns a project ID). 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 extremely concise with a single sentence ('Create a new project'), which is front-loaded and wastes no words. While it may be under-informative, it scores high on conciseness as every word earns its place without redundancy.

    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 creation tool with 5 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain the tool's behavior, usage context, or expected outcomes, leaving the agent with insufficient information to use it effectively beyond the basic schema.

    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 clear parameter names and descriptions (e.g., 'name' as project name, 'start_date' in YYYY-MM-DD format). The tool description adds no parameter-specific information beyond what the schema provides, so it meets the baseline for high schema coverage without compensating value.

    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 action ('Create') and resource ('project'), making the basic purpose clear. However, it lacks specificity about what a 'project' entails in this context and doesn't differentiate from sibling tools like 'create_phase' or 'create_task', which suggests similar creation operations for different resources.

    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. For example, it doesn't mention prerequisites, when to choose 'create_project' over 'update_project', or how it relates to other creation tools like 'create_issue' or 'create_task'. The description offers no context for decision-making.

    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 'Get details' but does not specify if this is a read-only operation, what permissions are required, how errors are handled, or the format of returned data. For a tool with zero annotation coverage, this leaves critical behavioral traits unaddressed.

    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 wasted words. It is front-loaded and directly states the tool's purpose without unnecessary elaboration. Every part of the description earns its place, 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 lack of annotations and output schema, the description is incomplete for a tool that likely returns complex project data. It does not explain what 'details' include, error conditions, or response format, leaving gaps in context. For a read operation with no structured output, more completeness 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 input schema has 100% description coverage, with 'project_id' clearly documented. The description adds no additional meaning beyond the schema, such as examples or constraints on the ID format. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, but no extra value is provided.

    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 'Get details of a specific project' clearly states the verb ('Get') and resource ('project'), making the purpose understandable. However, it lacks specificity about what 'details' include and does not differentiate from sibling tools like 'list_projects' or 'get_task', which reduces clarity. It avoids tautology but remains vague.

    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, such as needing a project ID, or compare it to siblings like 'list_projects' for browsing or 'get_task' for related resources. Without any usage context, the agent must infer from tool names 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 but only states it 'gets details' without disclosing behavioral traits like read-only nature, error handling, authentication needs, or rate limits. It's minimal and lacks necessary context for safe use.

    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 appropriately sized and front-loaded, making it easy to parse quickly without unnecessary elaboration.

    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 no annotations, no output schema, and a simple input schema, the description is incomplete. It doesn't explain what 'details' are returned, error conditions, or usage context, leaving significant gaps for an AI agent to understand the tool fully.

    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 both parameters ('project_id' and 'task_id'). The description doesn't add any meaning beyond what the schema provides, such as explaining relationships between parameters. 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.

    Purpose3/5

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

    The description 'Get details of a specific task' clearly states the verb ('Get') and resource ('task'), but it's vague about what 'details' include and doesn't distinguish from sibling tools like 'get_issue' or 'get_project'. It's functional but lacks specificity about scope or differentiation.

    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 'list_tasks' or 'search'. The description implies it's for retrieving a single task, but there's no explicit context, prerequisites, or exclusions mentioned.

    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 full burden for behavioral disclosure. The description only states the scope but doesn't mention pagination behavior (implied by parameters), authentication needs, rate limits, response format, or error conditions. For a search tool with 5 parameters, this leaves significant behavioral aspects undocumented.

    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 4 words, with zero wasted language. It's front-loaded with the core action and scope. While arguably too brief for completeness, as a standalone statement it's efficiently structured without redundancy.

    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 search tool with 5 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain what types of results to expect, how results are structured, whether search is full-text or exact match, or any limitations. The minimal description leaves too many contextual gaps for effective tool 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 100%, so the schema already documents all 5 parameters thoroughly. The description adds no additional parameter semantics beyond what's in the schema - it doesn't explain relationships between parameters (e.g., how project_id interacts with module choices) or provide usage examples. 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.

    Purpose3/5

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

    The description 'Search across portal or project' states the action (search) and scope (portal/project), but is vague about what resources are searched. It doesn't distinguish this from potential sibling search tools (none exist in the sibling list), but the scope specification is minimal. The purpose is understandable but lacks specificity about what 'across' means in terms of content types.

    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. The description mentions 'portal or project' scope but doesn't explain when to choose portal-level vs project-level search, nor does it reference any sibling tools for comparison. There's no mention of prerequisites, limitations, 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 the full burden of behavioral disclosure. It states 'Create' which implies a write/mutation operation, but doesn't address permissions, side effects, error conditions, or what happens on success (e.g., returns a phase ID). For a creation tool with zero 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.

    Conciseness5/5

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

    The description is extremely concise at just 4 words ('Create a new phase/milestone'), with zero wasted words. It's front-loaded with the core action and resource. Every word earns its place by clearly communicating the tool's purpose without unnecessary elaboration.

    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 doesn't explain what happens after creation, what permissions are needed, how it relates to existing phases, or what the tool returns. The agent would need to guess about important behavioral aspects not covered by the minimal description.

    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 all 5 parameters with their types and descriptions. The description adds no additional parameter information beyond what's in the schema. This meets the baseline of 3 for high schema coverage, but doesn't provide extra context like parameter relationships or examples.

    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 phase/milestone'), making the purpose immediately understandable. It distinguishes this from sibling tools like create_project or create_task by specifying the type of entity being created. However, it doesn't explicitly contrast with list_phases or other phase-related tools, 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 prerequisites (e.g., needing an existing project), when not to use it, or how it relates to sibling tools like list_phases or update_project. This leaves the agent without contextual usage instructions.

    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 only states it creates a task without disclosing behavioral traits like permissions needed, whether it's idempotent, error handling, or what happens on success (e.g., returns a task 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 no wasted words, making it easy to parse. It's appropriately sized and front-loaded with the core action, earning its place without unnecessary elaboration.

    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 no annotations and no output schema, the description is incomplete. It doesn't explain what the tool returns, error conditions, or behavioral nuances, leaving significant gaps in understanding how to use it effectively in 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 description coverage is 100%, so the schema fully documents all 7 parameters. The description adds no additional meaning beyond implying creation, which is already clear from the tool name. Baseline score of 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 ('Create') and resource ('new task in a project'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'create_issue' or 'create_phase' which also create items in similar contexts, missing explicit 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?

    The description provides no guidance on when to use this tool versus alternatives like 'create_issue' or 'create_phase', nor does it mention prerequisites such as needing an existing project. It simply states what it does without context for selection.

    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 'gets details' but doesn't clarify if this is a read-only operation, what permissions are required, how errors are handled, or the format of returned details, leaving significant gaps in understanding its 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 directly states the tool's purpose without any wasted words. It's appropriately sized and front-loaded, 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?

    Given the tool's moderate complexity (fetching specific data with two required parameters), lack of annotations, and no output schema, the description is incomplete. It doesn't explain what details are returned, error conditions, or behavioral traits, leaving the agent with insufficient context for reliable 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?

    The input schema has 100% description coverage, clearly documenting both parameters ('project_id' and 'issue_id') as required strings. The description adds no additional semantic context beyond implying these are needed to fetch issue details, so it meets the baseline for adequate but unenriched parameter information.

    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 ('Get') and resource ('details of a specific issue'), making it easy to understand what it does. However, it doesn't distinguish itself from sibling tools like 'get_project' or 'get_task' beyond the resource type, missing explicit differentiation.

    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 sibling tools like 'list_issues' for browsing or 'search' for filtering, nor does it specify prerequisites such as needing an existing issue ID, leaving usage context 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 full burden for behavioral disclosure. It states this is a read operation ('Get details'), but doesn't mention permissions required, rate limits, error conditions, or what format/details are returned. For a tool with zero 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 a single, efficient sentence with zero wasted words. It's appropriately sized for a simple retrieval tool and gets straight to the point without unnecessary elaboration.

    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 no annotations and no output schema, the description should do more to explain what 'details' are returned, error handling, or authentication requirements. For a tool that presumably returns structured portal data, the description is too minimal to be complete.

    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 doesn't add any parameter information beyond what's already in the schema (which has 100% coverage). The schema fully documents the single 'portal_id' parameter, so the baseline score of 3 is appropriate as the description doesn't compensate but also doesn't need to given complete 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 verb ('Get') and resource ('details of a specific portal'), making the purpose understandable. However, it doesn't distinguish this tool from its sibling 'list_portals' which presumably lists multiple portals, leaving some ambiguity about when to use one versus the other.

    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 'list_portals' or other get_* tools. It doesn't mention prerequisites, context, or exclusions, leaving the agent to infer usage from the name 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 the full burden of behavioral disclosure. It states the tool lists phases/milestones, implying a read-only operation, but doesn't mention pagination behavior, rate limits, authentication needs, or what happens if the project ID is invalid. For a tool with parameters like 'page' and 'per_page', 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 is front-loaded with the core action and resource, making it easy to parse quickly. Every part of the sentence earns its place by conveying 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?

    Given the complexity of a list operation with pagination parameters and no output schema, the description is insufficient. It doesn't explain the return format, error conditions, or behavioral aspects like pagination limits. With no annotations to supplement, this leaves critical gaps for an agent to understand how 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?

    The input schema has 100% description coverage, clearly documenting all parameters ('project_id', 'page', 'per_page') with their types and defaults. The description adds no additional semantic context beyond what the schema provides, such as explaining what 'phases/milestones' entail or how pagination works in practice. This meets the baseline score since 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 ('List') and resource ('phases/milestones from a project'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'list_projects' or 'list_tasks', which also list resources but for different entities, leaving some ambiguity about when to choose this specific tool over others.

    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 sibling tools like 'list_projects' or 'list_tasks', nor does it specify prerequisites such as needing a valid project ID. This lack of context makes it harder for an agent to decide when this tool is appropriate.

    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 offers minimal information. It doesn't mention pagination behavior (implied by parameters but not described), authentication requirements, rate limits, or what constitutes 'all projects' (active only, archived, etc.). The description lacks crucial context about how this operation 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 extremely concise - a single sentence that directly states the tool's purpose without unnecessary words. It's front-loaded with the core functionality and wastes no space on redundant information or verbose explanations.

    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 list operation with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what information is returned about projects, whether the list is filtered or sorted, or how to interpret the pagination parameters in practice. The agent would need to guess about the tool's behavior and output format.

    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 100% schema description coverage, the input schema already documents both parameters (page and per_page) with their types and defaults. The description adds no additional parameter information beyond what the schema provides, so it meets the baseline for high schema coverage without compensating with extra semantic context.

    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 projects') and resource ('in a portal'), providing a specific verb+resource combination. However, it doesn't distinguish this tool from similar sibling tools like 'list_issues' or 'list_tasks' - it only specifies the resource type but not how it differs from other list operations.

    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 'get_project' (for retrieving a specific project), 'search' (for filtered queries), and 'list_portals' (for listing portals rather than projects), there's no indication of when this unfiltered list operation is appropriate versus more targeted alternatives.

    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 limited behavioral insight. It implies a read-only operation (listing) but doesn't disclose pagination behavior (beyond what the schema shows), rate limits, authentication needs, or what happens if project_id is omitted. For a tool with 3 parameters and no annotation coverage, 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 front-loads the core purpose. Every word earns its place, with no redundant or vague phrasing. It's appropriately sized for a simple list operation.

    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 (3 parameters, no output schema, no annotations), the description is incomplete. It lacks details on return format, error conditions, pagination behavior, and how it differs from sibling tools like search. For a list operation in a system with multiple query options, 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?

    Schema description coverage is 100%, so the schema fully documents all parameters. The description adds marginal value by clarifying that project_id is optional for portal-level listing, but doesn't provide additional context like format examples or interaction effects between parameters. Baseline 3 is appropriate when 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 verb ('List') and resource ('tasks'), and specifies the scope ('from a project or portal'). It distinguishes itself from other list tools like list_issues or list_projects by focusing on tasks. However, it doesn't explicitly differentiate from get_task (which retrieves a single task) or search (which might find tasks), 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 Guidelines2/5

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

    The description provides minimal guidance: it mentions the optional project_id for portal-level listing, but doesn't specify when to use this tool versus alternatives like get_task (for single tasks), search (for filtered queries), or list_issues (for related resources). No explicit when-not-to-use or prerequisite information is given.

    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. 'Update an existing project' implies a mutation operation but reveals nothing about permissions needed, whether changes are reversible, rate limits, or what happens to unspecified fields. 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 wasted words. It's appropriately sized for its purpose and front-loaded with the essential action and resource.

    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 6 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain what the tool returns, error conditions, or behavioral nuances. The agent would lack critical context for proper invocation despite the comprehensive parameter schema.

    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 information beyond what's already in the schema, which has 100% coverage with clear descriptions for all 6 parameters. The baseline score of 3 reflects that the schema does the heavy lifting, and the description doesn't compensate with additional context like format examples or constraints.

    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 ('an existing project'), making the purpose immediately understandable. However, it doesn't differentiate this tool from its sibling 'update_issue' and 'update_task', which follow the same pattern for different resources.

    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_project' or 'delete_project', nor does it mention prerequisites or constraints. It simply states what the tool does without context for selection.

    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 'Retrieve all' but doesn't disclose critical traits like whether it's paginated, requires authentication, has rate limits, or returns a specific format. This is inadequate for a 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 directly states the tool's function without unnecessary words. It's appropriately sized and front-loaded, 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?

    Given no annotations, no output schema, and a simple tool (0 params), the description is incomplete. It lacks behavioral details (e.g., return format, pagination) and doesn't leverage the low complexity to provide fuller context, leaving gaps in understanding how the tool behaves.

    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 doesn't add param info, but that's acceptable here—baseline is 4 since the schema fully handles parameters, and the description doesn't need to compensate.

    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 ('Retrieve') and resource ('all Zoho Projects portals'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'get_portal' (which likely retrieves a single portal) or 'list_projects' (which lists a different resource type), missing full sibling 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?

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose 'list_portals' over 'get_portal' (e.g., for bulk retrieval vs. single item) or other list tools like 'list_projects', leaving usage context implied at best.

    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 full burden. It states what the tool does but doesn't disclose behavioral traits like whether this is a read-only operation, if it requires specific permissions, pagination behavior, rate limits, or what the output format looks like. For a listing tool with zero annotation coverage, this leaves significant gaps in understanding how the tool behaves beyond its basic function.

    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 clearly states the tool's purpose without unnecessary words. It's appropriately sized for a simple listing tool and front-loads the essential information. Every word earns its place in conveying the scope and resource.

    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 (listing operation with one optional parameter) and no annotations or output schema, the description provides basic completeness by stating what it does and the context. However, it lacks details about behavioral aspects, output format, or integration with sibling tools, which would be helpful for an agent to use it correctly in a broader workflow.

    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 'project_id' documented in the schema as optional for portal-level operations. The description adds marginal value by reinforcing the portal/project context mentioned in the schema description. Since schema coverage is high, the baseline is 3 even without additional parameter details in 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 verb ('List') and resource ('users'), making the purpose understandable. It distinguishes between portal-level and project-level listing by mentioning 'in a portal or project', which provides useful context. However, it doesn't explicitly differentiate from sibling tools like 'list_portals' or 'list_projects' beyond the resource type.

    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 by mentioning 'portal or project', suggesting this tool is for listing users within those scopes. However, it doesn't provide explicit guidance on when to use this versus alternatives like 'search' (which might handle user queries) or clarify if this is the primary user listing method versus other potential user-related tools. No explicit when-not-to-use or prerequisite information is provided.

    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 adds valuable context by specifying that deletion 'moves to trash' rather than permanent removal, which is crucial for understanding the tool's effect. However, it doesn't cover other important behaviors like permissions needed, whether the action is reversible, or error conditions.

    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 (5 words) and front-loaded with the core action. Every word earns its place - 'Delete' specifies the action, 'a project' specifies the resource, and '(moves to trash)' provides critical behavioral context without redundancy.

    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 destructive operation with no annotations and no output schema, the description is minimally complete. It covers the basic action and clarifies the deletion behavior (moves to trash), but lacks information about permissions, error handling, or what happens to associated resources. Given the complexity of a delete operation, more context 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 100% description coverage, with the single parameter 'project_id' clearly documented. The description doesn't add any parameter-specific information beyond what the schema provides, which is acceptable given the high schema coverage. With only one parameter, the baseline is appropriately high.

    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 ('Delete') and resource ('a project'), making the purpose immediately understandable. It distinguishes from siblings like 'delete_task' by specifying the resource type. However, it doesn't fully differentiate from other destructive operations like 'update_project' that might also modify projects.

    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 prerequisites (e.g., project must exist), when not to use it (e.g., for archiving vs. deletion), or refer to sibling tools like 'update_project' for modifications instead of deletion.

    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

zoho-projects-mcp MCP server

Copy to your README.md:

Score Badge

zoho-projects-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/qpiai/zoho-projects-mcp'

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