Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation3/5

    Many tools share adjacent responsibilities (recall vs memory search vs graph recall_with_links; procedure vs skill; think vs conflict), so an agent could easily pick the wrong one. The extensive descriptions provide routing guidance, but the boundaries are subtle enough that selection requires reading deeply.

    Naming Consistency3/5

    Names are uniformly lowercase single words, but they mix bare verbs (recall, remember, correct, think) with noun subsystem labels (memory, graph, session, skill, pack). There is no consistent verb_noun pattern, though the names remain short and readable.

    Tool Count3/5

    With 20 tools, the server sits at the heavy end of a reasonable range. Because many tools are actually multi-action dispatchers, the effective surface area is considerably larger than 20, which makes the toolset feel sprawling.

    Completeness4/5

    The surface is remarkably thorough: memory CRUD, recall, maintenance, conflicts, triggers, sessions, temporal queries, graph operations, procedures, skills, tasks, packs, and stats are all covered. Minor gaps remain (no deletion for procedures/skills, no category member removal), but core workflows have no dead ends.

  • Average 4.5/5 across 20 of 20 tools scored. Lowest: 3.2/5.

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

    • 3 of 4 community issues answered or closed in the last 6 months
    • 35 commits in the last 12 weeks
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • 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

  • Behavior1/5

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

    Annotation Contradiction: The description explicitly includes 'record_unlink: remove a record-to-record link' and auto_relate persistence, both of which are mutating/destructive operations, yet annotations declare destructiveHint=false. This directly contradicts the structured metadata, so the description fails to align with the tool's actual behavioral profile.

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

    Conciseness4/5

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

    The description is well-structured with a summary line, a bulleted action list, and a grouped args section. It is front-loaded and scannable despite its length. The length is justified by the tool's multi-action nature and 19 parameters, though some repetition could be trimmed.

    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 high complexity (12 actions, 19 parameters) and the presence of an output schema, the description covers most actions and parameter groupings adequately. However, it lacks guidance on when to prefer this tool over sibling tools, and it does not describe return-value behavior or error conditions, leaving the overall context incomplete.

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

    Parameters3/5

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

    Schema description coverage is 0%, so the description must compensate. It groups parameters by action (source_rid/target_rid/link_type for record_link, direction for linked_records, dry_run/max_edges for auto_relate, query/top_k/expand_links for recall_with_links), which adds useful meaning. However, many legacy parameters (weight, days, namespace, pattern, limit) are only listed without semantic explanation, leaving gaps.

    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 identifies the tool as 'Knowledge graph operations' and enumerates 12 distinct actions with specific verbs and targets (relate, edges, link, search, profile, depth, auto_relate, record_link, record_unlink, linked_records, recall_with_links). This makes the tool's scope and capabilities immediately clear and distinguishes it from sibling memory/recall 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 description provides action-specific usage details, such as 'Set dry_run=False to persist' for auto_relate, direction values for linked_records, and 'legacy' labels for relate/link. However, it does not explicitly state when to use this tool versus alternatives like recall or memory, nor does it provide exclusion criteria.

    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?

    The description explains each action's effect (e.g., 'reset' returns to seed state). The annotations include destructiveHint=true, which aligns with the 'reset' action. However, it does not explicitly state that 'list' and 'members' are read-only, nor does it disclose authorization requirements or rate limits.

    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 well-structured: a one-line purpose, bulleted actions, clear examples, and an args list. Every sentence adds value, and it is front-loaded with the core purpose. No unnecessary text.

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

    Completeness4/5

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

    Given the presence of an output schema, the description does not need to explain return values. It covers all parameters and actions adequately. However, it could mention the output format or how the tool integrates with conflict detection, though this is not essential.

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

    Parameters5/5

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

    The description adds substantial meaning beyond the input schema, which has 0% coverage. It explains each parameter in detail: action options, category_name requirement, members format, and source values. This fully compensates for the lack of schema descriptions.

    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 it's for 'Substitution categories for conflict detection' and lists specific actions (list, members, learn, reset). However, it does not differentiate from sibling tools like 'conflict' or 'memory', which might have overlapping functionality.

    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 explicit actions and examples for each, giving clear usage context. However, it does not specify when NOT to use this tool or mention alternative tools for similar tasks, leaving some ambiguity.

    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 indicate destructiveHint=true, matching the description of conflicts being managed and resolved. The description adds context about auto_resolve's dry_run flag for previewing persistence, which is not in annotations. 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.

    Conciseness4/5

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

    The description is structured with actions listed and parameters grouped. It is somewhat lengthy but each section adds value. The main purpose is front-loaded. A more streamlined format could improve conciseness.

    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 10 parameters, 0 required, and no schema descriptions, the description provides adequate context for each action and parameter. The output schema exists but is not shown, so return values are not described. Overall, it covers the essential information for tool usage.

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

    Parameters4/5

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

    Schema description coverage is 0%, so the description must compensate. It groups parameters by action and explains their roles (e.g., strategy for resolve, dry_run for auto_resolve). This adds meaning beyond the schema's default values and types, though individual parameter details are brief.

    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 manages memory conflicts and lists specific actions (list, get, resolve, reclassify, auto_resolve). It distinguishes itself from sibling tools by its unique function. The purpose is clear but could be more concise.

    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 explicit guidance for each action, e.g., listing with optional status filter and resolving with strategies. It mentions the auto_resolve action for v0.8.0+ and dry_run for previewing. While it doesn't explicitly state when not to use, it gives sufficient context.

    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?

    Adds behavioral context beyond annotations, such as that feedback tunes future retrieval, chain_head returns the newest revision, and feedback was moved from recall. Annotations (readOnlyHint false) are consistent with mutation actions described.

    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?

    Structured with a main sentence and bullet list of actions; front-loaded with purpose. Some redundancy (e.g., repeating 'action' in each bullet) and length, but organized.

    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 complexity (14 parameters, many actions) and that output schema exists, the description covers actions well but lacks full parameter documentation. Missing descriptions for common parameters like limit, offset, memory_type, etc. reduces completeness.

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

    Parameters3/5

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

    With 0% schema description coverage, the description partially compensates by documenting key parameters for specific actions (namespace for chain_head, rid for history/feedback, feedback-related fields) but omits descriptions for many other parameters (limit, offset, sort_by, domain, etc.).

    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 explicitly states the tool manages individual memories and lists multiple specific actions (get, list, search, etc.), clearly distinguishing it from sibling tools like recall (e.g., notes feedback moved from recall, and chain_head vs recall).

    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 usage guidance for key actions: feedback should be called after using a recalled memory; chain_head should be used instead of recall for current/latest values. Lacks comprehensive when-not-to-use notes for other actions.

    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 description discloses the dual nature of the tool (read/write), the trait names and ranges, and the effect of 'recompute'. Annotations indicate idempotentHint=true, which aligns with set being idempotent. No contradiction, and adds value beyond annotations.

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

    Conciseness4/5

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

    The description is structured with clear sections and bullet points for actions, traits, and args. It is somewhat long but well-organized. Every sentence adds value, though some redundancy exists (e.g., repeated trait names).

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

    Completeness4/5

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

    Given the presence of an output schema (not shown), the description need not explain return values. It sufficiently covers all input aspects, including the recompute flag. For a tool with 4 parameters and no schema descriptions, this is complete.

    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?

    With 0% schema description coverage, the description entirely compensates by listing all parameters, their types, defaults, and constraints (e.g., trait names, score range). Could mention default for action is 'get' but it's implied. Adequate for agent understanding.

    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 tool's purpose: 'AI personality traits derived from memory patterns.' It defines two distinct actions (get and set) with specific effects, and the tool name 'personality' aligns with the description. Different from sibling tools like 'memory' or 'recall'.

    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 explicitly explains when to use 'get' vs 'set' and mentions optional parameters like 'recompute'. However, it does not provide guidance on when NOT to use this tool or compare directly with sibling tools for decision-making.

    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 description comprehensively discloses behaviors beyond annotations: e.g., end 'closes session bookkeeping — it does NOT capture memories', and capture 'operates on the text, not on tracked-session state'. Annotations already show readOnlyHint=false, consistent with mutations. No contradictions. Could mention rate limits or permissions but still strong.

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

    Conciseness4/5

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

    The description is well-structured with a summary line, action bullet list, and parameter definitions. It is somewhat long but every sentence adds value. Minor redundancy: 'digest' action description includes parameter details repeated in the arg list, but acceptable.

    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 tool's complexity (17 parameters, 7 actions) and the presence of an output schema, the description covers all actions and parameters thoroughly, including edge cases like abandon_stale and gaps in digest. No significant gaps for an agent to invoke correctly.

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

    Parameters5/5

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

    With 0% schema description coverage, the description fully compensates by explaining each parameter's purpose per action, e.g., 'summary: For end — optional closing note. For capture — REQUIRED'. All 17 parameters are covered, providing critical context the schema lacks.

    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 states 'Session lifecycle' and lists seven actions (start, end, capture, history, active, abandon_stale, digest), clearly defining the tool's scope. It differentiates from sibling tools like remember/recall by focusing on session management rather than direct memory operations, though capture could overlap with remember; a clearer distinction would raise the score.

    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 explicit usage guidance for each action, e.g., 'Use at end of substantial work so the session leaves a trace' for capture, and 'Call this at conversation start instead of N separate recalls' for digest. It contrasts digest with separate recalls, but does not explicitly state when not to use session versus siblings.

    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 include destructiveHint=true, and description explains the in-place mutation and append-only revision history, providing sufficient behavioral context beyond annotations. No contradictions.

    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?

    Well-structured with clear sections, but slightly verbose (e.g., version/issue reference). Every sentence adds value; no wasteful repetition.

    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?

    Covers behavioral traits, parameter semantics, and use cases adequately. Output schema exists and is not required to be explained. Could mention return behavior but not necessary.

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

    Parameters5/5

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

    Schema coverage is 0%, but description fully compensates with detailed Args section: explains 'rid', 'reason' (required, recorded for audit), 'new_text', 'new_importance', 'new_valence', and 'metadata_merge' with defaults and constraints.

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

    Purpose5/5

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

    Description clearly states the tool corrects an existing memory in-place with revision history. It provides a concrete example ('Actually, we're using Python 3.12...') and distinguishes from siblings by noting in-place mutation vs tombstone approach.

    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 'WHEN TO USE' section explicitly tells when to use (user corrects a recalled fact) with an example. Lacks explicit when-not-to-use, but the context is clear and sibling tool list implies alternatives.

    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 indicate destructiveHint=true and idempotentHint=true. The description adds context like 'permanently' and 'tombstone', reinforcing the irreversible nature. This is consistent and adds value beyond the annotations, though the annotations already convey the key safety profile.

    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 one-sentence purpose, a usage block, and parameter list. Every sentence carries essential information, and it is front-loaded for quick scanning. No wasted 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?

    Given the existence of an output schema and the tool's destructive nature, the description adequately covers the key aspects: purpose, usage, parameters, and alternatives. It could mention that forget is irreversible (already implied by permanent/tombstone), but annotations cover that. No major 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 coverage is 0%, so the description must compensate. It explains 'rid' as single memory ID and 'rids' as batch mode. However, it does not specify the format or source of memory IDs, which are necessary for invocation. The explanation is adequate but lacks depth.

    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 explicitly states the action: 'Permanently forget (tombstone) one or more memories.' It also distinguishes from the sibling tool 'correct', clarifying that 'correct' is preferred for updates, making the purpose specific and differentiated.

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

    Usage Guidelines5/5

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

    The description provides clear when-to-use guidance: when user explicitly asks to forget or when a memory is clearly wrong and correction isn't appropriate. It also explicitly names the alternative ('prefer `correct` over `forget`'), which is excellent decision support.

    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 description adds behavioral context beyond annotations: it explains that acknowledge/deliver/act/dismiss are marking operations, and prune has a dry_run mode to preview before persisting. Annotations already mark it as idempotent and non-destructive, and the description reinforces this with specifics like 'Set dry_run=False to actually persist'.

    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 front-loaded with the overall purpose, then uses bullet points for actions and arguments, making it easy to scan. It is concise but covers all necessary details. Minor redundancy: the args section repeats action and parameter names, but overall it is well-structured.

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

    Completeness4/5

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

    Given 6 parameters, multiple actions, and an output schema, the description is largely complete. It explains all actions and parameters, and the output schema fills any return-value gaps. Lacks mention of error conditions or prerequisites, but these are not critical for the agent's immediate use.

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

    Parameters5/5

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

    Schema has 0% description coverage, so the description bears the full burden. It thoroughly explains each parameter: action lists valid options, trigger_id is required for certain actions, trigger_type filters, limit for max results, dry_run and max_pending specifically for prune. This fully compensates for the lack of 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 clearly states the tool manages proactive triggers and bounded-backlog pruning. It lists specific actions (pending, history, acknowledge, deliver, act, dismiss, prune) that define the resource and operations, distinguishing it from sibling tools which cover different domains like memory or conversation.

    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 details each action's purpose (e.g., 'Get pending triggers', 'Mark trigger as seen'), which implicitly guides when to use each. However, it does not explicitly compare this tool to siblings or provide decision heuristics for choosing alternatives, which would elevate clarity further.

    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, idempotentHint=true, destructiveHint=false. The description adds context about the internal mechanism ('substrate logs every recall...') and the nature of the output (frequently-asked, poorly-answered queries), which enhances transparency beyond what annotations provide.

    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 reasonably concise, starting with the core purpose and then elaborating. It uses a bullet-like list for parameters. One minor point: the first sentence could be slightly more front-loaded, but overall it is efficient and well-structured.

    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?

    The tool has three parameters with defaults and an output schema. The description explains the tool's functionality, internal logging mechanism, and intended use case for proactive learning, which is fully adequate given the output schema provides return value details.

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

    Parameters5/5

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

    Schema description coverage is 0%, but the description compensates by explaining each parameter's semantics: min_count surfaces queries asked at least N times, max_avg_top_score filters by average best recall score, and limit caps results. This adds essential meaning beyond the schema's type and default values.

    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 tool's purpose as 'Surface knowledge gaps — frequently-asked, poorly-answered queries'. This is a specific verb-resource combination that distinguishes it from siblings like 'recall' and 'memory' which deal with storing or retrieving specific facts, while this tool identifies unknown areas.

    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 usage context: 'Use this to drive proactive learning: when the agent sees a gap, it can ask the user, fetch info, or note the limitation.' However, it does not explicitly exclude cases where this tool should not be used or mention alternative sibling tools such as 'stats' for similar analysis.

    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, destructiveHint=false, and idempotentHint=true. The description adds valuable context: 'Read-only — index maintenance moved to think(maintenance_op=...) in v0.10', which explains the tool's non-destructive nature and where related operations occur.

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

    Conciseness4/5

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

    The description is well-structured with clear sections for actions and arguments. It uses bullet points for readability, though it is slightly verbose in listing actions. Every sentence adds value, but it could be slightly tighter.

    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 tool's complexity (multiple actions, parameters, and an output schema), the description covers all necessary aspects: purpose, actions, parameter explanations, and behavioral notes. The output schema exists, so return values are not required in the description.

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

    Parameters5/5

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

    Despite 0% schema description coverage, the description thoroughly explains each parameter: 'action' with a list of valid values and their meanings, 'namespace' as a filter for stats, and 'max_rids' for audit_leak actions. This fully compensates for the schema's lack of 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 clearly states the tool is for 'Engine statistics, health check, learned weights, privacy/leak audit, and skill substrate counts'. It lists specific actions with distinct purposes, which differentiates it from sibling tools like 'memory' or 'recall'.

    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 mentions 'Read-only' and directs index maintenance to 'think(maintenance_op=...)' in v0.10, providing context on when to use this tool versus alternatives. However, it does not explicitly state when not to use it or name specific sibling alternatives.

    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 indicate readOnlyHint=false, destructiveHint=false, etc. The description adds behavioral context by explaining that procedures are stored, retrieved, and updated with effectiveness scores. It does not contradict annotations and provides additional details about the reinforcement mechanism.

    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 well-structured with sections (actions, examples, args). It is front-loaded with a clear purpose and uses bullet points and examples efficiently. Every sentence adds value without redundancy.

    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 tool has 10 parameters and an output schema, the description covers all necessary aspects: actions, parameter roles, examples, and defaults. The existence of an output schema reduces the need to describe return values. The description is complete for an agent to use effectively.

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

    Parameters5/5

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

    Schema description coverage is 0%, so the description must compensate. It does so excellently by listing each parameter with its purpose and conditions (e.g., 'text' is for learn, 'query' for surface, 'rid' for reinforce). This fully clarifies parameter semantics where the schema is silent.

    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 defines the tool as 'procedural memory' with three distinct actions (learn, surface, reinforce), each with specific purposes. This differentiates it from sibling tools like 'memory', 'remember', and 'recall', which might have different scopes or behaviors.

    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 explicit examples and explains when to use each action (e.g., 'learn' for storing, 'surface' for retrieval, 'reinforce' for updating effectiveness). It does not explicitly state when not to use the tool, but the clarity of actions and parameters effectively guides usage.

    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 mark this as destructive; the description adds behavioral context beyond annotations, noting persistence across sessions, priority ordering in list results, namespace isolation, and action-specific data requirements. It does not detail delete side effects (e.g., sub-task handling), but action-specific behavior is well covered.

    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 well front-loaded, uses simple headers for actions and valid values, and every sentence contributes operational guidance. There is no redundant fluff or repeated schema data; the Arg list is concise and structured.

    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 multi-action CRUD tool with 7 parameters and sparse schema descriptions, this is thorough: it covers all actions, parameter purposes, accepted enums for priority/status, namespace default, and the relation to session digest. The output schema exists, so return-value transcription is unnecessary.

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

    Parameters5/5

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

    Schema description coverage is 0%, so the description fully compensates by defining each parameter in context of accepted actions. It explains that title is needed for add, task_id for get/update/delete, status is filter-vs-update-value, and parent_id creates a sub-task tree. This is exactly the kind of semantic clarity an agent needs.

    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 opens with 'Substrate-backed task / chore store' and labels it 'a thin general-purpose to-do tracker,' clearly identifying the resource and domain. It enumerates concrete actions (add/get/list/update/delete) and thereby distinguishes this tool from sibling memory/skill utilities.

    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 gives strong context: tasks persist across sessions, are scoped by namespace, appear at session_digest time, and are used by future agents. However, it does not explicitly state when not to use this tool or name alternative sibling utilities, though the context is sufficiently 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 provide no safety hints (all false), so the description carries the burden. It discloses that writes go to the `skill_substrate` namespace, that entries are schema-validated at write time, and that `on_conflict` can reject or replace. This gives useful behavioral context beyond the annotations, though it doesn't cover every edge case like permissions or rate limits, which is acceptable for this tool.

    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 long but well-structured with a summary, action list, example, and Args section. It is not wastefully verbose; every section covers a necessary aspect of a complex multi-action tool. It loses one point because it could be slightly tightened, but overall it remains readable and front-loaded.

    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 multi-action tool with 14 parameters and zero schema descriptions, the description is comprehensive. It covers all actions, parameter semantics, validation rules, an example, and the sibling differentiation. Since an output schema exists, the lack of return-value details is acceptable. The agent has enough context to select and invoke this tool correctly.

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

    Parameters5/5

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

    Schema description coverage is 0%, but the description compensates fully. It lists every parameter with context: action values, skill_id format (dot-separated lowercase), body length constraints, applies_to rules (1–10 lowercase_underscore, no hyphens), skill_type enum, on_conflict options, and which params apply to which action. This adds meaning far beyond the bare 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 opens with a clear verb-resource statement: "Substrate-native agent skill catalog — define, surface, record outcomes." It also distinguishes itself from sibling 'procedure' by explicitly saying skills are structured catalog entries, not loose how-to memories. This leaves no doubt about what the tool does and how it differs from nearby tools.

    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 states when to use each action and provides an explicit alternative: "different from loose how-to memories (use `procedure` for those)." It also gives a concrete workflow example (define → surface → outcome) that teaches the agent when to invoke which action, making usage guidance highly actionable.

    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?

    Description discloses behavioral traits beyond annotations: bounded per namespace, oldest turns evict when max_turns exceeded, and 'encrypted'. Annotations only indicate destructiveHint=true and readOnlyHint=false, so the description adds significant 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 well-structured with actions listed in a bullet format and args explained clearly. Every sentence provides necessary information without redundancy.

    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 6 parameters, no schema descriptions, and an existing output schema (not detailed), the description covers all essential aspects: purpose, actions, parameters, and behavioral details. It is sufficiently complete for an AI 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.

    Parameters5/5

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

    Schema description coverage is 0%, but the description explains every parameter: action options, namespace purpose, role choices, content as verbatim text, max_turns as ring size, and limit for recent retrieval. This fully compensates for the lack of 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 clearly states it is a 'bounded encrypted working-memory ring buffer for conversation turns', distinguishing it from the 'remember' sibling. It lists three specific actions (record, recent, clear) with their purposes.

    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 contrasts with 'remember' and explains it is for short-horizon working memory and verbatim turns. While it provides clear context, it does not explicitly state when not to use this tool.

    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?

    It discloses destructive behaviors (uninstall removes rows, untrust revokes keys), write gating via YANTRIKDB_ENABLE_PACK_WRITES, down-weighting of pack memories, and embedder verification nuances. This goes far beyond the destructiveHint annotation, providing rich context about side effects and trust.

    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 well-structured with clear sections (READ ACTIONS, WRITE ACTIONS) and a concise Args list. It is densely packed with useful information without fluff; 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?

    The description covers all actions, parameters, environmental prerequisites, security model, and even edge cases like 'Does NOT override a hard dimension mismatch.' Given the tool's complexity, this is thorough, and an output schema exists to handle return details.

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

    Parameters5/5

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

    The Args section explicitly describes each parameter's purpose and permissible actions: 'path: Pack file path (inspect / install / mount)', 'pack_id: Pack identifier, e.g. "origin@1.0.0" (uninstall / unmount)', etc. With schema description coverage at 0%, this fully compensates and adds valuable constraints.

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

    Purpose5/5

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

    The opening line, 'Signed, portable memory bundles — inspect, install, and trust packs,' clearly identifies the tool's domain and operations. It distinguishes itself from sibling tools like 'remember' and 'skill' by focusing on external, signed memory bundles from other agents/vendors.

    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 explicitly separates READ ACTIONS (always available) from WRITE ACTIONS (operator-gated) and advises 'always inspect before you install.' It also explains the trust hierarchy (local memories outrank packs), but it doesn't explicitly contrast with alternative tools or state when not to use the tool.

    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, idempotentHint=true, destructiveHint=false, which align with the description's query-like actions. The description adds behavioral context beyond annotations by explaining that as_of excludes records after the given instant ('so you see the belief held then'), specifies the engine version, and notes that range returns oldest first. This enriches the agent's understanding without contradicting annotations.

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

    Conciseness5/5

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

    The description is well-structured with a clear summary line, an ACTIONS section explaining each mode, and an Args section detailing parameters. It is front-loaded with the main purpose, and every sentence contributes meaningful information—no fluff or redundancy. The density is justified by the tool's complexity.

    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 4 actions, 8 parameters, and an output schema (presumably defining return format), the description covers all essential aspects: purpose, action semantics, parameter formats, default behaviors, and routing guidance. It also discloses the engine version constraint for as_of. The presence of an output schema means return-value explanation is unnecessary, and the description sufficiently equips an agent to select and invoke the tool correctly.

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

    Parameters5/5

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

    Schema coverage is 0%, so the description carries full responsibility for parameter meaning. It meticulously explains each parameter: action (allowed values), days (threshold/look-ahead), limit (max results), namespace (optional filter), query (required for as_of, optional for range with behavior for given/omitted), as_of/since/until (formats including relative days), thus exceeding what the bare schema provides.

    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 clearly states 'Find stale or upcoming memories, recall the past, or scan a time window' with four named actions (stale, upcoming, as_of, range). It distinguishes from sibling tools like 'recall' by focusing on temporal queries and explicitly contrasts with similarity search for range queries.

    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?

    Provides explicit guidance for when to use each action. The range action is described as the surface for 'what happened tonight / this week, in what order' and explicitly routes period/sequence questions here, contrasting with similarity search. as_of is described as time-travel recall, and stale/upcoming have clear use cases.

    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?

    Given annotations only provide shallow hints (readOnlyHint=false, destructiveHint=false), the description carries the behavioral burden and does so thoroughly. It discloses side effects (consolidation, conflict scan, pruning, recalibration), the non-blocking incremental design, the slow pattern-mining option, dry-run behavior, and read-only last_cycle_only mode. This goes well beyond annotations and there is 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?

    Although lengthy, the description earns its length through structured sections (MODES, Args) and immediately front-loads the core purpose and operational guidance. There is no redundant filler; each sentence adds necessary information for correct invocation of a complex 19-parameter 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?

    The description is complete for the tool's complexity: it covers default behavior, alternative modes, per-parameter semantics, performance characteristics, read-only vs. mutating operations, and safe call frequency. Since an output schema exists, return-value details are not required. No meaningful gaps remain.

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

    Parameters5/5

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

    Schema description coverage is 0%, so the description must compensate. It does: the 'Args' section explains all 19 parameters, including defaults and semantic intent. The MODES section additionally documents maintenance_op's accepted values and behavior. This turns an effectively opaque schema into a usable interface.

    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: 'Run incremental cognitive maintenance — processes a small batch per call.' It clearly distinguishes the main behavior and further clarifies multiple modes (default, maintenance_cycle, last_cycle_only, maintenance_op), making the tool's purpose unambiguous even among sibling tools.

    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 explicitly states when to use it: 'DESIGNED TO BE CALLED OFTEN' and 'Running regularly (e.g. at end of conversation) gradually maintains the entire database without blocking.' It also explains the different modes and when each is appropriate. It does not explicitly contrast with sibling tools, but the intended call cadence and mode selection provide strong usage 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?

    Annotations already declare readOnly/idempotent/non-destructive, and the description adds meaningful behavior: recall excludes superseded records by default, semantic search always returns top_k, since/until filter before ranking, and hits may carry staleness warnings. It explicitly notes the read-only refactor and the order parameter's role as a re-sort, enriching the annotation profile without contradicting it.

    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?

    Long but densely organized under clear headings (MODES, ORDER, WHEN TO USE, QUERY, TRUST SIGNALS, Args). Every section adds operational value and nothing is redundant with the schema; the structure lets an agent fast-path to the relevant section.

    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 15-parameter tool with complex behavior, the description is complete: it explains modes, ordering, when to use alternatives, query quality, trust/staleness signals, and every parameter's meaning. The output schema exists, so return-value detail is not required, and the tool's only required param is fully specified.

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

    Parameters5/5

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

    Schema description coverage is 0%, so the description carries the full burden and succeeds: the Args section documents all 15 parameters with formats, defaults, and behavioral nuance (e.g., min_score_ratio trims the tail, include_superseded for archaeology, since/until accepted formats). The query guidance ('5-10 words, not a keyword list') is especially valuable.

    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: 'Search memories by semantic similarity, or refine low-confidence results.' It clearly distinguishes the tool's two modes and contrasts it with sibling tools like memory(action='chain_head') and temporal(action='range'), leaving no ambiguity about what recall does.

    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?

    A dedicated 'WHEN TO USE' section gives explicit triggers (conversation start, references to past decisions, low confidence) and names alternatives with conditions: prefer memory(action='chain_head') for current/latest and temporal(action='range') for time-window questions. It even instructs to reinforce recalled memories via memory(action='feedback').

    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?

    Despite minimal annotation detail, the description richly discloses behavior: exact-once write semantics with idempotency_key and version-specific engine behavior, batch key scoping, error conditions on key mismatch, backdating semantics for created_at, and the warning about temporal history distortion. This adds significant context beyond the annotations, which only state readOnlyHint=false and related booleans.

    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 long but every sentence earns its place, covering use cases, modes, parameter semantics, and version-specific behaviors. It is front-loaded with the purpose and WHEN TO USE, uses clear headers, and includes compact examples. The density is justified by the tool's complexity (14 parameters, 3 modes).

    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 complex write tool with 14 parameters and no required fields, the description provides comprehensive guidance: all parameters explained, mode selection, idempotency details, backdating semantics, and version notes. The presence of an output schema means return values need not be described, and the description handles the remaining context thoroughly.

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

    Parameters5/5

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

    With 0% schema description coverage, the description fully compensates by explaining every parameter in meaningful terms: types, defaults, value ranges (importance 0-1, valence -1 to 1), example values, and specific usage guidance (e.g., 'Be specific and searchable' for text). It also provides importance bands and created_at format options, which the schema does not convey.

    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 clear, specific action: 'Store one or more memories in persistent cognitive memory.' It distinguishes between single, batch, and draft modes, which are the primary variants, and explicitly contrasts with sibling tools like recall and forget by defining when to proactively store. This goes well beyond a vague verb+noun, fully differentiating it from siblings.

    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?

    Provides explicit WHEN TO USE guidance: 'Call proactively whenever the conversation reveals something worth remembering...' and negative guidance: 'Do NOT store ephemeral task details, code snippets, or git-derivable info.' It also includes usage patterns (SINGLE, BATCH, DRAFT) and an end-of-session auto-capture pattern, giving clear context and exclusions.

    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

yantrikdb-mcp MCP server

Copy to your README.md:

Score Badge

yantrikdb-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/yantrikos/yantrikdb-mcp'

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