Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool targets a clearly distinct aspect of code analysis: call sites, call edges, circular imports, dead symbols, endpoints, file info, impact analysis, project overview, note-taking, orphan files, recall, file recording, reindexing, search, stale index, and sync. Even similar tools like dead_symbols vs orphans and note vs record vs recall are differentiated by scope and purpose.

    Naming Consistency5/5

    All tools follow a consistent 'cerebro_' prefix with snake_case naming (e.g., cerebro_callers, cerebro_dead_symbols). The second part is either a noun (callers, cycles) or a verb (get, search), maintaining a predictable pattern throughout.

    Tool Count5/5

    With 16 tools, the server covers a comprehensive set of code intelligence operations without being overly numerous. Each tool serves a specific purpose in the workflow of understanding and navigating a large codebase, fitting well within the typical 3-15 range for focused servers.

    Completeness4/5

    The tool set covers core code analysis needs: dead code detection, call graphs, dependency analysis, search, project overview, and knowledge persistence. Minor gaps include lack of direct file content retrieval or file listing, but the server's focus on precomputed index data means these are reasonable omissions.

  • Average 4/5 across 16 of 16 tools scored. Lowest: 3.2/5.

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

    • No community issues in the last 6 months
    • 16 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

  • Behavior3/5

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

    No annotations provided, so description bears all behavioral burden. It tells it's a write operation that persists across sessions, but doesn't clarify if overwriting occurs, permissions required, or return value. With output schema existing but not referenced, transparency is moderate.

    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-load purpose and usage guidance, with no wasted words. Very concise and efficient.

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

    Completeness2/5

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

    Given 3 parameters, no annotations, and sibling tools, the description is incomplete: it omits parameter explanations, behavioral details like idempotency, and any mention of output. The existing output schema doesn't compensate for missing behavioral context.

    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?

    Schema coverage is 0%, yet description only explains 'summary' (1-3 dense sentences). 'path' and 'model' parameters are undocumented, leaving their meaning and usage ambiguous. Only partial help for one parameter.

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

    Purpose4/5

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

    The description clearly states the tool's purpose: storing an English understanding of a file for reuse. It uses a specific verb ('store') and resource ('English understanding'), and implicitly distinguishes from sibling read tools like cerebro_get and cerebro_search by focusing on recording summaries.

    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 gives when to use (to avoid re-analysis) and format guidance (1-3 dense sentences), but lacks explicit when-not-to-use or mention of alternatives like cerebro_note. It provides clear context but no exclusions.

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

  • Behavior3/5

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

    With no annotations, the description carries the burden. It discloses that framework entrypoints are listed separately, indicating behavioral nuance. However, it does not address safety, permissions, or side effects, which are expected for a listing 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?

    Two sentences, each adding value. Front-loaded with purpose and nuance. Could be improved by mentioning the parameter, but overall efficient.

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

    Completeness3/5

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

    For a simple list tool with one optional parameter, the description explains the primary behavior and a key nuance. However, the missing parameter explanation and lack of output format details (despite output schema existing) leave gaps.

    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 'prefix' with 0% description coverage, and the description fails to mention or explain it. The agent has no guidance on how to use this 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 uses a specific verb 'List' and resource 'code files that nothing imports', clearly identifying it as dead-code detection. It distinguishes from siblings by noting that framework entrypoints are handled separately.

    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 finding orphan files but does not explicitly state when to use this over related tools like cerebro_dead_symbols or cerebro_stale. No when-not-to-use or alternative guidance is provided.

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

  • Behavior3/5

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

    No annotations are provided, so the description carries the full burden. It describes the output (stale items) but does not disclose whether the tool is read-only, requires permissions, or has side effects. The name 'stale' suggests a read operation, but this is implicit.

    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 that conveys the core purpose. It is front-loaded and concise, though slightly verbose with 'What the index no longer trusts'. It 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?

    Given the existence of an output schema, the description adequately explains what 'stale' means: files changed/added/deleted since last reindex and summaries with changed source files. This covers the main categories without needing to detail return format.

    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?

    There are no parameters, so schema coverage is 100%. With 0 parameters, the description does not need to add param info, and it appropriately focuses on the output.

    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 explains that the tool returns items the index no longer trusts, specifically files changed/added/deleted on disk and summaries with changed source files. It clearly states what it does, though the verb 'trust' is somewhat abstract and it doesn't explicitly differentiate from sibling tools like 'cerebro_reindex' or 'cerebro_sync'.

    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?

    There is no guidance on when to use this tool versus alternatives. No comparison with sibling tools (e.g., 'cerebro_reindex' for reindexing) or conditions for invocation.

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

  • Behavior3/5

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

    With no annotations, the description carries full burden. It discloses ranking behavior, inclusion of keyword/symbol matches, and that it returns paths. However, it does not mention index prerequisites, error handling, or whether the tool is read-only.

    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: first clearly states purpose, second adds behavioral details and output guidance. No superfluous words, front-loaded with core information.

    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 an output schema exists, the description adequately covers purpose, query behavior, and output relationship with cerebro_get. It could be more complete by mentioning index dependency or no-results behavior, but it is sufficient.

    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 description must compensate. It explains that the query parameter accepts natural language phrases or keywords/symbols. The limit parameter is not described, but its default value and type partially mitigate the gap.

    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 finds relevant files and distinguishes it by mentioning semantic ranking and keyword/symbol matches. It also hints at its role in a two-step process with cerebro_get. However, it does not specify the types of files (e.g., code, docs) or contrast directly with other cerebro 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 implies usage for semantic or keyword file search and notes that results feed into cerebro_get. It does not explicitly state when to avoid this tool or offer alternatives among the sibling tools like cerebro_calls or cerebro_endpoints.

    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, description carries full burden. It clearly states the tool is read-only and lists only name-resolved internal calls. No contradictions; behavior is well disclosed for a simple listing tool.

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

    Conciseness5/5

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

    Single sentence front-loaded with the verb 'List', no redundant information. Every word is informative.

    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 and the tool's simple nature (one parameter, list function), the description is mostly sufficient. It could mention expected file types or error conditions, but is adequate for use.

    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?

    Schema coverage is 0%, and description does not directly explain the 'path' parameter. Although the context implies path is a file, no details about format, accepted paths, or restrictions are given.

    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 lists internal function/method calls for a file (outgoing call edges), and explicitly excludes external library calls. This distinguishes it from sibling tools like cerebro_callers (likely incoming) and cerebro_map.

    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?

    No explicit when-to-use or alternative recommendations. The description implies use when internal call edges are needed, and not when external calls are desired, but does not name specific sibling tools for that case.

    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?

    No annotations are provided, so the description bears full responsibility. It explicitly discloses the heuristic nature and warns about dynamic access and reflection causing false positives, adding important behavioral context beyond a mere listing.

    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, front-loaded with the core purpose, and contains no fluff. Every sentence adds value, including the comparison and the caution.

    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?

    The description adequately explains what the tool does and its limitations. The presence of an output schema reduces the need to describe return values. However, it omits any explanation of the single input parameter 'prefix', leaving a gap in completeness.

    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 input schema has one parameter 'prefix' with a default but no description. Schema description coverage is 0%. The description does not mention the prefix parameter or explain its purpose, so it adds no 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?

    The description clearly states it lists unused-export candidates (functions/classes/methods) at the symbol level, and explicitly distinguishes from the sibling tool 'cerebro_orphans' which works per-file. This provides a specific verb and resource with differentiation.

    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 notes that the results are a heuristic and warns to confirm before deleting, offering caution about usage. It also compares to 'cerebro_orphans' to indicate when this tool is appropriate. However, it does not exhaustively list when to use or not use this tool versus all siblings.

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

  • Behavior3/5

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

    No annotations are provided, so the description carries full burden. It describes that the tool recalls past notes, can search by query or return most recent, and implies read-only behavior. However, it lacks details on return format, pagination, or limits, making the behavioral disclosure adequate but not rich.

    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 concise sentences, front-loaded with the purpose. Every sentence is necessary and valuable, with 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 presence of an output schema, the description need not detail return values. It covers core functionality (searching, recent notes) and parameters adequately. However, the role of 'limit' is not clarified, leaving a minor completeness gap for a 2-parameter tool.

    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 explains the 'query' parameter (search by meaning, empty for recent) but does not explicitly describe 'limit' (only implied). This adds meaning beyond the schema but leaves a gap for the limit 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 verb 'recall' and the resource 'decisions/rules/gotchas recorded by past sessions'. It distinguishes from siblings like 'cerebro_note' (record) and 'cerebro_search' (broader search) by specifying a unique use case: recall before re-deriving.

    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 says to use it 'BEFORE re-deriving them', providing clear context. It also explains how to use it: pass a query or leave empty for recent notes. However, it does not explicitly state when not to use it or compare to alternatives, though siblings are listed.

    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?

    Discloses incremental processing, but lacks details on safety, authentication, or side effects (e.g., index lock).

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

    Conciseness5/5

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

    Two concise sentences, front-loaded with main action, 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?

    Covers main behavior and optional parameter; with output schema, return values are covered, but could mention if index refresh is blocking or async.

    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?

    Clarifies that paths limits scope of reindex, adding value over schema's default null; but doesn't specify format or allowed 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?

    Clearly states verb 'Refresh' and resource 'static index', specifies incremental processing and optional path limit, distinguishing from search/retrieval siblings.

    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?

    Provides context for using paths and incremental nature, but no explicit when-to-use or when-not-to-use compared to 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?

    With no annotations, the description carries the full burden. It describes the tool as 'cheap' (implying low cost) and outlines output content, implying a read-only, non-destructive operation. No contradictions, but could detail any side effects or permissions.

    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, consisting of two sentences that convey purpose and usage guidance without any fluff. It is front-loaded with the most important information.

    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 tool has an output schema (so return values are covered), one optional parameter, and many sibling tools, the description is mostly complete. The only gap is the lack of explanation for the 'top' parameter, but overall it provides adequate context for selection and usage.

    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?

    Schema coverage is 0%, and the description does not explain the 'top' parameter beyond its default. The parameter is somewhat self-explanatory as a limit, but the description should have clarified its meaning, especially given the low schema 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 clearly states the tool provides a 'whole-project overview' with specific outputs: file/language counts and modules ranked by dependency centrality. It also distinguishes itself by recommending it as the first call in a new session, differentiating from 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 says 'Call this FIRST in a new session instead of exploring folders,' giving clear when-to-use guidance. However, it does not explicitly mention when not to use it or list alternatives, but the directive is strong enough.

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

  • Behavior3/5

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

    No annotations provided. The description discloses that the tool is name-resolved and may include same-named symbols, which is a transparency about potential false positives. However, it does not mention read-only nature, performance, or auth requirements.

    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 concise sentences: first defines functionality with qualifiers, second provides usage advice. Every sentence adds value with no waste.

    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?

    The description covers purpose, usage, and a key behavioral detail (name resolution). An output schema exists, so return values need not be explained. Might lack details on handling of classes vs functions, but overall sufficient for a one-parameter tool.

    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 adds meaning by explaining that the 'name' parameter is used as a symbol name to find call sites. It clarifies the purpose of the single parameter beyond the schema's title.

    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 finds every call site of a function/method/class by name, specifies scope (across repo), and notes it's name-resolved. This differentiates from sibling tools by focusing on callers of a symbol.

    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 advises 'Use to see who actually uses a symbol before you change it,' giving a clear use case. It does not explicitly contrast with sibling tools like cerebro_calls or cerebro_impact, but the context implies when to use.

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

  • Behavior3/5

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

    No annotations are provided, so the description must fully convey behavior. It states the tool finds cycles and returns members, which suggests a read-only analysis. However, it doesn't disclose potential performance impact or scope (e.g., entire codebase).

    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 no fluff. First sentence explains the action and purpose, second clarifies the output. Every word 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?

    An output schema exists, so the description doesn't need to detail return format. However, the description is brief and could benefit from specifying what constitutes a cycle or how results are structured, but it's adequate given 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?

    There are no parameters, so schema coverage is 100%. The description does not need to add parameter details. Baseline for zero parameters is 4, indicating no issues.

    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 finds circular import groups, which is a specific verb-resource combination. It distinguishes from sibling tools by focusing on cycles, while others handle calls, dead symbols, etc.

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

    Usage Guidelines4/5

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

    The description implies usage for identifying architecture smells ('worth breaking'), but does not explicitly state when to use or not use this tool over alternatives. Sibling tools are listed but no comparison is given.

    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?

    No annotations are provided, so the description carries full burden. It discloses key behaviors: returns cached data (with staleness flag) and does not read the file. It does not mention permissions, rate limits, or side effects, but the read-only nature is implied.

    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 one sentence that efficiently conveys the tool's purpose, key outputs, and a critical behavioral constraint (no file read). No unnecessary words, perfectly 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 low complexity (one parameter, no annotations) and presence of an output schema, the description is complete enough for an agent to select and invoke the tool correctly. It could mention prerequisites like file existence or permissions, but not essential.

    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 only parameter 'path' has 0% schema description coverage. The description does not elaborate on the path format, restrictions, or example values. However, the parameter name and tool context make its purpose obvious, so the description adds minimal extra 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 retrieves cached summary (with staleness flag), defined symbols, and dependency edges for a file, emphasizing it does NOT read the file. This distinguishes it from sibling tools like cerebro_read (if it existed) or other cerebro tools that might read file contents.

    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 this tool is used when you need cached metadata about a file without performing a read. It provides clear context but does not explicitly state when not to use it or mention alternatives among the many sibling tools.

    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 provided, the description carries the full burden of behavioral disclosure. It accurately describes the tool's operation (finding transitive imports), which is a non-destructive analysis. It adds value beyond the schema by explaining the concept of transitive impact.

    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, zero waste. Every word contributes to understanding the tool's purpose and usage.

    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 tool's simplicity (one parameter, output schema exists), the description is largely complete. It explains the purpose, usage scenario, and the nature of results (files that import the path). The output schema presumably covers return structure, so this is adequate.

    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 provides context for the 'path' parameter by explaining it is the file whose imports are traced. However, it lacks details on format, examples, or constraints, so it only partially compensates.

    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 finds files that directly or indirectly import a given path, using the metaphor 'transitive blast radius'. This specific verb+resource pairing distinguishes it from siblings like cerebro_callers or cerebro_map.

    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 says 'Use before changing a widely-used file to see what could break.' This gives clear context for when to use the tool, though it does not mention when not to use or name 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?

    With no annotations, the description carries full burden and discloses key behaviors: reindexes only affected files, works across nested repos, and catches specific external changes. Additional details like side effects or prerequisites are not mentioned.

    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, no wasted words, front-loaded with primary purpose. Highly concise and 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?

    For a zero-parameter tool with an output schema, the description is fairly complete, covering purpose, triggers, and behavioral scope. Minor omission of prerequisites or error conditions.

    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?

    No parameters exist; the description adds value by explaining the tool's purpose and context beyond the empty schema. Baseline for zero params is 4.

    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 detects external changes and reindexes affected files, using specific verbs and resource. It distinguishes from siblings like cerebro_reindex by focusing on syncing external changes.

    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 clear context for when to use (after external changes like branch switch, git pull, edits), but does not explicitly state when not to use or list 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?

    No annotations provided, so description carries full burden. It implies read-only behavior ('list', 'search') and does not mention side effects. While not exhaustive, it is transparent enough for safe usage.

    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 no wasted words. First sentence states functionality, second provides usage and purpose. Highly efficient.

    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 simple structure (one optional param, output schema present), the description is complete. It explains what the tool does, how to use it, and the problem it solves, without needing details on return values.

    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 0%, but the description fully explains the 'query' parameter by stating it can search by path, method, or handler and gives concrete examples, compensating for the schema gap.

    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 backend HTTP endpoints and allows searching by path, method, or handler. It distinguishes itself from sibling tools by focusing on endpoint discovery.

    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 clear usage context with search examples (e.g., 'POST carts') and answers the question 'where is this endpoint handled?'. Lacks explicit when-not-to-use or alternative references, but the examples and purpose are sufficiently directive.

    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?

    No annotations provided; description fills the gap by explaining the recording behavior and future retrieval via cerebro_recall. Simple write operation, transparent about purpose and content format.

    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?

    Concise and front-loaded: states purpose, gives examples, provides usage guidance. Every sentence adds value with no 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 presence of output schema, description covers all needed aspects: purpose, usage context, parameter details, and integration with cerebro_recall. Sufficient for a simple note-taking tool.

    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 adds significant meaning: content is required (1-3 sentences), topic is optional short tag. This compensates for 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 records decisions, domain rules, or gotchas—the *why* behind code. It provides concrete examples and distinguishes from sibling tool cerebro_recall (retrieval).

    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 advises when to use (record 'why'), includes formatting tips (1-3 sentences, optional topic). Does not explicitly state when not to use, but the context of siblings implies alternatives.

    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

cerebro-code-memory MCP server

Copy to your README.md:

Score Badge

cerebro-code-memory 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/marcodavidd020/cerebro-code-memory'

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