ultrabrain-mcp
The ultrabrain-mcp server is a local structured reasoning scratchpad and quality gate for AI agents to perform step-by-step deliberation without calling external LLM APIs. It supports:
Start sessions (
ultrabrain_start): Create a named reasoning session for a problem, optionally seeding the first thought and applying a built-in template.Append reasoning steps (
ultrabrain_think): Add canonical thoughts with evidence, assumptions, alternatives, risks, confidence scores, quality metrics, bias detection, and reasoning modes (analytical, critical, socratic, first_principles, etc.).Update existing thoughts (
ultrabrain_update): Strengthen a prior thought with new evidence, confidence adjustments, or metrics.Branch reasoning paths (
ultrabrain_branch): Fork from any prior thought to explore alternative paths in parallel.Merge branches (
ultrabrain_merge): Combine insights from multiple branches via synthesis, best-evidence, or decision strategies.Validate reasoning (
ultrabrain_validate): Check for gaps in evidence, alternatives, verification, bias, and closure readiness.Analyze session quality (
ultrabrain_analyze): Get aggregate quality scores, confidence levels, bias counts, unresolved questions, and recommendations.Review sessions (
ultrabrain_review): Render a session as summary, linear chain, tree, markdown, JSON, or Mermaid diagram.Check status (
ultrabrain_status): Inspect session state, thought count, active branches, and latest quality score.Browse history (
ultrabrain_history): Retrieve recent thought records from a session.Export sessions (
ultrabrain_export): Export as markdown, plain text, or JSON.Get metrics (
ultrabrain_metrics): Retrieve aggregate metrics across sessions, branches, quality, confidence, bias, and reasoning modes.List templates (
ultrabrain_templates): Browse built-in LCV engineering reasoning templates.Reset sessions (
ultrabrain_reset): Clear a single session or all sessions, removing persisted files.
Allows rendering reasoning sessions as Mermaid diagrams, enabling visualization of reasoning chains, branches, and merges.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ultrabrain-mcpstart a reasoning session to analyze the login timeout issue"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ultrabrain-mcp
Install. npm install -g @lcv-ideas-software/ultrabrain-mcp from npmjs.com, or npm install -g @lcv-ideas-software/ultrabrain-mcp --registry=https://npm.pkg.github.com from the GitHub Packages mirror.
Version. This source describes 1.2.17 / v01.02.17. Consult the npm package and GitHub Releases for current publication status. The historical v01.02.16 tag records a failed publication attempt and is preserved; a tag alone is not proof of a published package. See CHANGELOG.md for the changes and recovery context.
First publication started at v01.00.00. Public GitHub tags use the LCV Ideas & Software display convention v00.00.00; npm keeps normal SemVer.
Change History
The version history at a glance:
Release | Package | Date | Notes |
|
| 08/09/2026 | Native governance and four-job publication, retaining the MCP bundle, license notices and clean-consumer checks. See the registry and Releases links above for publication status. |
|
| 08/09/2026 | Failed publication attempt; its existing tag is preserved. Contains the qs update and earlier dependency-inventory and Linear Release changes, carried forward into the 1.2.17 source. |
|
| 18/08/2026 | Quarantines persisted sessions whose branch collections are malformed (values of |
|
| 15/08/2026 | Delegates Trusted Publishing to the official npm client, removes the incompatible manual OIDC exchange probes, and waits for verified npmjs publication before writing to GitHub Packages. |
|
| 15/08/2026 | Tag-only fail-closed canary: adding npm's operation header to the manual exchange still returned |
|
| 15/08/2026 | Tag-only fail-closed canary: the original manual Trusted Publisher preflight stopped before project code or artifact publication; superseded by the official-client recovery in |
|
| 05/08/2026 | Adds the read-only |
|
| 05/08/2026 | Moves GitHub administration authority to a non-deploying protected environment, verifies canonical npm registry routing, and separates urgent CodeQL security updates from routine dependency batches. |
|
| 03/08/2026 | Uses checksum-verified npm 12.0.2, accepts only documented |
|
| 28/07/2026 | Completes the provenance-bound 1.2.5/1.2.6 release recovery, preserves the ambiguous 1.2.4 drafts as audit evidence, bundles MCP SDK 1.30.0, removes Socket/StepSecurity integrations, and makes the SDK license regression version-aware. |
|
| 22/07/2026 | Makes draft-release discovery eventual-consistency-safe by waiting for the exact server-issued release id before any asset upload. |
|
| 22/07/2026 | Makes immutable release reconciliation preserve valid |
|
| 22/07/2026 | Binds draft discovery, mutations, asset transfers, and final verification to the exact immutable release identity. |
|
| 22/07/2026 | Corrects npm tarball publication and adds provenance-safe tag/release recovery while preserving the immutable audit trail. |
|
| 22/07/2026 | Ships a self-contained MCP bundle, clean-consumer verification, and provenance-bound multi-registry publication. |
|
| 21/07/2026 | Security patch: updates transitive |
|
| 17/07/2026 | Retro cross-review follow-up: |
|
| 17/07/2026 | Audit remediation: correctness cluster (persistence, state machine, validation, protocol), a |
|
| 15/05/2026 | 4-gate quality directive compliance: added Biome, aligned CI, applied cosmetic source cleanup, and synchronized SERVER_VERSION to |
|
| 12/05/2026 | Refinements for depth enforcement, active thought-reference validation, update record returns, real markdown merge output, optional file persistence, and expanded smoke coverage. |
|
| 12/05/2026 | First LCV Ultrabrain MCP release: branded tool surface, session lifecycle, branching, merging, validation, analysis, prompts, resources, Pages, CI, and publish automation. |
Related MCP server: Sequential Thinking MCP Server
What It Does
ultrabrain-mcp is an MCP server created by LCV Ideas & Software for local, structured reasoning before engineering work is closed. It gives agents a single branded gate for:
step-by-step reasoning with branches and revisions;
quality metrics, confidence, budget mode, and meta checkpoints;
bias detection and counterexample prompts;
explicit evidence, assumptions, alternatives, risks, and next actions;
session review, validation, metrics, export, prompts, and resources.
The server does not call external LLM APIs. It is a local MCP reasoning scratchpad and quality gate, so source code and private task context stay inside the active MCP host.
Tools
Tool | Purpose |
| Create a reasoning session and optionally seed the first thought. |
| Append the canonical Ultrabrain reasoning step. |
| Strengthen an existing thought with evidence, risks, confidence, or metrics. |
| Create or continue an alternative reasoning path. |
| Merge branch insights into a synthesis, best-evidence path, or decision. |
| Check evidence, alternatives, verification, bias, and closure gaps. |
| Summarize quality, confidence, labels, bias counts, and recommendations. |
| Render a session as summary, linear chain, tree, markdown, JSON, or Mermaid. |
| Show session state, thought count, branches, and latest quality score. |
| Return recent thought records. |
| Export a session as markdown, text, or JSON. |
| Return aggregate session and reasoning metrics. |
| List built-in LCV engineering reasoning templates. |
| Clear one session, or all sessions, removing their persisted files too. |
| Report server version, capabilities, tool surface, data dir, and limits. |
Canonical Example
{
"thought": "Map the failure, list evidence, compare alternatives, and choose the next verification step.",
"thought_number": 1,
"total_thoughts": 4,
"next_thought_needed": true,
"mode": "hybrid",
"step_type": "analysis",
"evidence": ["The failing behavior was reproduced locally."],
"alternatives": ["patch the caller", "patch the shared parser"],
"risks": ["a shared parser change can affect unrelated hosts"],
"next_actions": ["run the focused test", "inspect the shared call path"],
"quality_metrics": {
"logical_consistency": 4,
"completeness": 4,
"objectivity": 4,
"practicality": 5,
"clarity": 5
},
"response_format": "json"
}MCP Configuration
Global npm installation target in the Windows environment used by LCV Ideas & Software:
C:\npm-global\node_modules\@lcv-ideas-software\ultrabrain-mcpUse the MCP server name ultrabrain in host configs:
{
"mcpServers": {
"ultrabrain": {
"command": "ultrabrain-mcp",
"args": []
}
}
}Development checkout and global installation are intentionally separate. Do not create a junction or symlink from C:\npm-global\node_modules\@lcv-ideas-software\ultrabrain-mcp to the workspace checkout.
Optional local persistence can be enabled per host with ULTRABRAIN_STATE_DIR or ULTRABRAIN_PERSIST_DIR. When unset, sessions remain process-local.
Development
npm ci --ignore-scripts --no-audit --no-fund
npm run biome
npm run format:public:check
npm test
npm pack --dry-runThe smoke test starts the built MCP server over stdio, lists tools, verifies the branded ultrabrain_* surface, exercises session start, thought, branch, merge, validation, status, export, prompts, and resources.
Release Automation
This source follows the native package-publication baseline:
CI checks pull requests targeting
mainand pushes tomain, retaining product tests, Biome, public-site formatting, bundle/license verification and clean-consumer coverage.Dependabot checks npm and GitHub Actions every day at 05h (UTC−03:00), including weekends. Minor/patch version updates are grouped; version-update majors remain separate. Security updates have their own group per ecosystem. GitHub native auto-merge is enabled for eligible same-repository Dependabot PRs, including majors, and waits for required checks.
CodeQL uses GitHub Default Setup. Dependency Review, Zizmor and Scorecard remain repository-local official workflows.
Pages builds
site/on pull requests and deploys only frommaintoultrabrain-mcp.lcv.dev.Publishruns on a push tomaintouchingpackage.jsonand publishes only when its version changed. A dependency-only manifest edit without a package-version bump is a no-op.Four jobs run in order: a read-only build packs one tarball; npm publishes it through Trusted Publishing in
npm-production; GitHub Packages publishes the same tarball usingGITHUB_TOKEN; GitHub CLI creates the padded tag and GitHub Release last.Registry publication jobs consume the uploaded tarball without checking out or building product code. There is no separate auto-tag workflow, administrative PAT gate or repository-owned npm bootstrap.
The official Linear Release integration remains separate from package publication. Direct third-party Actions stay pinned to reviewed immutable commit SHAs.
An existing tag is not publication evidence: the release decision refuses to reuse it. For an interrupted run, inspect the registry and Release state before using GitHub's re-run failed jobs command, gh run rerun RUN_ID --failed. Recovery is best effort, not an exactly-once guarantee; a failed job may already have completed an external write. The historical recovery runbook is archived evidence, not the current publication procedure.
Research
See docs/research-matrix.md. Ultrabrain imports ideas only at the architecture level. It does not copy third-party code, text, branding, non-English localization strings, or external model/API behavior.
Repository conventions
License: Apache-2.0. See NOTICE and THIRDPARTY.
Security disclosure: see SECURITY.md.
Code of conduct: see CODE_OF_CONDUCT.md.
Changelog: CHANGELOG.md.
Contributing: see CONTRIBUTING.md.
Sponsorship: see the repo's
Sponsorbutton or central sponsor page.Action pinning: all GitHub Actions are pinned by full SHA per supply-chain hardening baseline.
Code owners: .github/CODEOWNERS.
Links
npmjs.com: https://www.npmjs.com/package/@lcv-ideas-software/ultrabrain-mcp
GitHub: https://github.com/LCV-Ideas-Software/ultrabrain-mcp
License
Apache-2.0. See LICENSE, NOTICE, and THIRDPARTY.
Available Tools
15 toolsultrabrain_analyzeUltrabrain AnalyzeBRead-onlyIdempotent
Analyze quality, confidence, bias counts, label counts, unresolved questions, and recommendations.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | No | Optional reasoning session id. Defaults to "default". | |
| response_format | No | Response format. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate the tool is read-only and idempotent. The description adds value by detailing the kinds of analysis performed, but does not disclose additional behaviors such as reliance on a session_id or potential side effects. It is consistent with annotations, hence no contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 13 words, efficiently listing key analysis aspects. It is well-structured and front-loaded, though slightly sparse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description would benefit from describing the return format. It lists analysis items but does not specify structure (e.g., JSON fields). With two optional parameters and good annotations, completeness is adequate but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema coverage is 100%, with descriptions for both parameters. The description does not elaborate on parameter usage beyond the schema, so it meets the baseline without adding extra meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies a clear verb ('Analyze') and lists specific aspects (quality, confidence, bias counts, etc.), making the tool's purpose apparent. However, it does not differentiate from siblings like ultrabrain_metrics or ultrabrain_review, which may have overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus other siblings, nor does it mention prerequisites or context. It simply states what it does, leaving the agent without decision criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ultrabrain_branchUltrabrain BranchB
Create or continue an Ultrabrain branch from a prior thought.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Reasoning mode. | |
| tags | No | Optional tags. | |
| risks | No | Known risks. | |
| thought | Yes | Current Ultrabrain reasoning step. | |
| evidence | No | Evidence supporting this thought. | |
| branch_id | Yes | Branch identifier. | |
| max_depth | No | Maximum planned depth. | |
| step_type | No | Reasoning step category. | |
| confidence | No | Confidence from 0 to 1. | |
| hypothesis | No | Explicit hypothesis for this step. | |
| session_id | No | Optional reasoning session id. Defaults to "default". | |
| assumptions | No | Assumptions to track. | |
| budget_mode | No | Reasoning budget mode. | |
| budget_used | No | Budget used percentage from 0 to 100. | |
| depth_level | No | Current depth for serial reasoning. | |
| is_revision | No | Whether this step revises an earlier thought. | |
| perspective | No | Optional perspective, such as reviewer, maintainer, security, UX, or operator. | |
| alternatives | No | Alternative paths or options. | |
| next_actions | No | Concrete next checks or implementation actions. | |
| verification | No | Verification approach or result. | |
| bias_detected | No | Known cognitive bias to track. | |
| open_questions | No | Unresolved questions. | |
| parent_thought | No | Optional parent thought reference. | |
| thought_number | Yes | Current thought number in the chain. | |
| total_thoughts | Yes | Estimated total thoughts. Adjust this as scope changes. | |
| expected_output | No | Expected output from the reasoning chain. | |
| meta_checkpoint | No | Marks an explicit meta-reasoning checkpoint. | |
| quality_metrics | No | Quality scores from 0 to 5. | |
| response_format | No | Response format. | |
| revises_thought | No | Thought number being revised. | |
| branch_from_thought | Yes | Thought number where this branch starts. | |
| needs_more_thoughts | No | Allows thought_number to exceed total_thoughts when scope expands. | |
| next_thought_needed | Yes | Set to false only when this chain has reached a verified conclusion. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate no read-only, open-world, idempotent, or destructive hints, so the tool is expected to mutate state. However, the description adds no behavioral details beyond 'create or continue'—e.g., what happens if the branch already exists, or what side effects occur. Annotations are unhelpful (all false), and the description fails to fill the gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is too terse given the tool's complexity (33 parameters, 8 siblings, nested objects). While it front-loads the purpose, it lacks necessary details to guide agent usage, making it under-specified rather than concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the high complexity (33 parameters, no output schema), the description is incomplete. It does not explain return values, side effects, or how branching relates to the main reasoning chain. Many parameter descriptions in the schema are sparse, and the tool description offers no synthesized guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. However, many parameter descriptions are minimal (e.g., 'Reasoning mode.' for 'mode', 'Optional tags.' for 'tags'), adding little beyond the parameter name. Some, like 'next_thought_needed', are more informative. The tool description itself adds no parameter-level context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action ('Create or continue') and resource ('Ultrabrain branch from a prior thought'). It effectively distinguishes from siblings like ultrabrain_start (start new) and ultrabrain_merge (merge branches), which are named in the sibling list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when branching from a prior thought, but does not explicitly state when to use this tool versus alternatives like ultrabrain_start or ultrabrain_think. No comparative guidance is provided, leaving the agent to infer context from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ultrabrain_exportUltrabrain ExportARead-onlyIdempotent
Export a session as markdown, text, or JSON.
| Name | Required | Description | Default |
|---|---|---|---|
| format | No | Response format. | |
| session_id | No | Optional reasoning session id. Defaults to "default". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds no behavioral context beyond what annotations provide. For a read-only export tool, the description could mention that it does not modify the session, but that is already covered by annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It front-loads the verb 'Export' and clearly states the resource and output formats.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple tool with 2 parameters (both optional), 100% schema coverage, and comprehensive annotations, the description fully covers the necessary context. No output schema is needed as the return format is implied by the format parameter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description mentions 'markdown, text, or JSON' which matches the format enum, but adds no additional meaning. The session_id parameter is described in the schema but not in the description, so the description does not improve parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action (export) and resource (a session) with specific output formats (markdown, text, JSON). This distinguishes it from sibling tools like ultrabrain_start which starts a session.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you need session data in a specific format, but it does not explicitly state when to use it vs alternatives or provide any when-not scenarios. Among siblings, no guidance on alternatives is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ultrabrain_historyUltrabrain HistoryARead-onlyIdempotent
Return recent normalized thought records for a session.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| session_id | No | Optional reasoning session id. Defaults to "default". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so safety characteristics are clear. The description adds that records are 'normalized' and 'recent', but does not elaborate on ordering, filtering, or pagination behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the key action and resource. No extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, and parameters are poorly documented. The description covers the basic purpose but lacks enough detail for an agent to confidently invoke the tool without additional schema inspection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 50% (only session_id has a description). The description does not mention parameters at all, failing to compensate for the lack of schema documentation on the 'limit' parameter. An agent would not know what 'limit' means from the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('return') and clearly names the resource ('recent normalized thought records') and context ('for a session'). It distinguishes itself from sibling tools like ultrabrain_start or ultrabrain_status by focusing on history.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives. It is implied that it's for retrieving past records, but no conditions or exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ultrabrain_mergeUltrabrain MergeB
Merge one or more branch insights into a synthesis, best-evidence path, or decision note.
| Name | Required | Description | Default |
|---|---|---|---|
| strategy | No | ||
| branch_ids | Yes | ||
| session_id | No | Optional reasoning session id. Defaults to "default". | |
| create_thought | No | Whether to append the synthesis as a new thought. | |
| response_format | No | Response format. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint=false) indicate the tool is not read-only, which aligns with 'merge' likely being mutating. However, the description does not disclose whether original branches are affected, if the operation is reversible, or any side effects. It provides minimal behavioral insight beyond the action itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that is concise, front-loaded with the verb and resource, and contains no unnecessary words. Every part of the description contributes to understanding the tool's primary action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 5 parameters and no output schema, the description is extremely brief. It does not explain the merge process, the structure of the output, or how parameters like session_id or response_format affect behavior. The tool's complexity is not matched by the description's completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 60% (3 of 5 params have descriptions). The description mentions 'synthesis, best-evidence path, or decision note' which aligns with the strategy enum, adding some meaning. However, the critical 'branch_ids' and 'strategy' parameters lack schema descriptions, and the tool description does not compensate with additional detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Merge' and the resource 'branch insights' into specific outputs: 'synthesis, best-evidence path, or decision note.' It effectively distinguishes itself from sibling tools like ultrabrain_branch, which likely creates branches, and ultrabrain_analyze, which may perform analysis.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus siblings. The description does not specify prerequisites, when not to use, or provide alternatives. Given the presence of multiple related tools (e.g., ultrabrain_think, ultrabrain_review), explicit usage context is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ultrabrain_metricsUltrabrain MetricsARead-onlyIdempotent
Return aggregate session, thought, branch, quality, confidence, bias, mode, and step metrics.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | No | Optional reasoning session id. Defaults to "default". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds value by specifying the types of metrics aggregated, enhancing transparency without contradicting annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, succinct sentence efficiently conveys the tool's purpose without extraneous content, demonstrating excellent conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple metrics retrieval tool with one optional parameter and comprehensive annotations, the description adequately covers what the tool returns. Sibling tools are distinct, and no output schema is needed as the return is described. Minor gap: could mention typical use cases post-session.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the schema provides complete documentation for the single optional session_id parameter. The description adds no additional parameter insights beyond what the schema supplies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns aggregate metrics across multiple categories (session, thought, branch, etc.), distinguishing it from sibling tools that perform actions like start, think, or validate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives, but the context of sibling tools implies it is for retrieving metrics after operations; lacks clear when-to-use or when-not-to-use criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ultrabrain_resetUltrabrain ResetADestructiveIdempotent
Reset one Ultrabrain session, or all sessions when all_sessions is true.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | No | Optional reasoning session id. Defaults to "default". | |
| all_sessions | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as destructive and non-read-only. The description adds the key behavioral detail that resetting can affect one or all sessions based on the boolean flag, which goes 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, dense sentence that conveys the core action and parameter implication without any wasted words. It is front-loaded with the verb and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the moderate complexity, lack of output schema, and annotations covering destructiveness, the description is largely complete. It could mention side effects (e.g., loss of session state) but is sufficient for an agent to understand the tool's purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50% (session_id described, all_sessions not). The description directly adds meaning to 'all_sessions' by explaining its effect. For session_id, the schema already provides default and optionality, so no further value is added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'reset' and resource 'Ultrabrain session', clearly distinguishing it from siblings like 'start' or 'think' which serve different purposes. The scope (one or all sessions) is explicitly stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when resetting sessions but provides no explicit guidance on when to use vs alternatives (e.g., 'ultrabrain_start' or 'ultrabrain_update'). No when-not-to-use or exclusion criteria are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ultrabrain_reviewUltrabrain ReviewCRead-onlyIdempotent
Render a reasoning session as a summary, linear chain, tree, markdown, or JSON.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| format | No | ||
| session_id | No | Optional reasoning session id. Defaults to "default". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds context about rendering formats but does not disclose other behavioral aspects such as whether the session must exist, the size of returned data, or the effect of the 'limit' parameter. With annotations covering safety, the description provides some additional value but not rich behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 15 words, front-loading the key verb 'Render'. It is efficient and avoids redundancy. However, given the number of siblings and parameters, slightly more detail could be included without sacrificing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 3 parameters, no output schema, and many siblings. The description does not clarify the return type of the rendering (e.g., string, JSON object), nor does it explain the 'limit' parameter or that a session must exist. This leaves significant gaps for an agent to correctly invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (33%, only session_id has a description). The description only implies the 'format' parameter by listing output types, but it omits 'mermaid' from the list despite being in the enum. The 'limit' parameter is not explained, and 'session_id' is already described in the schema. The description adds minimal meaning beyond the schema for a low-coverage scenario.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Render' and the resource 'reasoning session', and lists possible output formats. However, it does not distinguish this tool from siblings like ultrabrain_export or ultrabrain_status, which could also render or output data. The specificity is good but sibling differentiation is absent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as ultrabrain_export (for exporting) or ultrabrain_history (for history). There is no mention of prerequisites (e.g., a session must exist) or typical use cases. The score reflects the lack of any usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ultrabrain_server_infoUltrabrain Server InfoARead-onlyIdempotent
Return runtime information for the local Ultrabrain MCP server, including version, release date, capabilities, tool surface, data directory, and active limits.
| Name | Required | Description | Default |
|---|---|---|---|
| response_format | No | Response format. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds valuable context by specifying exactly what runtime information is included (e.g., data directory, active limits), which goes beyond the annotation traits. No contradictions are present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the action ('Return runtime information') and lists the key content areas without unnecessary words. Every phrase adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple info tool with one optional parameter and no output schema, the description provides a clear scope of returned data. It could be slightly more complete by explaining how response_format affects the output, but the schema already covers that, making this adequate overall.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage for the single optional parameter 'response_format', including an enum and description. The tool description itself does not add further parameter semantics, but the schema fully compensates, meeting the baseline expectation for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Return' and clearly identifies the resource as runtime information for the local Ultrabrain MCP server, enumerating the exact content (version, release date, capabilities, tool surface, data directory, active limits). This distinguishes it from sibling tools like status or metrics by detailing a comprehensive server introspection scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ultrabrain_status or ultrabrain_metrics. There is no mention of exclusions, prerequisites, or scenarios where this tool is preferred, leaving the agent without comparative direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ultrabrain_startUltrabrain StartB
Create a branded LCV Ultrabrain reasoning session and optionally seed the first thought.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | ||
| context | No | Relevant context. | |
| problem | Yes | Problem or decision to reason about. | |
| template | No | Optional template id from ultrabrain_templates. | |
| session_id | No | Optional reasoning session id. Defaults to "default". | |
| total_thoughts | No | Estimated total thoughts for the seeded chain. | |
| initial_thought | No | Optional first thought. | |
| response_format | No | Response format. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are all false, providing no behavioral hints. The description only states the action (create, seed) without disclosing side effects, required permissions, or session lifecycle details. This is minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence that efficiently communicates the core purpose. Could be slightly more structured or detailed, but it is well front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 parameters and no output schema, the description is too sparse. It does not explain 'branded LCV', session behavior, or what the tool returns. Incomplete for an agent to use reliably.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 88%, so most parameters have basic descriptions. The tool description adds no additional meaning beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a reasoning session and optionally seeds a first thought. It uses a specific verb and resource, and distinguishes itself from sibling tools like ultrabrain_think (which operates within a session).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. It does not mention that this should be called before other ultrabrain tools, nor does it provide any context about prerequisites or use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ultrabrain_statusUltrabrain StatusARead-onlyIdempotent
Return session status, thought count, branches, and latest quality score.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | No | Optional reasoning session id. Defaults to "default". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds specific return fields (thought count, branches, quality score) which aids transparency but does not disclose additional behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no wasted words. It is front-loaded with the purpose and lists key return elements efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description adequately covers the key return fields. It is sufficient for a status retrieval tool, though it could mention the format (e.g., that it returns a JSON object).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter, and the description does not add extra meaning beyond what the schema already provides. The parameter is clearly optional with a default.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool returns session status, thought count, branches, and quality score. It uses a specific verb ('Return') and distinguishes from sibling tools like ultrabrain_start or ultrabrain_think which are for starting or thinking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. It does not mention when not to use it or suggest alternative tools for different scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ultrabrain_templatesUltrabrain TemplatesARead-onlyIdempotent
List LCV Ultrabrain prompt templates for common engineering reasoning workflows.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint and idempotentHint; description adds minimal context that it lists templates, but lacks details on pagination, filtering, or meaning of 'LCV'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with action verb and key qualifiers; no redundant words, front-loaded with purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters or output schema, description is adequate for a list operation, though could clarify what constitutes a 'template' or return structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist; description correctly omits param details, and baseline for 0-param tools is 4. No additional meaning needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'List' and resource 'LCV Ultrabrain prompt templates' with context 'for common engineering reasoning workflows', clearly distinguishing it from sibling tools like ultrabrain_analyze or ultrabrain_start.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to list templates vs using them; siblings provide alternative operations but no explicit comparison or when-not-to-use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ultrabrain_thinkUltrabrain ThinkA
Canonical LCV reasoning gate for code work, branching, revisions, quality metrics, bias checks, confidence, and meta checkpoints. Protocol: state evidence and assumptions before conclusions; set step_type honestly (analysis, hypothesis, verification, conclusion...); attach evidence[] for any factual claim; branch when a materially different path exists and revise when an earlier step was wrong; adjust total_thoughts when scope changes instead of forcing a fit; only set next_thought_needed to false once a verification step has checked the conclusion. Close each step by asking: what am I missing or need to reconsider?
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Reasoning mode. | |
| tags | No | Optional tags. | |
| risks | No | Known risks. | |
| thought | Yes | Current Ultrabrain reasoning step. | |
| evidence | No | Evidence supporting this thought. | |
| branch_id | No | Branch identifier. | |
| max_depth | No | Maximum planned depth. | |
| step_type | No | Reasoning step category. | |
| confidence | No | Confidence from 0 to 1. | |
| hypothesis | No | Explicit hypothesis for this step. | |
| session_id | No | Optional reasoning session id. Defaults to "default". | |
| assumptions | No | Assumptions to track. | |
| budget_mode | No | Reasoning budget mode. | |
| budget_used | No | Budget used percentage from 0 to 100. | |
| depth_level | No | Current depth for serial reasoning. | |
| is_revision | No | Whether this step revises an earlier thought. | |
| perspective | No | Optional perspective, such as reviewer, maintainer, security, UX, or operator. | |
| alternatives | No | Alternative paths or options. | |
| next_actions | No | Concrete next checks or implementation actions. | |
| verification | No | Verification approach or result. | |
| bias_detected | No | Known cognitive bias to track. | |
| open_questions | No | Unresolved questions. | |
| parent_thought | No | Optional parent thought reference. | |
| thought_number | Yes | Current thought number in the chain. | |
| total_thoughts | Yes | Estimated total thoughts. Adjust this as scope changes. | |
| expected_output | No | Expected output from the reasoning chain. | |
| meta_checkpoint | No | Marks an explicit meta-reasoning checkpoint. | |
| quality_metrics | No | Quality scores from 0 to 5. | |
| response_format | No | Response format. | |
| revises_thought | No | Thought number being revised. | |
| branch_from_thought | No | Thought number where this branch starts. | |
| needs_more_thoughts | No | Allows thought_number to exceed total_thoughts when scope expands. | |
| next_thought_needed | Yes | Set to false only when this chain has reached a verified conclusion. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses key behaviors beyond annotations: it is a reasoning gate, supports branching/revision, requires verification before concluding, and includes meta-checkpoints. Annotations only indicate non-readOnly and non-destructive, so the description adds critical transparency about how the tool modifies reasoning state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, dense paragraph that front-loads purpose and immediately follows with actionable protocol. Every sentence earns its place, covering when to branch, revise, set next_thought_needed, and even ends with a meta-question. No redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (33 parameters, no output schema), the description provides a coherent protocol that guides usage across diverse reasoning scenarios. It covers branching, revision, quality metrics, and verification, but could mention the return value or side effects more explicitly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
While schema coverage is 100%, the description adds semantic context by prescribing how parameters should be used (e.g., attach evidence for claims, set step_type honestly, adjust total_thoughts). This goes beyond per-parameter descriptions, providing a usage narrative that enhances parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states it is a 'Canonical LCV reasoning gate for code work, branching, revisions, quality metrics, bias checks, confidence, and meta checkpoints.' This clearly identifies the tool as the primary reasoning step tool, distinguishing it from sibling tools like ultrabrain_analyze or ultrabrain_review by covering all aspects of reasoning.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a detailed protocol: state evidence and assumptions before conclusions, set step_type honestly, attach evidence for factual claims, branch and revise appropriately, adjust total_thoughts, and only set next_thought_needed to false after verification. It explains when to use these features but does not explicitly exclude scenarios or compare to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ultrabrain_updateUltrabrain UpdateBDestructive
Update an existing thought with stronger evidence, confidence, risks, actions, or quality metrics.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | ||
| risks | No | ||
| thought | No | ||
| evidence | No | ||
| branch_id | No | ||
| confidence | No | ||
| session_id | No | Optional reasoning session id. Defaults to "default". | |
| assumptions | No | ||
| alternatives | No | ||
| next_actions | No | ||
| open_questions | No | ||
| thought_number | Yes | ||
| quality_metrics | No | Quality scores from 0 to 5. | |
| response_format | No | Response format. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description mentions 'update' which aligns with the destructiveHint annotation. However, it does not elaborate on side effects, permissions, or whether updates are reversible. The annotation already indicates destructiveness, so the description adds minimal behavioral context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence efficiently communicates the core action. However, it could be slightly more structured (e.g., listing key fields) without adding length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the high parameter count and presence of nested objects, the description is too brief. It does not mention required thought_number, optional session_id, or response_format, leaving agents without sufficient context for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is low (21%) and the description only mentions a subset of parameters (evidence, confidence, risks, actions, quality metrics). It does not explain format, constraints, or purpose of omitted parameters like tags, assumptions, or alternatives. The quality_metrics object is described in schema but not in the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly indicates the tool updates an existing thought, listing specific fields like evidence, confidence, risks, actions, or quality metrics. This distinguishes it from sibling tools like ultrabrain_think (for generating thoughts) and ultrabrain_validate (for validation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives. It does not specify prerequisites (e.g., thought must exist) or when to prefer ultrabrain_update over ultrabrain_validate or ultrabrain_analyze.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ultrabrain_validateUltrabrain ValidateBRead-onlyIdempotent
Check a reasoning session for evidence, alternatives, verification, bias, and closure gaps.
| Name | Required | Description | Default |
|---|---|---|---|
| strict | No | ||
| session_id | No | Optional reasoning session id. Defaults to "default". | |
| response_format | No | Response format. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint true, destructiveHint false, idempotentHint true, and openWorldHint false, covering key behavioral traits. The description adds a list of what is checked but does not disclose additional traits such as permissions or side effects. With annotations present, the description adds modest context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the action 'Check', no extraneous words. Could be slightly more structured (e.g., using a list) but is efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 13 sibling tools and no output schema, the description lacks details about return format or scoring. It doesn't explain the effect of the 'strict' parameter or what the output looks like, leaving the agent uncertain about the tool's complete behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description does not explain any of the three parameters (session_id, strict, response_format). Input schema has 67% coverage (descriptions for session_id and response_format), but the description adds no extra meaning or constraints beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Check' and identifies the resource 'reasoning session' with five clear aspects (evidence, alternatives, verification, bias, closure gaps), distinguishing it from sibling tools like ultrabrain_analyze or ultrabrain_review.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like ultrabrain_analyze or ultrabrain_review. It does not mention when-not scenarios or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v1.0.6- Added
ultrabrain_server_info
5 tool updates
v1.0.5- Added
ultrabrain_export - Added
ultrabrain_history - Added
ultrabrain_reset - Added
ultrabrain_review - Added
ultrabrain_update
6 tool updates
v1.0.4- Added
ultrabrain_branch - Removed
ultrabrain_export - Added
ultrabrain_metrics - Removed
ultrabrain_review - Added
ultrabrain_start - Added
ultrabrain_status
8 tool updates
v1.0.3- Removed
ultrabrain_branch - Removed
ultrabrain_history - Removed
ultrabrain_metrics - Removed
ultrabrain_reset - Changed
ultrabrain_review1 field changed- changed
Input schema / properties / format / enumPrevious value: -[ - "summary", - "linear", - "tree", - "markdown", - "json" -]New value: +[ + "summary", + "linear", + "tree", + "markdown", + "json", + "mermaid" +]
- Removed
ultrabrain_start - Removed
ultrabrain_status - Removed
ultrabrain_update
14 tool updates
v1.0.0- First observed
ultrabrain_analyze - First observed
ultrabrain_branch - First observed
ultrabrain_export - First observed
ultrabrain_history - First observed
ultrabrain_merge - First observed
ultrabrain_metrics - First observed
ultrabrain_reset - First observed
ultrabrain_review - First observed
ultrabrain_start - First observed
ultrabrain_status - First observed
ultrabrain_templates - First observed
ultrabrain_think - First observed
ultrabrain_update - First observed
ultrabrain_validate
TDQS
Scored across 15 tools
The tools share a common session/thought subject and the analytics/reporting cluster (metrics, analyze, validate, status, review, export) overlaps in what it returns. Descriptions do help, but an agent could easily pick the wrong inspection tool for a given task.
All tools consistently share the ultrabrain_ prefix and use snake_case, creating a predictable surface. However, the suffixes mix bare verbs (think, merge, validate) with nouns (metrics, history, status), so it is not a strict verb_noun pattern.
Fifteen tools is at the high end of a reasonable scope for a reasoning-session server. Most tools serve a distinct lifecycle purpose, though the analytics/reporting cluster could be consolidated without losing much capability.
The toolset covers session creation, thought progression, branching, merging, validation, analysis, export, and reset. Minor gaps exist, such as no obvious way to list all available sessions or a dedicated delete operation, but reset and server_info partially compensate.
Maintenance
Related MCP Connectors
Zero-secret MCP gateway for AI agents: risk-scored, audited calls with human-in-the-loop approval.
- WauldoOAuthcom.wauldo
Stateless agentic tools over MCP: concept extraction, long-context, knowledge graph, planning.
MCP-Native LLM Orchestration Agent
AI Reasoning Cache & Consensus Layer with 11 MCP tools via Streamable HTTP.
Related MCP Servers
- AlicenseBqualityNot gradedmaintenanceMCP server for structured reasoning with cognitive trap detection, verification, and context compression541 npm1-
- AlicenseAqualityDmaintenanceA structured problem-solving MCP server that breaks down complex tasks into sequential steps, supports iterative refinement and branching, and helps maintain context and explore alternative reasoning paths.143 npm42MIT
- AlicenseAqualityDmaintenanceStructured reasoning MCP server that decomposes problems into atomic steps (premise, reasoning, hypothesis, verification, conclusion) with confidence scoring, live visualization, and approval feedback.390MIT
- FlicenseAqualityDmaintenanceA structured reasoning and problem-solving MCP server that helps track step-by-step analysis with confidence levels, branching, and revisions, ideal for complex multi-step tasks like code optimization and debugging.1-