Skip to main content
Glama

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.0

  • Disambiguation5/5

    Each tool has a clearly distinct purpose with no overlap: adding entries, starting/stopping timers, finding entries by project/user/search, identifying overtime/undertime users, and getting weekly summaries. The descriptions make it easy to differentiate between similar-sounding tools like find_user_time_entries and get_user_weekly_summary.

    Naming Consistency5/5

    All tools follow a consistent snake_case pattern with clear verb_noun combinations (e.g., add_time_entry, find_project_time_entries, start_timer). The naming is predictable and readable throughout, with no deviations in style or convention.

    Tool Count5/5

    With 9 tools, this server is well-scoped for time tracking and management. Each tool serves a specific, necessary function in the domain, from core operations like adding entries and managing timers to analytics features like finding overtime users and weekly summaries, without being overly sparse or bloated.

    Completeness5/5

    The tool set provides complete coverage for time tracking workflows: creating entries (add_time_entry, start_timer, stop_timer), retrieving entries by various criteria (find_project_time_entries, find_user_time_entries, search_time_entries), and analytics (find_overtime_users, find_undertime_users, get_user_weekly_summary). There are no obvious gaps, enabling agents to handle full CRUD-like operations and reporting.

  • Average 3.3/5 across 9 of 9 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 full burden but offers minimal behavioral insight. It states the tool creates a completed time entry, implying a write operation, but doesn't disclose permissions needed, error conditions, whether entries are editable after creation, or any rate limits. The description is insufficient 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.

    Conciseness4/5

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

    The description is concise with two sentences that directly state the tool's purpose. However, it could be more front-loaded by immediately clarifying it's for completed entries versus ongoing tracking, and the second sentence slightly repeats information from the first.

    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 inadequate. It doesn't explain what happens after creation (e.g., success response, error handling), doesn't mention dependencies between parameters (like task_name requiring project_name), and provides no context about the system's time entry model.

    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 well-documented in the schema. The description adds no additional parameter semantics beyond implying that start/end times define a completed entry, which is already clear from parameter names and schema descriptions. 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 action ('Add a time entry') and resource ('for a specific user'), specifying it creates a completed entry with start/end times. However, it doesn't differentiate from sibling tools like 'start_timer' or 'stop_timer' which likely handle time tracking differently.

    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 'start_timer' for ongoing tracking or 'search_time_entries' for retrieval, nor does it specify prerequisites or appropriate contexts for creating completed entries.

    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 implies a read-only operation but doesn't specify permissions, rate limits, or what the summary includes (e.g., format, data fields). This is inadequate for a tool with potential complexity in data retrieval.

    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 that efficiently conveys the core functionality without any wasted words. It's front-loaded and appropriately sized for the tool's purpose, earning full marks for conciseness.

    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. It doesn't explain what the summary returns (e.g., structured data, totals per week), behavioral aspects like error handling, or how it integrates with sibling tools, leaving gaps for the agent to infer.

    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%, so the schema already documents all parameters thoroughly. The description adds no additional meaning beyond implying a time range ('past month'), which aligns with the 'weeks' parameter but doesn't provide extra context like default behavior or constraints, meeting the 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 tool's purpose with a specific verb ('Get') and resource ('summary of hours logged by a user'), making it easy to understand what it does. However, it doesn't explicitly differentiate from sibling tools like 'find_user_time_entries' or 'search_time_entries', which might also retrieve time-related data, so it doesn't reach the highest 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 sibling tools or contexts where other tools might be more appropriate, such as using 'find_user_time_entries' for detailed entries instead of summaries, leaving the agent without usage 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?

    With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions that the tool 'creates a running time entry without an end time', which implies a write operation, but lacks details on permissions, rate limits, error handling, or what happens if a timer is already running. 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 that directly states the tool's purpose without unnecessary words. It is front-loaded and every part 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 that this is a mutation tool with no annotations and no output schema, the description is insufficient. It lacks information on behavioral traits, error conditions, return values, and how it interacts with sibling tools. For a tool that modifies state, more context is needed to ensure safe and correct usage.

    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, so the schema already documents all parameters thoroughly. The description does not add any additional meaning or context beyond what the schema provides, such as explaining interdependencies (e.g., task_name requires project_name) or usage examples. 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 action ('Start a timer') and the resource ('for the current user'), specifying that it creates a running time entry without an end time. However, it does not explicitly differentiate from sibling tools like 'stop_timer' or 'add_time_entry', which would require more specific scope or usage context.

    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 such as 'stop_timer' or 'add_time_entry', nor does it mention prerequisites or exclusions. It simply states what the tool does 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. It states the tool finds users based on hours threshold, but doesn't reveal key behaviors: whether it's a read-only operation, what permissions are needed, how results are returned (e.g., list format, pagination), or any rate limits. The description adds minimal context beyond the basic purpose, missing critical operational details for an agent to use it effectively.

    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: the first states the purpose clearly, and the second adds a usage hint. It's front-loaded with the core functionality, and both sentences earn their place by providing purpose and context. However, it could be slightly more structured by explicitly mentioning parameters or alternatives, keeping it efficient but not maximally informative.

    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 tool with 3 parameters, no annotations, and no output schema, the description is incomplete. It lacks details on behavioral aspects (e.g., read/write nature, auth needs), output format, and how to interpret results. While the purpose is clear, the absence of annotations and output schema means the description should do more to compensate, which it doesn't, leaving significant gaps for an agent to rely on.

    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 all three parameters ('hours_threshold', 'weeks', 'workspace_id') well-documented in the schema, including defaults and optionality. The description adds no additional parameter semantics beyond what the schema provides, such as explaining how 'weeks' interacts with the analysis or what 'workspace_id' entails. Given the high schema coverage, the baseline score of 3 is appropriate as the description doesn't compensate but doesn't need to.

    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: 'Find users who have not logged at least a specified number of hours per week.' This is a specific verb ('find') and resource ('users') with a clear criterion ('not logged at least a specified number of hours per week'). It distinguishes from some siblings like 'find_overtime_users' by focusing on undertime, but doesn't explicitly differentiate from others like 'find_user_time_entries' or 'get_user_weekly_summary' that might overlap in user analysis.

    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 provides implied usage with 'Useful for identifying team members who may need support,' suggesting it's for monitoring and support scenarios. However, it lacks explicit guidance on when to use this tool versus alternatives like 'find_overtime_users' for opposite analysis or 'get_user_weekly_summary' for individual summaries. No exclusions or prerequisites are mentioned, leaving gaps in decision-making context.

    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 the basic action. It doesn't disclose behavioral traits like whether stopping a timer requires specific permissions, what happens if no timer is running (error behavior), or if the action is reversible. This leaves significant gaps for a mutation tool.

    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 wasted words. It's front-loaded with the core action and appropriately sized for the tool's simplicity, making it highly efficient.

    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 for a mutation tool. It doesn't explain what happens after stopping (e.g., does it return the stopped time entry?), error conditions, or integration with sibling tools, 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.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The schema description coverage is 100%, so the schema already documents the optional workspace_id parameter. The description adds no parameter-specific information beyond what's in the schema, but with only one parameter and high coverage, the baseline is appropriate. No additional value is provided, but no compensation is needed.

    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 ('Stop') and target ('currently running timer for the current user'), providing a specific verb+resource combination. However, it doesn't explicitly differentiate from sibling tools like 'add_time_entry' or 'start_timer' beyond the obvious action difference, missing nuanced comparison.

    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 implies usage when a timer is running but provides no explicit guidance on when to use this tool versus alternatives (e.g., when to stop vs. add time entries). There's no mention of prerequisites (e.g., must have a timer started) or exclusions, leaving usage context vague.

    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 mentions the tool's purpose and usefulness but lacks details on permissions required, rate limits, whether it's read-only or mutative, or what the output format looks like. 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.

    Conciseness5/5

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

    The description is concise and front-loaded: two sentences with zero waste. The first sentence clearly states the purpose, and the second adds contextual value without redundancy. It's appropriately sized for the tool's complexity.

    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 behavioral aspects like permissions or rate limits, and it lacks details on return values (e.g., what data is returned about users). For a tool with 3 parameters and no structured coverage beyond the 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?

    Schema description coverage is 100%, meaning the input schema already documents all parameters thoroughly. The description adds no additional parameter semantics beyond what the schema provides (e.g., it doesn't explain the 'hours_threshold' beyond 'specified number of hours'). Baseline score of 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 tool's purpose: 'Find users who have logged more than a specified number of hours per week in the past month.' It specifies the verb ('find'), resource ('users'), and criteria ('logged more than a specified number of hours per week in the past month'). However, it doesn't explicitly differentiate from sibling tools like 'find_undertime_users' or 'find_user_time_entries', which prevents a score of 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 provides implied usage context: 'Useful for identifying overworked team members.' This suggests when to use the tool, but it doesn't explicitly state when not to use it or name alternatives among sibling tools (e.g., 'find_undertime_users' for underworked users). No explicit exclusions or prerequisites 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 mentions the return scope ('from all users') but lacks critical behavioral details: whether this is a read-only operation, if it requires specific permissions, pagination behavior beyond the 'limit' parameter, or rate limits. For a tool with 5 parameters and no annotations, 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?

    Two concise sentences that efficiently communicate the tool's purpose and scope. The first sentence states the core function, and the second clarifies the return scope. No wasted words or redundant 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 5 parameters, no annotations, and no output schema, the description is adequate but has clear gaps. It explains what the tool does but lacks behavioral context (permissions, side effects) and output format details. The schema handles parameters well, but overall completeness is minimal viable.

    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%, providing full parameter documentation. The description adds no parameter-specific information beyond what's in the schema. According to scoring rules, with high schema coverage (>80%), the baseline is 3 even with no param info in description.

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

    Purpose5/5

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

    The description clearly states the verb 'Find' and resource 'time entries for a specific project', specifying it returns entries from all users. This distinguishes it from sibling tools like 'find_user_time_entries' (user-specific) and 'search_time_entries' (general search).

    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 implies usage context by specifying 'for a specific project' and 'from all users', which helps differentiate from user-focused alternatives. However, it doesn't explicitly state when NOT to use this tool or name specific alternatives like 'find_user_time_entries' for user-specific queries.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

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

    No annotations are provided, so the description carries the full burden. It discloses key behavioral traits: it searches across a date range with defaults (last 30 days), returns specific fields (descriptions, projects, durations), and uses partial/case-insensitive matching for user names. However, it doesn't mention pagination, rate limits, authentication needs, or error handling, leaving gaps for a read operation.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

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

    The description is front-loaded with the core purpose in the first sentence, followed by additional context in the second. Both sentences are essential: the first defines the tool's function, and the second clarifies scope and output. There is no wasted verbiage or 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?

    Given no annotations and no output schema, the description is moderately complete for a read tool with 5 parameters. It covers the purpose, basic behavior, and output fields, but lacks details on return structure, pagination, or error cases. For a tool with 100% schema coverage but no output schema, it's adequate but has clear gaps in behavioral 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 5 parameters. The description adds minimal value beyond the schema: it implies date-range filtering and mentions default timeframes, but doesn't provide additional syntax or format details. With high schema coverage, the baseline score of 3 is appropriate.

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

    Purpose5/5

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

    The description clearly states the specific action ('Find all time entries'), target resource ('for a specific user by their name'), and scope ('Searches across a date range... returns all time entries with descriptions, projects, and durations'). It distinguishes from siblings like 'find_project_time_entries' (which filters by project) and 'search_time_entries' (which likely has broader search criteria).

    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 for when to use this tool: when searching for time entries by user name across a date range. It doesn't explicitly state when not to use it or name alternatives among siblings (e.g., 'search_time_entries' might be better for non-user-based searches), but the context is sufficiently clear for an 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.

  • Behavior3/5

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

    With no annotations provided, the description carries full burden. It discloses the search behavior (phrase matching, cross-user scope) but doesn't mention important behavioral traits like pagination, rate limits, authentication requirements, or what happens with empty results. The description doesn't contradict annotations (none exist), but leaves significant behavioral aspects unspecified.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

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

    Two concise sentences that efficiently communicate the core functionality. The first sentence states the purpose and primary parameter, the second clarifies scope and behavior. No wasted words or redundant 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?

    For a search tool with 6 parameters, 100% schema coverage, but no annotations and no output schema, the description is adequate but incomplete. It covers the what and basic how, but lacks information about return format, error conditions, or behavioral constraints that would be important for an agent to use it 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 100%, so the schema already documents all 6 parameters thoroughly. The description adds minimal value beyond the schema - it mentions 'search phrase' which aligns with the required search_phrase parameter, but doesn't provide additional semantic context about parameter interactions or usage patterns.

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

    Purpose5/5

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

    The description clearly states the specific action ('search time entries'), resource ('time entries'), and scope ('by description phrase', 'across all users', 'containing the search phrase'). It distinguishes from siblings like find_user_time_entries (user-specific) and find_project_time_entries (project-specific) by emphasizing cross-user search capability.

    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 about when to use this tool: for searching time entries by description phrase across all users. It doesn't explicitly state when NOT to use it or name alternatives, but the cross-user scope differentiates it from user-specific sibling tools like find_user_time_entries.

    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

clockify-mcp MCP server

Copy to your README.md:

Score Badge

clockify-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/KeithHanson/clockify-mcp'

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