Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation4/5

    search and recall are similar but their outputs differ (index vs full text). build_context, recent, and remember are clearly distinct. No two tools appear to do the exact same thing.

    Naming Consistency3/5

    Naming mixes single verbs (search, recall, remember), a verb_noun (build_context), and an adjective (recent). All lowercase and readable, but no consistent pattern.

    Tool Count5/5

    5 tools is well-scoped for a memory vault: search, recall, context building, recent listing, and writing. Each tool earns its place without redundancy.

    Completeness4/5

    Core operations are covered: create (remember), search, retrieve, list, and context expansion. Missing update/delete but these may be out of scope for a memory vault.

  • Average 3.3/5 across 5 of 5 tools scored. Lowest: 2.5/5.

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

    • 3 of 3 community issues answered or closed in the last 6 months
    • 576 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 Apache 2.0.

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

    There are no annotations, and the description does not disclose any behavioral traits such as side effects, permissions, or rate limits. It only states it lists notes, implying a read operation, but without explicit statement of safety or side effects.

    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 concise sentence, front-loaded with the action and object. It is appropriately sized for the tool's simplicity, containing no fluff or irrelevant details.

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

    Completeness2/5

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

    Given the lack of output schema and annotations, the description is incomplete. It does not explain the parameter 'n', nor what the returned list contains (e.g., note titles, IDs, timestamps). It also doesn't specify any edge cases or behavior when no notes exist.

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

    Parameters1/5

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

    The schema has one parameter 'n' with a default, but neither the schema nor the description explains its meaning or purpose. Users are left to guess whether 'n' is a count, an offset, or something else.

    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 lists the most-recently-modified notes, using the verb 'list' and specifying the resource 'notes'. It is distinct from siblings like search or recall, so the purpose is unambiguous.

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

    Usage Guidelines1/5

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

    The description does not mention when to use this tool compared to alternatives such as search or recall. It provides no usage context or criteria for selecting this tool over others.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action (returning neighbors) but does not specify whether it is read-only, side effects, error handling, or output structure. The minimal 'return' phrasing implies a read operation, but no additional context is given.

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

    Conciseness4/5

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

    The description is a single sentence, highly concise and front-loaded with the essential action. However, it is borderline too sparse, lacking any elaboration that might justify additional detail. It earns a high conciseness score for efficiency, but not a 5 due to under-specification.

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

    Completeness2/5

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

    For a simple tool with one parameter and no output schema, the description is minimal. It does not explain the return format, clarify the meaning of '1-hop', or provide any usage context. Given the existence of sibling tools, the description is incomplete because it offers no guidance on when this tool is appropriate.

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

    Parameters2/5

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

    The input schema has one required parameter (permalink) with 0% schema description coverage. The description does not explain what permalink is, its format, or its role in the operation. Since coverage is low, the description was expected to compensate but fails to add any semantic value 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?

    The description clearly states the tool returns a note plus its 1-hop linked neighbors, using a specific verb ('Return') and resource ('note') with a defined scope. It distinguishes from sibling tools like search, recall, recent, and remember, which serve different purposes.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, intended scenarios, or exclusions, leaving the agent to infer based solely on the function description.

    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 mentions 'redacted, non-lossy' which hints at behavior but does not clarify side effects or prerequisites. No annotations are provided, so the description partially discloses behavior.

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

    Conciseness3/5

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

    The description is a single short sentence, which is concise but arguably too brief for a tool with three parameters and no schema descriptions.

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

    Completeness2/5

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

    Given the lack of output schema and annotations, the description is insufficient. It does not explain the return value, error conditions, or what 'vault' means, leaving gaps in context.

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

    Parameters1/5

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

    The description adds no information about the three parameters (text, title, tags). With 0% schema coverage, the description fails to compensate, leaving the agent with no guidance on parameter meaning.

    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 'Persist a distilled memory' and the resource 'into the vault', using a specific verb and resource that distinguishes it from sibling tools like recall, search, etc.

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

    Usage Guidelines3/5

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

    The description implies usage for persisting processed memories but gives no explicit guidance on when to use vs alternatives like build_context or recall.

    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?

    With no annotations, the description carries the behavioral burden and discloses meaningful runtime behavior: reranking is enabled by default with disable paths, current-project memories are boosted and non-lossy, and `scope="project"` hard-limits results. It does not describe output shape or error behavior, but the disclosed details go beyond a generic retrieve statement.

    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 compact and front-loaded with a one-sentence purpose statement followed by only high-value behavioral details. Nothing is wasted; every sentence earns its place.

    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 retrieval tool with no output schema and no annotations, the description gives enough context to select, invoke, and scope the tool correctly: full text returned, k, rerank default, project fallback, and strict project scoping. Minor gaps remain in the available `scope` values and relationship to `search`.

    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 explain parameters; it explains `project`, `scope`, and `rerank` meaningfully, and `query`/`k` are covered by the 'search' and 'top-k' phrasing. It does not enumerate possible `scope` values beyond the `"project"` example, but the added semantic value is substantial.

    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 opens with a specific verb-plus-resource statement: it searches then hydrates the top-k notes' full text. This clearly indicates a retrieval/recall operation on memory notes, though it does not explicitly contrast itself with the sibling `search` tool.

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

    Usage Guidelines2/5

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

    The description provides detailed scoping guidance for `project` and `scope`, but no explicit when-to-use or when-not-to-use guidance relative to siblings like `search`, `recent`, or `build_context`. The usage context must be inferred from the niche described.

    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?

    With no annotations, the description carries full behavioral disclosure. It informs about default reranking and how to disable it (via env var or parameter), the boosting behavior for current project's memories (non-lossy), the fallback to server's working directory, and the hard limiting effect of scope='project'. These are significant behavioral details beyond the schema.

    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 composed of three sentences, starting with a clear purpose and output. The additional sentences provide necessary behavioral context without excessive verbosity. It is slightly dense but well-structured and front-loaded.

    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 absence of an output schema and annotations, the description adequately outlines the return format (id+snippet index) and key behaviors. Missing details include the meaning of 'k' and possible values for 'scope' beyond the special 'project' case. Overall, it is sufficient for an agent to invoke the tool reliably, though not exhaustive.

    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 explain parameters. It explains project (target another project, else working directory), scope (hard-limits to project), and rerank (boolean, default true). It does not mention 'k', which likely controls the number of results, but query is self-evident. Coverage is good but incomplete for one parameter.

    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 performs 'hybrid search over memory' and returns a 'compact id+snippet index'. This is a specific verb+resource+output that distinguishes it from siblings like 'recall' and 'recent' by emphasizing the hybrid search nature and the indexed output.

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use this tool vs alternatives such as recall, recent, or build_context. The description focuses on parameter behavior (project scoping, reranking) but does not state exclusions or recommend usage contexts. The mention of 'Recall prefers your current project's memories' is confusingly worded and does not serve as clear usage guidance.

    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

agentcairn MCP server

Copy to your README.md:

Score Badge

agentcairn 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/ccf/agentcairn'

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