Skip to main content
Glama
aic0t

AI Coach MCP Server

by aic0t

Server Quality Checklist

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

  • Disambiguation4/5

    Most tools have clearly distinct purposes: the note CRUD/search group and the prepare/commit care pair are well separated. Two pairs create mild ambiguity — report_ai_coach_activity vs show_ai_coach_message both use the mascot's speech bubble, and open_ai_coach_dashboard vs refresh_ai_coach_status overlap in 'show/read state' — but the descriptions are detailed enough to resolve most confusion.

    Naming Consistency5/5

    Every tool follows the same verb_ai_coach_noun pattern in snake_case (report_ai_coach_activity, list_ai_coach_notes, commit_ai_coach_care). The convention is uniform across both sub-domains and makes the surface highly predictable.

    Tool Count4/5

    13 tools is on the higher end but each covers a distinct operation across two coherent sub-domains: mascot interaction (activity, message, care, dashboard, file) and note management (CRUD plus search). The open/refresh dashboard split and the message/file show split are slightly granular but defensible.

    Completeness4/5

    The note lifecycle is complete (create, read, list, search, update, delete) and care actions follow a sensible prepare/commit flow. Minor gaps exist: no getter for the care-confirmation setting, no explicit dismiss for messages/files, and no direct mascot status query outside the dashboard.

  • Average 4.4/5 across 13 of 13 tools scored. Lowest: 3.8/5.

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

    • No community issues in the last 6 months
    • 3 commits in the last 12 weeks
    • Last stable release on
    • 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

  • Behavior3/5

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

    Annotations already communicate that this is a mutating but idempotent, non-destructive operation. The description adds the confirmation precondition, which is useful context, but it does not describe side effects, authorization needs, or failure behaviors beyond what annotations and schema already convey.

    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 sentence that is direct, front-loaded, and free of redundant phrasing. It communicates the essential action and precondition without wasting words.

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

    Completeness4/5

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

    With a rich input schema, output schema, and annotations, the description covers the main context needed to invoke the tool correctly. It could have explicitly referenced prepare_ai_coach_care, but the previewToken schema description already supplies that linkage.

    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 description does not need to explain parameters. It also provides no additional parameter-level insight beyond the schema, matching the baseline score of 3.

    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 names a specific action ("apply a care action") with a clear precondition (user confirmed in dashboard), which makes the tool's purpose understandable and separates it from prepare-style tools. It does not explicitly name sibling alternatives, but the resource and action are specific enough.

    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 clearly indicates this tool is used when the user has already confirmed the care action in the dashboard, which establishes the correct context. It does not explicitly state when-not-to-use or name alternatives, but the confirmation precondition is a useful usage signal.

    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?

    Annotations already declare readOnlyHint=true and openWorldHint=false, so the read-only nature is covered. The description adds useful context about re-reading mascot state for the dashboard, but it does not disclose additional behavioral details such as error behavior, staleness, or caching. This is acceptable for a simple read tool but does not exceed the annotation baseline significantly.

    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 short, front-loaded sentences contain the essential purpose and read-only nature with no filler. The description is appropriately sized for such a simple tool.

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

    Completeness5/5

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

    For a one-parameter, read-only tool with an output schema, the description is sufficiently complete. The schema covers locale semantics, annotations cover safety, and the output schema handles return values, so nothing essential is missing for an agent to call this correctly.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

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

    Schema description coverage is 100%, with the single optional locale parameter already documented in detail, including its BCP 47 pattern and how the dashboard passes hostContext.locale. The tool description itself adds no parameter-level meaning, so the baseline of 3 applies.

    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 names a specific verb ('Re-read'), a specific resource ('AI Coach mascot state'), and a clear context ('for the dashboard view'), which distinguishes it from sibling tools like read_ai_coach_note or report_ai_coach_activity. The explicit 'Read-only' also prevents confusion with mutation-style coach tools.

    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 phrase 'for the dashboard view' gives a clear intended context, implying this tool is used when the dashboard needs refreshed mascot state. However, it does not explicitly compare against alternatives or state when not to use it, leaving some inference to the agent.

    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?

    Annotations already indicate it's not read-only (readOnlyHint=false), not open-world (openWorldHint=false), and not destructive (destructiveHint=false). The description adds behavioral context by stating the message is text-only and length-constrained, which is useful. However, it does not disclose whether the message persists, is transient, or has any side effects beyond the immediate display. Given annotations, the description meets the baseline but could add more context.

    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 two sentences long, with the core purpose and key constraint front-loaded. It avoids redundancy and every word adds value. The sentence structure is direct and scannable, making it easy for an agent to quickly grasp the tool's function.

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

    Completeness4/5

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

    For a simple display tool with 3 parameters (one required) and full schema coverage, the description provides essential information: what it does, its limitations, and its scope. It doesn't explain return values, but the presence of an output schema suggests that is handled elsewhere. The only notable omission is explicit routing to sibling tools, but the 'text only' constraint implicitly covers that. Overall, it is sufficiently complete for its complexity.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

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

    Schema coverage is 100%, so all three parameters are documented. The description reinforces the text length limit ('up to 140 characters') which mirrors the schema's '140 Unicode scalars', and adds the constraint that only text is allowed. This adds marginal value beyond the schema but does not introduce new parameter-specific details that are absent from the schema. Baseline 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 action (display), the resource (AI Coach mascot's speech bubble), and the constraints (short text, up to 140 characters, text only). It distinctly differentiates from `show_ai_coach_file` by explicitly ruling out images and links, so an agent can select the correct tool without ambiguity.

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

    Usage Guidelines4/5

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

    The description implies a usage context: use this for text-only messages. The phrase 'Text only; no images or links' signals that for other content types, a different tool (like `show_ai_coach_file`) should be used. However, it doesn't explicitly name the alternative or state when not to use it, so it's clear but not fully explicit.

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

  • Behavior4/5

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

    Annotations already declare readOnlyHint=true, and the description reinforces it with 'Read-only.' It adds useful behavioral context beyond the annotation by specifying that it opens an interactive dashboard showing current mascot state. No contradiction.

    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 short sentences, front-loaded with the primary action and resource. 'Read-only' is a single reinforcing word, and there is no filler.

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

    Completeness5/5

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

    For a simple zero-required-parameter tool with annotations and an output schema, the description is sufficient: it states what is shown, that the view is interactive, and that the operation is read-only. Remaining parameter details are covered by the 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?

    Schema coverage is 100%: the single optional locale parameter is fully described with BCP 47 guidance and the note that hostContext.locale is passed through. The tool description itself adds no parameter-level meaning, so the baseline 3 applies.

    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?

    States a specific verb and resource: 'Show the current state of the AI Coach desktop mascots' and 'open an interactive dashboard.' This clearly differentiates it from siblings like read_ai_coach_note, show_ai_coach_message, and refresh_ai_coach_status.

    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 use case is implied: use when a current-state overview or dashboard view of mascots is needed. However, it does not explicitly say when to prefer this over refresh_ai_coach_status or the show_ai_coach_* tools, nor does it state exclusions.

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

  • Behavior4/5

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

    The readOnlyHint annotation already signals safety, and the description reinforces it with 'Does not change anything' and adds a workflow detail—user confirmation in the dashboard—that annotations do not convey. It also discloses the pre-change state in the output.

    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 sentences, front-loaded with the tool's purpose and followed by the critical non-mutation note. No filler or redundant restatement of schema content.

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

    Completeness5/5

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

    For a read-only preview tool with an output schema, full parameter descriptions, and annotations, the description covers what the tool does, what it does not do, and the workflow context. Nothing needed to select and invoke it correctly is missing.

    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 carries the parameter semantics and the description need not repeat them. The description's action list is a useful gloss, though it uses 'walk' where the schema enum says 'toggle_walk'; the exact enum remains visible in the schema.

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

    Purpose5/5

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

    The description states a specific verb ('Show'), a concrete resource (care actions for a mascot), and the key output (state before the change). It also clearly distinguishes itself from mutation tools by declaring it non-mutating.

    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?

    It establishes when to use the tool: to preview currently possible care actions before the user confirms in the dashboard. It does not explicitly name an alternative such as commit_ai_coach_care, but the non-mutating and confirmation-flow language makes the intended context clear.

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

  • Behavior4/5

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

    Annotations already declare readOnlyHint=true, so read-only is covered. The description adds behavioral details: returns a snippet around the hit, includes the group each memo belongs to, and specifies case-insensitive substring matching. It also clarifies the group parameter's empty-string meaning, which is valuable beyond the schema. No contradictions with annotations.

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

    Conciseness5/5

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

    Two sentences with zero redundancy. The first sentence states the core purpose and return format; the second explains the group parameter. It is front-loaded with the key action and ends with read-only. Every word earns its place.

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

    Completeness5/5

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

    With an output schema present, the description does not need to detail return fields. It covers the essential usage: search behavior, group filtering, and result content (snippet and group). Combined with annotations (read-only) and full schema documentation, nothing critical is missing for an agent to invoke the tool correctly.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

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

    Schema description coverage is 100% — all four parameters have detailed descriptions. The description adds the group empty-string behavior, but the schema already states exactly that. The query behavior (case-insensitive substring) is also in the schema. The description adds minimal new parameter meaning beyond the schema, so baseline 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 action (search) and the resource (user's AI Coach memos) with specific detail: searches by title and body text, case-insensitive substring, and returns matching memos with a snippet and group. It is distinct from siblings like list_ai_coach_notes (which lists without search) and read_ai_coach_note (which reads a specific memo).

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

    Usage Guidelines4/5

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

    The description provides clear context on when to use this tool: to search memos by content, optionally within a group or ungrouped. It explains the group parameter semantics thoroughly. It does not explicitly compare with alternatives, but the purpose is unambiguous enough for an agent to select it over listing or reading when searching is needed.

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

  • Behavior4/5

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

    Annotations already convey idempotent and non-destructive traits; the description adds that setting true persists 'from then on' and that model-initiated care is unaffected. No contradiction with annotations.

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

    Conciseness5/5

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

    Two compact sentences front-load the core behavior and scope with no filler. Every sentence adds relevant information.

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

    Completeness5/5

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

    For a simple preference-setting tool, the description covers behavior, scope, and persistence. Full schema documentation and an output schema handle parameter and return-value details, leaving no meaningful gaps.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

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

    Schema description coverage is 100%, so the schema already documents both parameters. The description reinforces the persistence behavior of skipCareConfirmation but adds no new meaning beyond the schema.

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

    Purpose5/5

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

    Description states a specific action: remembering/setting whether the AI Coach dashboard asks for confirmation before care buttons take effect. The 'Dashboard use only' clause clearly differentiates it from model-requested care and from sibling tools like commit_ai_coach_care.

    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?

    Explicitly states dashboard-only scope and that model-requested care is always confirmed, giving a clear when-not. It does not name specific alternative tools, but the usage boundary is unambiguous.

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

  • Behavior5/5

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

    Annotations already declare readOnlyHint=true and openWorldHint=false, and the description's closing "Read-only" is consistent, not contradictory. The description adds substantial behavioral value beyond annotations: newest-first ordering, the exact field set returned, the explicit exclusion of the full body, and one-level group organization semantics. Rich, useful disclosure of mutation-free behavior.

    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?

    Four sentences, front-loaded with the core purpose and ordering, then the return-shape caveat, then group semantics and routing. Efficient and no fluff, though the final "Read-only" duplicates what the annotation already states — a minor redundancy, not waste.

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

    Completeness5/5

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

    Complete for a metadata-list tool: it has an output schema, 100% parameter coverage, and the description explains ordering, returned fields, group filtering semantics, and routes to the read sibling for bodies. Nothing an agent needs to invoke it correctly is missing.

    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% — all four parameters (group, limit, locale, offset) are documented in the schema. The description reinforces the group semantics (one-level, empty string = ungrouped) but does not add meaning beyond the schema's own parameter descriptions. Baseline 3 is appropriate when the schema carries the load.

    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?

    States a specific verb and resource — "List the user's memos in AI Coach, newest first" — and immediately differentiates it from the read sibling by declaring it returns metadata (noteId, title, last modified, size, group, excerpt) and not the full body, then points to read_ai_coach_note for the body. An agent can distinguish list vs read vs search on sight.

    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?

    Gives clear routing guidance: "Use read_ai_coach_note to get the body" names the alternative and the condition that selects it. Group-filtering semantics are explained (one group vs empty string vs omit). However, it does not explicitly address when to prefer this over search_ai_coach_notes, so the exclusion guidance is slightly incomplete.

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

  • Behavior5/5

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

    Annotations already mark destructiveHint and idempotentHint, and the description adds recoverability from trash, the in-product confirmation prompt, and the meaning of note_confirmation_denied. This is valuable behavioral context beyond structured annotations.

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

    Conciseness5/5

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

    Three sentences with no filler. The core action is front-loaded, followed by consent and confirmation behavior. Every sentence earns its place.

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

    Completeness5/5

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

    For a destructive tool, the description covers recoverability, user consent, and confirmation failure semantics; the schema fully documents all parameters and an output schema exists. Nothing essential is missing.

    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 clear descriptions for locale, noteId, and idempotencyKey. The description adds no parameter-specific meaning, so baseline 3 applies.

    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?

    States a specific verb and resource: 'Move one memo in AI Coach to the trash.' It clearly distinguishes this destructive action from sibling read/write/list/search tools without ambiguity.

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

    Usage Guidelines4/5

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

    Provides explicit when-to-call guidance by requiring user consent unless the user already asked for deletion, and explains the meaning of note_confirmation_denied. It does not name alternative tools, but gives clear when-not-to-call conditions.

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

  • Behavior5/5

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

    The description goes well beyond annotations by disclosing that HTML is rendered with scripts removed, there is no network access, the file is read only by the app, and contents/image bytes are never returned to the model. This is critical behavioral and privacy information the agent cannot infer from the annotations alone.

    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?

    Three sentences with the purpose front-loaded. Each sentence contributes a distinct piece of information: what it does, safety behavior, and when to use it. The extension list is slightly redundant with schema but not excessive.

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

    Completeness5/5

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

    For a tool with one required parameter, full schema coverage, an output schema, and clear annotations, the description provides all necessary operational context: purpose, allowed file types, HTML sandboxing, privacy guarantees, and usage boundaries.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

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

    Schema description coverage is 100%, and each parameter already has a meaningful description. The description mostly repeats the allowed extension list from the path parameter, adding no significant new parameter-level meaning, so the baseline 3 applies.

    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 first sentence states a specific action and resource: 'Open a safe local preview beside the AI Coach mascot.' The allowed-file list and HTML sandbox details distinguish it clearly from sibling tools like show_ai_coach_message or open_ai_coach_dashboard.

    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 final sentence gives an explicit usage constraint: 'Use this only for a file the user asked to preview or a file created in the current task.' It also restricts by allowed file extensions. It does not name an alternative sibling, so it falls just short of full routing guidance.

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

  • Behavior5/5

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

    The description adds meaningful behavior beyond the annotations: one memo body may be paginated, truncated responses require offsetBytes = offsetBytes + returnedBytes, and modifiedAt must be carried into later writes. These are critical behavioral rules an agent could not infer from the schema alone.

    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?

    Three compact sentences, each earning its place: purpose, pagination behavior, and the modifiedAt write precondition. The most important detail is front-loaded, and there is no filler.

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

    Completeness5/5

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

    Given the output schema exists, the description covers everything an agent needs to call this tool correctly: what it reads, how to iterate through large memos, and how to preserve modifiedAt for subsequent writes. The parameter details are already handled by the schema.

    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 already documents all parameters with 100% coverage, so the baseline is 3. The description adds value by specifying the exact pagination pattern for offsetBytes and the modifiedAt handoff contract, which goes beyond the schema descriptions.

    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 opens with a specific verb and resource: 'Read the Markdown body of one memo in AI Coach.' This clearly distinguishes the operation from list/search/write/delete siblings, and the 'Read-only' tag reinforces its non-mutating role.

    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?

    It gives clear context for when to call the tool: to read one memo's Markdown body, and to call again with a new offsetBytes when 'truncated' is true. It does not explicitly name alternatives or state when not to use it, but the use case is unambiguous.

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

  • Behavior5/5

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

    The description discloses that repeating the same state does not re-announce it, which complements the idempotentHint annotation. It also clarifies that 'succeeded'/'failed' are terminal and clear themselves, and 'idle' removes the display—behavioral details beyond what annotations state. This is consistent with the annotations and adds useful context.

    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 three sentences, starts with the core purpose, and immediately offers practical usage patterns. It front-loads the most important information (what it does and when to call it) and avoids unnecessary detail, earning its place.

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

    Completeness5/5

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

    For a tool with an output schema (not shown but indicated) and 5 well-described parameters, the description covers the essential usage scenarios, state lifecycle, and safety of repeated calls. Nothing critical is missing for an agent to invoke it correctly.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

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

    Schema coverage is 100%, so every parameter is documented. The description adds a small extra by mentioning 'optionally with a short label' and grouping states into ongoing vs terminal, which enhances understanding. However, it largely repeats the schema's state descriptions, so it does not dramatically exceed the baseline for high coverage.

    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 states a specific verb (report) and resource (AI Coach mascot activity) and explains exactly what happens: the mascot shows your current doing via animation and speech bubble. It distinguishes itself from siblings by focusing on activity reporting rather than notes, dashboard, or care operations.

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

    Usage Guidelines5/5

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

    It gives explicit guidance on when to use each state: 'thinking'/'working' when starting a task, 'waiting' when needing the user, 'succeeded'/'failed' when finishing. It also notes that repeating the same state is harmless, so it can be called on every step, which prevents unnecessary calls and clarifies the intended frequency.

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

  • Behavior5/5

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

    The description discloses all critical behavioral traits beyond the annotations: the write can take seconds due to user confirmation, it may return note_confirmation_denied, it handles conflicts via expectedModifiedAt, and it supports idempotency via idempotencyKey. It aligns with idempotentHint=true and readOnlyHint=false without contradiction. This is exemplary disclosure.

    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 information-dense but well-organized. It starts with the core purpose, then groups related details (modes, group, conflict handling, confirmation). Every sentence earns its place; nothing is redundant or filler.

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

    Completeness5/5

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

    Despite the tool's complexity (8 params, 3 modes, conflict handling), the description covers all important aspects: mode selection, group behavior, conflict avoidance, idempotency, and the user-confirmation side effect. The output schema exists to cover return values, so nothing essential is missing here.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

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

    Schema coverage is 100%, so the baseline is 3. The description adds value by explaining how mode interacts with noteId and group, the meaning of expectedModifiedAt for conflict prevention, and the idempotencyKey's purpose. It clarifies the workflow that ties parameters together, lifting it above baseline.

    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 states a clear action set (create, replace, append) on a specific resource (AI Coach memo), and explicitly distinguishes it from sibling tools like read, delete, and list. It also clarifies the memo is a Markdown file on the user's machine, making the purpose unambiguous.

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

    Usage Guidelines5/5

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

    The description gives explicit guidance on when to use each mode (create, replace, append), including the strategy for large bodies. It also explains the conditional use of expectedModifiedAt for safe updates and warns about the user confirmation delay and note_confirmation_denied result. This is actionable and leaves no ambiguity about tool selection.

    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

ai-coach-mcp MCP server

Copy to your README.md:

Score Badge

ai-coach-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/aic0t/ai-coach-mcp'

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