Vulcanus
Server Quality Checklist
Latest release: v0.5.0
- Disambiguation5/5
Each tool has a clear, distinct purpose: recall for capsule retrieval, search for text search, list_projects for project routing, append_decision/update_capsule/append_rule for distinct write operations, and vault_status/doctor for health checks at different granularities. Descriptions explicitly cross-reference when to use which tool, eliminating ambiguity.
Naming Consistency4/5Most tools follow a verb_noun pattern (list_projects, append_decision, update_capsule, append_rule), but recall, search, and doctor are single verbs, and vault_status is a noun compound. The minor inconsistency is easy to read and does not hinder understanding.
Tool Count5/5With 8 tools, the set is well-scoped for a project memory and vault management server. Each tool earns its place, covering reading, searching, updating, and validating without bloat or redundancy.
Completeness4/5The core workflows—accessing capsules, searching, updating summaries, appending decisions/rules, and checking health—are covered. Slight gaps exist: no direct tool to read decisions or rules (though search can find them) and no explicit project creation, but these may be out of scope for the vault's purpose.
Average 4.6/5 across 8 of 8 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 73 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.
This repository includes a glama.json configuration file.
This server has been verified by its author.
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
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description reinforces this with 'Read-only.' It adds meaningful behavioral context by explaining the return value (Capsule + read-next list) and the error behavior (lists existing projects when nothing matches), which goes beyond the structured annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the primary purpose and value, and every sentence adds useful detail: what it returns, how to query, and side effects/error behavior. No wasted words.
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?
For a simple one-parameter, read-only tool with no output schema, the description covers purpose, return content, query method, and error behavior. It is sufficiently complete for an agent to select and invoke the tool without ambiguity.
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 already provides a 100% description for the single 'project' parameter as 'Project name, id, or trigger word.' The tool description largely repeats this same information ('Query by project name, id, or a trigger word') without adding new details about format, examples, or edge cases, so it does not exceed the schema baseline.
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 that 'recall' returns a project's Capsule summary plus a read-next list, identifying the exact resource and action. It also positions itself as 'the entry point before working on any project,' effectively distinguishing it from sibling tools like 'search' and 'list_projects.'
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 explicitly says when to use this tool: 'before working on any project.' It does not, however, explicitly state when not to use it or point to alternatives, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior5/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite annotations all being false, the description explicitly discloses write side effects, append-only behavior, non-idempotency ('calling it twice records the decision twice'), and error conditions when the project or note is missing. It also says it never edits existing content, going well beyond the annotation fields.
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 three sentences: purpose, key constraint, and side effects/return/errors. It is front-loaded, concise, and every sentence carries essential information without 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?
Even without an output schema, the description states what it returns (note path and heading) and when it errors. With all parameters documented in the schema and the tool's non-idempotent behavior explicitly disclosed, the description is fully sufficient for an agent to invoke this tool safely.
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 already covers 100% of parameters with descriptions, so the baseline is 3. The description adds the Decision/Details format context but does not elaborate on individual parameter meaning beyond the schema.
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 states a specific action: 'Append a confirmed decision to a project's Decisions note' in a defined format. It includes the resource (project Decisions note), the operation (append), and a format constraint, making it distinct from siblings like append_rule.
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 gives clear context: use it only for confirmed decisions, and it warns about duplication on repeated calls. It does not explicitly mention when to prefer alternatives like append_rule, but the decision-vs-rule distinction is implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description adds 'Read-only' which is consistent. It further discloses ranking behavior (Capsule and Recall Map hits rank first) and the 'cheapest sufficient note' prioritization, providing valuable behavioral context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose, and every sentence contributes meaningful information (what it does, ranking behavior, read-only, and when to use alternative). No wasted words.
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 is simple (2 params, both documented), annotations cover the read-only aspect, and the description explains the ranking behavior and sibling differentiation. It is complete enough for an agent to invoke correctly without needing more 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?
Schema description coverage is 100% since both `query` and `limit` have descriptions. The description adds no additional parameter semantics beyond what the schema provides, so 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 it is a 'layer-aware text search across the vault', using a specific verb and resource. It also distinguishes itself from the sibling tool `recall` by noting that `recall` is preferable when you know which project you need, making the tool's unique purpose clear.
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?
Explicitly guides the agent to prefer `recall` when the project is already known, providing a clear when-to-use alternative. This gives actionable context for selecting between tools.
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?
Beyond the annotations (destructive, idempotent), the description discloses important behaviors: it 'Writes to disk and overwrites that section's previous contents', notes recovery is 'only from Git', asserts other sections are untouched, and clarifies it 'Errors when the project or its Capsule is missing'. This gives the agent a full picture of side effects and failure modes.
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?
Four targeted sentences: action, usage condition, side effects/constraint, and error behavior. No redundant wording, and the most important 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?
The description covers the purpose, usage, side effects, recovery, and error conditions, which is substantial for a simple update tool. However, there is no output schema and the description does not state what the tool returns on success or failure, leaving a small gap for an agent planning its next action.
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%, so the baseline is 3. The description adds general context about the Capsule and the body content ('never to record a guess') but does not add specific syntax or format details beyond the schema. It doesn't elevate the parameter understanding significantly.
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 'Replace one section of a project's Capsule' and the title 'Refresh a capsule section', clearly stating the verb and resource. It also distinguishes itself from siblings like recall/search (read-only) and append_decision/append_rule (appending) by explicitly noting 'Read Next is generated and cannot be written here' and framing this as a targeted replacement.
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: 'Use it after the operator confirms something that makes the summary wrong or incomplete', and a clear exclusion: 'never to record a guess'. It also explains that Read Next cannot be written, guiding the agent away from attempting that section. This is strong usage guidance without naming alternatives.
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?
Even though annotations already mark readOnlyHint=true, the description adds valuable behavioral detail: it never repairs, it returns every finding, and it defines the two kinds of findings (error vs warning). This goes well beyond the annotation and gives the agent a clear model of what to expect.
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 packed with essential information, front-loaded with the verb and subject. No fluff—each clause adds value, including the error/warning distinction and the repair pointer.
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?
Despite lacking an output schema, the description fully describes what the tool returns (all findings) and how to interpret them (error vs warning). Given the zero-parameter simplicity and strong annotations, this is complete for an agent to use correctly.
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 tool has zero parameters, so there is little to explain. The description implicitly signals that no configuration is needed by saying 'Run the full structural validation' without mentioning any inputs, matching the schema's 100% coverage baseline.
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 action ('Run the full structural validation') and enumerates concrete finding categories (unresolved links, missing frontmatter, etc.), making the tool's purpose unmistakable. It also distinguishes itself from repair by explicitly separating reporting from the terminal repair command.
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 clearly states this tool validates and reports, and explicitly directs repair to the terminal command `vulcanus doctor --repair`, providing an important when-not-to-use boundary. It does not explicitly compare to sibling tools like vault_status, but the validation scope is well-defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers safety, and the description reinforces it with 'Read-only'. Beyond that, it adds valuable context: the tool returns a routing table of every project, including fields, and is 'cheapest' in terms of cost. No behavioral contradictions.
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 two sentences, densely packed with information. It front-loads the core purpose ('routing table'), immediately lists what is returned, and adds usage guidance. Every word contributes value with no redundancy or bloat.
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, so the description must explain return values—it does, listing status, summary, trigger words, and capsule path. It also covers read-only nature, performance ('cheapest'), and usage context relative to sibling tools. For a simple list tool with no parameters, this is fully complete.
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 tool has zero parameters, and the schema is empty, so there is nothing to explain. Baseline for 0-param tools is 4. The description adds no new parameter information, but none is needed. It does clarify the scope ('every project'), which gives context about what the lack of parameters means.
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 lists all projects with specific fields (status, summary, trigger words, capsule path). The verb 'list' is specific and the resource is unambiguous. It also distinguishes from siblings by framing it as a routing table and the cheapest way to inspect available projects before using recall or search.
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 indicates when to use this tool: before calling recall or search, as it's the cheapest read-only way to see what exists. It names alternatives (recall, search) and clarifies the read-only nature, providing clear context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already include readOnlyHint=true, and the description adds behavioral specificity: 'it inspects the working tree and reports, and writes nothing.' It also discloses the scope of the summary (projects, note counts, doctor result, stale capsules, git state), which goes beyond the bare annotation.
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 two sentences and front-loads the core purpose immediately. Every clause earns its place: the list of summary contents, the read-only guarantee, and the pointer to 'doctor' are all high-value information delivered with zero filler.
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?
Despite having no output schema, the description enumerates exactly what kind of information the summary includes (projects, note counts, doctor result, stale capsules, git state), which is sufficient for an agent to set expectations. The tool has no parameters and is a read-only health summary, so no additional context is needed.
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?
Input schema has zero parameters, so the baseline is 4. The description naturally includes no parameter details because none exist, and it does not need to compensate for schema gaps since there are no parameters.
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 identifies a specific resource ('vault') and a specific action ('one-shot health summary') with concrete contents: projects, note counts, doctor result, stale capsules, git state. It also distinguishes itself from the sibling tool 'doctor' by noting this is a summary rather than exhaustive validation findings.
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 states when to use this tool versus the alternative: 'Use `doctor` when you need every validation finding rather than the summary.' It also clarifies the tool is read-only and only inspects/reports, giving clear contextual guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior5/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes beyond annotations by describing side effects: 'appends and never edits existing rules, so calling it twice records the rule twice.' Also discloses error conditions when the project or Rules note is missing.
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?
Four sentences pack purpose, definition, alternative guidance, and error behavior without redundancy. Every sentence earns its place.
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?
Complete for a write tool with 3 required params, no output schema, and no annotations beyond safety hints. Covers concept, side effects, duplicate-call consequence, error conditions, and sibling differentiation.
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 covers 100% of parameters, but the description enriches the meaning of 'rule' by defining it as 'standing constraints the operator has confirmed' and contrasting with observations. This adds context beyond the schema's basic field descriptions.
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 states a specific verb and resource: 'Add a durable rule to a project's Rules note.' It distinguishes from siblings by contrasting with 'append_decision' and 'update_capsule', clearly defining what qualifies as a rule.
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?
Explicitly provides when to use alternatives: 'Use `append_decision` instead for a choice that was made, and `update_capsule` when the summary itself is now wrong.' Also clarifies what counts as a rule versus a one-time observation.
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/sunsatosolutions/Vulcanus'
If you have feedback or need assistance with the MCP directory API, please join our Discord server