kura
Server Quality Checklist
Latest release: v0.1.0
- Disambiguation5/5
Each tool has a distinct purpose: recall for meaning-based search, read for slug-based retrieval, map for index views, doctor for health checks, list for enumerating kuras, and use for switching. No overlap in functionality.
Naming Consistency5/5All tools follow the same `kura_` prefix with a verb-based second part (recall, read, map, doctor, list, use), creating a consistent and predictable naming scheme.
Tool Count5/5Six tools is a well-scoped number for a memory-management server, covering retrieval, inspection, maintenance, and context switching without excess or deficiency.
Completeness4/5The set covers all read and management operations (recall, read, map, health, list, switch), but lacks an explicit write or delete capability, which is a minor gap for a full memory system. Agents can work around this by relying on existing memories.
Average 4.2/5 across 6 of 6 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- No commit activity data available
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
This repository is licensed under MIT License.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto 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 exist, so the description carries full behavioral disclosure. The wording implies a non-mutating enumeration, and it does state the principal output attribute (agent mode), but it does not clarify list format, snapshot semantics, or what happens when no kura are found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences: the first states what the tool does, the second states when to call it. No redundant words or restatements of the tool name occur, and the most useful information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter list tool, the description is nearly complete: it specifies the object being listed, the key field returned, and the appropriate usage context. The only modest gap is that it does not describe the exact output shape or mode representation, and no output schema exists to compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema is an empty object with 100% coverage, so parameter semantics are fully handled by the schema. There are zero parameters for the description to clarify, and the description appropriately adds context about the meaning and use of the listing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action ('List'), a specific resource ('the kura this server holds'), and an output attribute ('which agent mode each one belongs to'). It is distinguishable from sibling tools like kura_read and kura_use, though it does not explicitly name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides two concrete trigger conditions: uncertainty about which memory the agent is speaking from, and before switching modes. It does not explicitly name alternative tools, but the 'when to call this' guidance is clear and actionable.
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 present, so the description bears the burden of behavioral disclosure. 'Health check' implies read-only but never explicitly states it, nor does it mention side effects, performance, or error behavior. It does list the internal state it inspects (index drift, links), adding useful context, but stops short of stating safety guarantees.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero fluff. The primary purpose is front-loaded ('Health check of the kura'), followed by concrete details and usage triggers. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a diagnostic tool with no output schema, the description adequately tells an agent what it does, what it inspects, and when to call it. It could optionally mention that the output includes the listed metrics or that it's a read-only operation, but nothing essential is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the lone 'store' parameter is fully described as 'Which kura. Omit for the current one.' The tool description adds no additional semantic detail beyond that, but given full schema coverage, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific resource ('kura') and a clear action ('Health check'), then enumerates the exact metrics it returns (memories, resolved/dead links, islands, drift). This precisely distinguishes it from siblings like kura_recall or kura_list, leaving no ambiguity about its role.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides explicit triggers: 'Call when recall behaves oddly, or when asked about the memory system itself.' This gives clear guidance on when to invoke. It does not explicitly state when not to use it or name alternatives, but the contexts given are strong enough to route an agent correctly.
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 must disclose behavior. It states the session-wide persistence and the bridge exception, but it does not describe return values, error messages, or side effects beyond the switch. The phrase 'it will say so' hints at feedback but lacks detail. A higher score would require more explicit behavioral documentation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: it states the action, the scope (rest of session), a usage scenario, and a caveat about bridges, all in two sentences without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers what, when, and a special case. It does not mention how to verify the current store or the exact response format, but for a simple context-switch tool, it provides adequate information for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The sole parameter 'store' is described as 'Store or mode name', which is functional but vague. The main description gives an example (building vs. talking) but does not enumerate valid values or the effect of an invalid store. Schema coverage is 100%, but the description adds only marginal clarity over the parameter name.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: switching which kura subsequent calls read from, with an explicit resource ('the following calls') and a distinct purpose from sibling tools like kura_read or kura_recall. The verb 'switch' is specific and not a tautology.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides a concrete scenario ('when the conversation moves to a different mode of work') and notes a limitation (no effect on a bound bridge). It does not explicitly mention when not to use it or alternative tools, but the guidance is sufficient for typical 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?
Annotations are absent, so the description carries full burden. It indicates that the tool reads a whole memory, implying a non-mutating operation, but it does not disclose error behavior, authentication needs, or any side effects. While the read-only nature is implicit from 'read', the description adds no explicit safety or error context, so a minimum-viable score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler. The primary action and the decision trigger are front-loaded, and the example slug adds immediate clarity. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with complete schema and a short description, the key information (what it reads, how to identify it, when to use it) is present. It lacks explicit handling of missing slugs or errors, but such detail is largely unnecessary given the simplicity and the read-only nature. The absence of an output schema is mitigated by the description's statement that it returns the full text.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers both parameters (slug and store) with clear descriptions, and the description adds only the example slug and the semantic of 'whole memory.' With 100% schema coverage, the baseline is 3, and the description provides marginal value beyond reiterating the schema—no new parameter-level details are introduced.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (read), the resource (one whole memory), and identifies the lookup key (slug) with a concrete example. It also distinguishes this tool from its sibling kura_recall by contrasting 'whole memory' vs 'summary', making its purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells the agent when to use this tool: 'Use after kura_recall when a summary is not enough and you need the full text.' This directly names the alternative and the condition that selects this tool, providing strong usage guidance beyond what the schema offers.
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?
Without annotations, the description implies a read-only operation by describing the tool as showing a map, not modifying anything. However, it does not explicitly state that the tool has no side effects, nor does it mention any potential limitations or performance characteristics, leaving some room for ambiguity about its exact behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise yet informative, using a memorable metaphor ('map, not the contents') and listing concrete usage scenarios. It is well-structured, front-loads the core purpose, and avoids unnecessary detail, making it highly scannable for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and the absence of an output schema, the description fully covers the necessary context: what the tool does, when to use it, and how it differs from related tools. It provides sufficient information for an agent to decide when to invoke it without needing additional details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes the single parameter 'store' with a concise explanation. The tool description does not add further semantic detail about the parameter, but since the schema coverage is 100% and the parameter is optional, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Show') and resource ('whole index of the kura'), and clarifies that it provides a map of memory triggers rather than the contents themselves. It also explicitly contrasts with kura_read, making its role unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit 'when to use' scenarios (e.g., before claiming a topic was never discussed, when choosing a memory to open, after switching kura) and implicitly contrasts with kura_read for retrieving details, giving clear guidance on when to choose this tool over 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 are none, so description carries the full burden. It discloses that an empty result means not remembered, and instructs not to invent. It also explains the meaning-based retrieval and link-following behavior, which is beyond what schema provides. However, it doesn't mention side effects or permissions, but given the tool is a recall (likely read-only), this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the core purpose and usage guidance. Each sentence earns its place: it explains the mechanism, when to use, how to handle empty results, and how to use parameters. No redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, but the description clarifies behavior on empty results. The parameter semantics are fully covered. The complexity is moderate, and the description gives enough context for an agent to call it correctly, including error handling and store switching. It is complete for the tool's scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by explaining the semantics of 'question' ('as a natural question') and 'store' ('Which kura to ask'). It also explains 'hops' as '[[link]] hops to walk' with a default, which is beyond the schema's basic description. This is a clear added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool recalls from long-term memory by meaning, not keyword, and follows links. It explicitly mentions the resource (kura) and the action (recall), and distinguishes it from keyword-based search. It is differentiated from siblings like kura_read and kura_map by mentioning meaning-based retrieval and link-following.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit when-to-use guidance: 'whenever the question touches past decisions, measurements, people, machines, or anything done before — prefer it over guessing.' It also tells the agent to say so plainly if empty, avoiding invention. It hints at alternatives (kura_use) for switching stores, and mentions passing 'store' to reach a different kura, which is clear usage context.
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
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/kisaragi-mochi/distill-kura'
If you have feedback or need assistance with the MCP directory API, please join our Discord server