Skip to main content
Glama

Brainz

Server Details

Shared product-knowledge graph for AI agent fleets — vault tools + agent self-signup over MCP.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.1/5.0

Scored across 16 tools

Disambiguation4/5

The tools are mostly cleanly separated into concept graph operations, task lifecycle operations, and vault-level maintenance. The main overlap is between create_task and upsert_concept, since a task is also a concept, and the retrieval cluster (get_concept, search_concepts, list_concepts, get_context, get_related) requires reading descriptions to pick correctly. Overall boundaries are still clear.

Naming Consistency4/5

Most tool names follow a readable verb_noun snake_case pattern: create_task, list_tasks, take_task, complete_task, get_concept, search_concepts, upsert_concept, link_concepts. The few exceptions—dream, onboard, sync, vault_stats—are still understandable but break the otherwise consistent convention.

Tool Count4/5

Sixteen tools is slightly above the typical sweet spot but reasonable for a server covering concept CRUD, graph traversal, task lifecycle, onboarding, sync, and consolidation. Each tool has a recognizable role, though the multi-action meta-tools do add surface area.

Completeness4/5

Core concept and task workflows are well covered: search, read, write, link, delete, create, list, claim, and complete. Minor gaps remain, such as no explicit unlink operation for graph edges and no task reopen/update/release path beyond upsert_concept or complete_task. These are workable but noticeable.

Available Tools

16 tools
complete_taskComplete a taskAInspect

Mark a task done. Sets taskStatus=done + doneAt and appends outcome to the task body as an Outcome section. The result carries a one-line reminder that the rest of the graph is not updated automatically.

NameRequiredDescriptionDefault
idYesId of the task to mark done.
outcomeYesA short account of what was done — appended to the task body as an Outcome section.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false. The description adds valuable behavioral detail: it sets taskStatus=done and doneAt, appends the outcome to the body as an Outcome section, and notes a reminder that the rest of the graph is not updated. It doesn't mention permission requirements or irreversibility, but the added context is substantial.

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

Conciseness5/5

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

Three sentences with zero waste, front-loading the core action and following with precise side effects and a caveat. Every sentence earns its place.

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

Completeness4/5

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

For a simple two-parameter mutation with no output schema, the description covers what is changed, how the outcome is stored, and a behavioral reminder. It lacks error-case or return-value elaboration, but given the annotations and rich schema, it is largely complete.

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

Parameters3/5

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

Schema coverage is 100%, so both parameters are already documented. The description mostly repeats the schema's explanation of `outcome` without adding new syntax, format, or constraints, and says nothing extra about `id`. Baseline 3 is appropriate when the schema does the heavy lifting.

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

Purpose4/5

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

The description states a specific verb ('Mark done') and resource ('task'), and details the exact mutations performed. It does not explicitly differentiate from sibling tools like take_task or create_task, but the purpose is unambiguous.

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

Usage Guidelines3/5

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

Usage is implied by the clear purpose: use when you want to complete a task. However, there are no explicit when/when-not conditions, prerequisites, or named alternatives, leaving the agent to infer context.

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

create_taskCreate a taskAInspect

Turn a finding into first-class work: creates a task-type concept with taskStatus=open and the given relations — part_of a domain, realizes stories/features, governed_by specs — plus codeAreas pointing at where the work lands. Use when you discover work that isn't reflected in the codebase yet (a gap, a needed fix, a follow-up). The task then shows up in list_tasks / take_task and on the Kanban board.

NameRequiredDescriptionDefault
bodyYesMarkdown description of the work. [[wiki-links]] become edges.
tagsNoTags, e.g. a priority tag like "high" or an area tag.
titleYesHuman-readable task title (required, non-empty).
domainNoDomain concept id this task is part_of.
realizesNoStory/feature concept ids this task realizes (creates `realizes` edges).
codeAreasNoRough codebase paths/globs where the work lands.
governedByNoSpec concept ids that govern this task (creates `governed_by` edges).

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare a non-destructive write, so the description's added value is the default state (taskStatus=open), the edge side effects from relations and body wiki-links, and the fact the task surfaces on the Kanban board and in list_tasks. It does not address duplicate detection or whether a failed relation id aborts the whole creation, which are the remaining meaningful unknowns for a mutation.

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

Conciseness4/5

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

Two sentences, front-loaded with the outcome before the usage trigger and the downstream visibility note. The mid-sentence relation list is dense but every clause carries information; nothing is padding.

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

Completeness4/5

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

With 7 parameters, 100% schema coverage, and non-destructive write annotations, the description covers the trigger, the created object's shape, the relation semantics, and the downstream effects. It omits what the call returns (the created task's id?) — tolerable given no output schema, but an agent assembling a follow-up call would benefit from it.

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

Parameters3/5

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

Schema coverage is 100%, so every parameter is already documented in the schema. The description reframes the relation fields conceptually (part_of a domain, realizes stories/features, governed_by specs, codeAreas as landing paths) but adds little syntax or constraint detail beyond the schema — the correct baseline 3.

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

Purpose4/5

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

States a specific verb and resource: creates a `task`-type concept with taskStatus=open, plus the relations (domain, realizes, governed_by, codeAreas) it wires up. It clarifies downstream visibility in list_tasks/take_task, but never contrasts itself with the sibling that could also create concepts (upsert_concept), so sibling differentiation is implied rather than explicit.

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

Usage Guidelines4/5

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

"Use when you discover work that isn't reflected in the codebase yet (a gap, a needed fix, a follow-up)" gives a concrete trigger condition with examples. It stops short of exclusions — nothing says when to prefer upsert_concept or take_task instead — so it is clear context without alternatives.

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

delete_conceptDelete conceptA
Destructive
Inspect

Remove a concept from the vault and all of its outgoing edges. Use to clear a note that is wrong, obsolete, or junk (e.g. a probe or test node that shouldn't be in the graph). Idempotent: deleting an id that doesn't exist is a no-op success (deleted:false), not an error. Deletion is permanent — prefer upsert_concept to correct a note you want to keep. Returns { deleted, id }.

NameRequiredDescriptionDefault
idYesExact concept id (slug) to delete, e.g. "lead-scoring".

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true, and the description adds substantial context beyond them: cascading deletion of outgoing edges, idempotency (deleting a missing id returns deleted:false rather than erroring), and that deletion is permanent. Also discloses the return shape, none of which appears in the structured 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/5

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

Five short sentences, each carrying distinct information – side effect, when to use, idempotency, permanence, return value – with no repetition. The core action and cascade behavior are front-loaded before the caveats.

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

Completeness5/5

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

For a destructive one-parameter tool with no output schema, the description covers everything an agent needs: what gets removed alongside the concept, that the operation is permanent and idempotent, and what the response contains. No meaningful gap remains.

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

Parameters3/5

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

Schema coverage is 100% and the single id parameter is already fully documented including an example, so the description doesn't need to re-describe it. It only adds a behavioral note about ids that don't exist, which is more about idempotency than parameter meaning; baseline 3 applies.

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

Purpose5/5

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

States a specific verb and resource plus the side effect ('remove a concept ... and all of its outgoing edges'), which tells the agent exactly what the operation touches. It is clearly distinguishable from upsert_concept, the only sibling that writes concepts.

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

Usage Guidelines5/5

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

Gives an explicit when-to-use case (wrong, obsolete, or junk notes such as test/probe nodes) and names the alternative for the opposite case: prefer upsert_concept to correct a note you want to keep. The exclusion plus named alternative is exactly what routing needs.

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

dreamDream (nightly consolidation)A
Destructive
Inspect

Dreaming: a scheduled consolidation sweep over this vault. Light stages what changed since the last dream (near-duplicate concepts, finished task outcomes, hygiene counts); REM asks an LLM for proposals; deep applies the ones that pass threshold gates: merges duplicates (edges redirected, the other tombstoned), promotes outcome knowledge into concepts, adds missing links, and files a task for each contradiction. A sweep that would touch too much of the vault is rejected; every applied dream keeps preimages and can be reverted. {action: "status"} shows schedule + last dream; {action: "run"} dreams now; {action: "diary"} reads the Dream Diary; {action: "revert", id} undoes one dream; {action: "configure", enabled?, cadenceHours?} sets it up. Without an LLM only light runs.

NameRequiredDescriptionDefault
idNoWith "revert": the dream id to undo (from "diary" or "status").
limitNoWith "diary": how many entries to return (default 10).
actionYes"status" reports whether dreaming is on, its cadence, the last/next dream and any sweep in flight. "run" starts (or continues) a sweep NOW and advances it as far as one request allows. "diary" returns recent Dream Diary entries (newest first). "revert" undoes one dream via its preimages (requires `id`). "configure" turns dreaming on/off and sets the cadence.
enabledNoWith "configure": turn nightly dreaming on or off.
cadenceHoursNoWith "configure": hours between dreams (default 24).

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the destructiveHint=true annotation by naming exactly what is destroyed and how: duplicate merges redirect edges and tombstone the loser, outcomes are promoted, contradictions become tasks. It discloses safety behavior the annotations cannot: threshold gates reject sweeps that touch too much, and every applied dream keeps preimages and can be reverted.

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

Conciseness4/5

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

Front-loaded with the core purpose and staged behavior, then the action map, with no filler. The action sentence is long and packed but each clause carries distinct operational meaning; a slightly tighter structure would earn a 5.

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

Completeness5/5

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

For a complex, destructive, open-world mutation tool with no output schema, the description covers the pipeline, thresholds, LLM dependency, rejection behavior, and reversibility. An agent has enough context to call all five actions safely without needing return-value documentation.

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

Parameters3/5

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

Schema description coverage is 100%, so all five parameters and the action enum are already fully documented in the schema. The description restates the action semantics (status/run/diary/revert/configure) but adds no syntax, defaults, or constraints beyond what the schema provides, so the baseline 3 applies.

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

Purpose5/5

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

States a specific verb and resource: a scheduled consolidation sweep over the vault, broken into light, REM, and deep stages. It is unmistakably distinct from every sibling (no other tool performs consolidation or dreaming), so an agent can identify it without opening the schema.

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

Usage Guidelines4/5

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

The description routes each action clearly: status for schedule/state, run to dream now, diary to read entries, revert with id to undo, configure to enable/cadence. It also notes that without an LLM only light runs, which is a real usage constraint. It does not explicitly say when to prefer this over manual curation via siblings, but the tool is unique enough that this is a minor gap.

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

get_conceptGet conceptA
Read-only
Inspect

Fetch one concept by exact id: full markdown body, metadata, and its direct graph neighbors (each with the relation that connects it). Use after search_concepts or when another note wiki-links an id you need in full. The neighbors list tells you what to fetch next. If you don't know the id, use search_concepts instead.

NameRequiredDescriptionDefault
idYesExact concept id (slug), e.g. "lead-scoring".

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint, destructiveHint false, openWorldHint false), so the remaining burden is explaining what a call yields. The description does that well by naming the three payload parts and the fact that each neighbor carries its relation. It stops short of saying anything about missing-id behavior or error semantics.

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

Conciseness4/5

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

Opens with the core fetch semantics and return shape, then layers usage routing; nearly every clause earns its place. The closing 'use search_concepts instead' slightly repeats the earlier 'use after search_concepts' framing, a minor redundancy rather than padding.

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

Completeness5/5

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

There is no output schema, so describing return values is mandatory here and the description does it precisely. Combined with annotations covering safety, an agent has everything needed to decide to call it and what to expect afterward.

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

Parameters3/5

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

With 100% schema description coverage and a single required parameter, the schema already defines the id format and gives an example slug. The description reinforces exact-match lookup, but adds no new syntax or constraint details beyond what is structured. Baseline 3 applies.

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

Purpose5/5

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

States a specific verb+resource (fetch one concept by exact id) and immediately enumerates what comes back: full markdown body, metadata, and direct graph neighbors with their connecting relation. It is clearly distinguished from the sibling search_concepts, which returns the ids this tool consumes.

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

Usage Guidelines5/5

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

Gives explicit entry conditions ('Use after search_concepts or when another note wiki-links an id') and an explicit exclusion with the alternative ('If you don't know the id, use search_concepts instead'). It also explains how to continue work ('the neighbors list tells you what to fetch next'), which no sibling tool description could supply.

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

get_contextAssemble context bundleA
Read-only
Inspect

Assemble a markdown briefing of the concepts most relevant to a query and/or explicit ids, expanded through the graph and trimmed to a token budget. The briefing is self-contained, so it can be handed to another agent or pasted into a prompt as-is. The final JSON line reports which concept ids were included, whether the bundle was truncated, and its approximate token count. Provide at least one of query or ids.

NameRequiredDescriptionDefault
idsNoExplicit seed concept ids (kept first, in order).
depthNoGraph hops to expand from the seeds (default 1).
queryNoSearch query used to pick seed concepts.
productNoRestrict expansion to concepts of this product.
tokenBudgetNoApproximate token cap for the bundle (chars/4, default 4000).

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, non-destructive, closed-world), and the description adds genuinely new behavior: the output is a self-contained markdown briefing, it may be truncated to a token budget, and a final JSON line reports included ids, truncation status, and token count. Missing only details like ranking behavior or what happens when the budget is too small to fit even seeds.

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

Conciseness5/5

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

Four tight sentences, front-loaded with the core action and artifact, followed by output-format details and the input constraint. Every sentence carries information an agent needs; no filler.

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

Completeness5/5

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

With no output schema, the description steps up to explain the return shape (self-contained markdown plus a final JSON line with ids/truncated/token count) and the invocation constraint. Together with annotations covering safety and the schema covering parameters, an agent has everything needed to call it correctly.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3; the description adds value beyond the schema by stating the cross-parameter constraint that at least one of `query` or `ids` must be supplied — a requirement not encoded in the schema (required: []). It does not further explain depth, product, or tokenBudget semantics beyond the schema, so it is not a 5.

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

Purpose5/5

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

States a specific verb (assemble) and a specific artifact (markdown briefing of concepts expanded through the graph), plus the scoping inputs (query/ids) and the trimming constraint. It is clearly distinguishable from siblings like search_concepts, get_concept, and get_related, which return raw concepts rather than a budgeted bundle.

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

Usage Guidelines4/5

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

Provides a concrete usage context — self-contained briefing to hand to another agent or paste into a prompt — and an explicit input constraint ('Provide at least one of `query` or `ids`'). It does not name sibling alternatives or state when not to use it, so it falls short of a full routing guide.

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

list_conceptsList conceptsA
Read-only
Inspect

Enumerate concept metadata (no bodies), optionally filtered by product, type, or a single tag. Use to get the lay of the land in an unfamiliar vault, to audit what exists (e.g. all decisions for a product), or when search vocabulary isn't matching. For content, follow up with get_concept or get_context.

NameRequiredDescriptionDefault
tagNoOnly concepts carrying this tag.
typeNoOnly concepts of this type.
productNoOnly concepts of this product.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover readOnly/non-destructive/no open-world, so the remaining burden is low. The description still adds a meaningful trait the annotations don't: results are metadata only, no bodies. It omits any note on result volume, ordering, or pagination, which matters for a parameterless listing tool.

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

Conciseness5/5

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

Three short sentences, front-loaded with the core action and scope, then usage, then the follow-up path. No redundant restatement of the title or annotations.

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

Completeness4/5

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

With no output schema, the description does the most important work by stating that only metadata is returned and pointing at get_concept/get_context for bodies. It stops short of describing what metadata fields come back or how large an unfiltered listing may be.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds real nuance beyond the schema by stressing that all filters are optional and that 'tag' accepts only a single tag, which clarifies the filtering semantics.

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

Purpose5/5

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

States a specific verb and resource ('Enumerate concept metadata') and immediately bounds the scope with '(no bodies)'. The phrase 'when search vocabulary isn't matching' implicitly contrasts it with the search_concepts sibling, so an agent can distinguish listing from searching.

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

Usage Guidelines4/5

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

Gives three concrete activation scenarios: orientation in an unfamiliar vault, auditing existing artifacts (e.g. all decisions for a product), and failed search matches. It also routes follow-up for content to get_concept/get_context, though it never explicitly says when to prefer search_concepts instead.

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

list_tasksList tasksA
Read-only
Inspect

List the vault's work pile: task-type concepts with their lifecycle (open/taken/done), oldest first, including who has taken each one (takenBy). Filter by taskStatus or by the domain the tasks are part_of. Read-only; take_task is what claims a task.

NameRequiredDescriptionDefault
domainNoOnly tasks that are part_of this domain concept id.
taskStatusNoOnly tasks in this lifecycle state ("open" | "taken" | "done"). Omit for all.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already establish readOnlyHint=true, destructiveHint=false, and openWorldHint=false. The description adds useful behavioral detail beyond those annotations: oldest-first ordering, lifecycle states, and inclusion of takenBy. It does not discuss pagination or result limits, but no pagination parameter exists.

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

Conciseness5/5

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

The definition is compact and front-loaded: it states what is listed, ordering, included information, filtering options, and the read-only distinction from take_task in a single efficient passage.

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

Completeness5/5

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

For a simple read-only list tool with two optional, fully documented parameters and no output schema, the description gives enough context to invoke it correctly. It covers ordering, lifecycle, included ownership information (takenBy), and filter behavior.

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

Parameters3/5

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

Schema description coverage is 100%, so both optional parameters are already well documented in the schema. The description mentions taskStatus and domain filtering, but adds little syntax or meaning beyond what the schema provides, making the baseline 3 appropriate.

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

Purpose5/5

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

The description names a specific verb and resource (list tasks), scopes them to the vault's work pile, and explains the lifecycle and included field (takenBy). It also distinguishes the read-only listing behavior from take_task, so an agent can route correctly without opening the schema.

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

Usage Guidelines4/5

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

It states the two filtering modes, taskStatus and domain, and explicitly points to take_task for claiming a task. It does not explicitly compare against list_concepts or search_concepts, but the usage context is clear.

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

onboardOnboard this vaultAInspect

Index an existing product's codebase into this vault. {action: "start"} returns the onboarding playbook: a method for surveying the codebase and recording its product knowledge (domains, features, stories, specs, workflows, decisions, constraints) as concepts via upsert_concept, each anchored to the code with codeAreas. {action: "status", areaList} reports onboarded state, concept counts and, given your repo's source areas (Brainz can't read the repo), which areas are covered or uncovered. {action: "complete", summary, areaList} marks the vault onboarded and stores the summary; it is rejected while too many areas are uncovered. Until onboarding completes, search_concepts and get_context results include a one-line note saying so.

NameRequiredDescriptionDefault
actionYes"start" returns the onboarding playbook, "complete" marks the vault onboarded (requires `summary`), "status" reports onboarded state and concept counts.
summaryNoRequired with "complete": 2–5 sentences on what was indexed and any notable gaps — stored as the product-onboarding-summary concept.
areaListNoWith "status" or "complete": the repo's top-level source areas (packages/*, apps/*/src subtrees, major dirs) from your own repo walk — Brainz can't read the repo. "status" diffs concepts' code_areas against this to report covered vs uncovered areas; "complete" is REJECTED if too many areas are still uncovered.
repoHintNoWith "start": where the codebase lives (path or URL), echoed into the playbook.
productNameNoWith "start": the product's name, echoed into the playbook heading.

TDQS

A4.7/5.0
Behavior5/5

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

The description discloses behavior beyond the annotations: complete is conditionally rejected, the summary is stored as a concept, and incomplete onboarding causes a note to appear in search_concepts and get_context results. It also explains why areaList must come from the caller because Brainz cannot read the repo.

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

Conciseness5/5

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

The description is front-loaded with the core purpose and then devotes one dense, purposeful sentence to each action. There is no filler, and the most important workflow effects are placed early.

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

Completeness5/5

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

For a stateful onboarding workflow with no output schema, it explains what each action returns or stores, the rejection condition for completion, and cross-tool side effects. An agent has enough context to choose an action and call it correctly.

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

Parameters4/5

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

Schema coverage is already 100%, so this is judged on added meaning. The description reinforces conditional parameter combinations, such as areaList being supplied for status and complete and summary being required for complete, and explains the consequence of uncovered areas.

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

Purpose5/5

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

The description opens with a specific verb and resource: 'Index an existing product's codebase into this vault.' It then characterizes the three actions and how onboarding relates to upsert_concept, making the tool's scope clear without needing sibling comparison.

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

Usage Guidelines4/5

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

It gives precise per-action usage: start returns the playbook, status reports coverage, and complete stores the summary and is rejected when too many areas are uncovered. It does not explicitly compare against alternatives like sync or upsert_concept, but the action-level routing is very clear.

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

search_conceptsSearch conceptsA
Read-only
Inspect

Search the product knowledge vault by free-text query. Useful when you need product knowledge but don't yet know which concept ids exist. Returns ranked hits (id, title, type, score, snippet) only; get_concept returns one full note and get_context an assembled briefing. An empty hit list means nothing matched.

NameRequiredDescriptionDefault
modeNoSearch mode. "hybrid" (default) fuses keyword and semantic ranking; semantic silently falls back to keyword if embeddings are unavailable.hybrid
tagsNoOnly return concepts carrying ALL of these tags.
typeNoOnly return concepts of this type.
limitNoMax hits to return (default 10).
queryYesFree-text search query, e.g. "lead scoring" or "session auth".
productNoOnly return concepts belonging to this product.

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so the description's added value is in disclosing the return shape (id, title, type, score, snippet) and the meaning of an empty hit list. That is real context beyond the annotations. It stops short of covering result-size behavior at the limit boundary or the fact that ranking can degrade to keyword-only, though the latter is documented in the schema.

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

Conciseness5/5

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

Four sentences, front-loaded with the purpose, then usage, then return contract, then the empty-result edge case. No sentence is filler and nothing important is buried.

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

Completeness5/5

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

Six parameters with full schema coverage and no output schema, so the description must carry return semantics, which it does by naming the five hit fields and explaining the empty list. Combined with explicit sibling routing, an agent has everything needed to call it correctly and interpret the response.

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

Parameters3/5

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

Schema coverage is 100% and each of the six parameters, including the mode enum and its semantic-to-keyword fallback, is documented in the schema. The description adds only the notion of 'free-text query' and says nothing about mode, tags, type, product, or limit, so this is the baseline case where the schema does the work.

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

Purpose5/5

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

Specific verb ('Search') plus specific resource ('the product knowledge vault') qualified by 'free-text query'. It also names what comes back (ranked hits) and explicitly separates itself from get_concept and get_context, so the agent can choose without opening other schemas.

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

Usage Guidelines5/5

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

The condition is stated directly: use this 'when you need product knowledge but don't yet know which concept ids exist.' It then routes to the two natural alternatives, get_concept for one full note and get_context for an assembled briefing, which is an explicit when/when-not split.

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

syncSync this vault to the current codeAInspect

Re-index an onboarded vault after the code changes (drift). {action: "start"} returns the sync playbook: the vault's last_synced_at, a coverage map over the concepts' code_areas, and a method for re-indexing only what changed (you run git — Brainz can't read the repo — and pass back changedPaths + areaList): update stale concepts in place, add concepts or tasks for new work, and report coverage gaps. {action: "status", areaList} reports onboarded state, last sync time, staleness, concept counts and coverage. {action: "complete", summary, areaList} stamps last_synced_at and appends the summary to the product-onboarding-summary concept (a running sync log). After ~14 days without a sync, get_context and search results include a one-line note saying so.

NameRequiredDescriptionDefault
actionYes"start" returns the sync (re-onboard) playbook — a DRIFT playbook scoped to what changed since the last sync (NOT the full onboarding playbook). "complete" records last_synced_at and appends the summary to the running sync log (requires `summary`). "status" reports onboarded state, last sync time, concept counts, staleness, and (with areaList) coverage.
summaryNoRequired with "complete": 2–5 sentences on what changed, what you updated, and what you indexed — APPENDED to the product-onboarding-summary concept as a running sync log (never overwritten).
areaListNoWith "start", "status", or "complete": the repo's top-level source areas from your own repo walk (Brainz can't read the repo). Used to compute the coverage map (covered vs uncovered areas) — "complete" is REJECTED if too many areas are still uncovered.
productNameNoWith "start": the product's name, echoed into the playbook heading.
changedPathsNoWith "start": paths you found CHANGED since last_synced_at (from your own git diff/log). The playbook focuses the fan-out on the areas these fall under.

TDQS

A4.1/5.0
Behavior5/5

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

With annotations only covering safety flags, the description carries and delivers the real behavioral burden: the agent must supply repository data because 'Brainz can't read the repo', `complete` mutates last_synced_at and appends (never overwrites) to a concept, `complete` is rejected when coverage gaps are too large, and after ~14 days without a sync get_context and search results gain a staleness note — a cross-tool side effect not visible in annotations.

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

Conciseness4/5

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

Purpose is front-loaded and each sentence maps to a distinct action or consequence, with no filler. It is dense and slightly redundant with the schema's own parameter text (the append behavior and coverage rejection are stated twice), which keeps it short of a 5.

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

Completeness5/5

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

There is no output schema, yet the description tells the agent what each action returns: `start` yields a drift playbook with last_synced_at, a coverage map and a re-index method; `status` yields onboarded state, staleness and counts. Combined with the mutation side effects and the ~14-day staleness consequence, an agent can call this correctly without further context.

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

Parameters3/5

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

Schema coverage is 100% and the schema descriptions already state the git-walk provenance, the append-not-overwrite behavior, and the rejection rule, so the description largely repeats structured data. It does tie the parameters to the workflow ('you run git ... and pass back changedPaths + areaList'), which adds modest value, but the baseline of 3 applies when the schema does the heavy lifting.

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

Purpose4/5

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

The opening sentence gives a specific verb and resource — 'Re-index an onboarded vault after the code changes (drift)' — and the three action modes (start/status/complete) are each spelled out. The prerequisite ('an onboarded vault') implicitly separates it from the `onboard` sibling, though it never names `onboard` explicitly as the alternative for a first pass; that contrast only appears in the schema.

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

Usage Guidelines4/5

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

Each action has a stated purpose and the description explains the operating sequence: run git yourself, pass back changedPaths + areaList, then call complete to stamp the sync. It doesn't explicitly say when NOT to use it (e.g., for a vault that was never onboarded, or how it relates to `onboard`), so guidance is clear but not exhaustive.

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

take_taskTake a task off the pileAInspect

Claim a task and get its briefing in one call. Pass an id to claim a specific task, or omit it to claim the next open task (oldest open by createdAt then id). Atomically flips the task to "taken" and records takenBy/takenAt; errors if it's already taken or done. Returns the task and a get_context-style briefing for its part_of domain plus the concepts it realizes / is governed_by (with code_areas). complete_task marks it done.

NameRequiredDescriptionDefault
idNoClaim this specific task by id. Omit to claim THE next open task (oldest by createdAt then id).
takenByNoLabel for who's claiming it (agent/orchestrator name). Defaults to a generic label.

TDQS

A4.7/5.0
Behavior5/5

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

Annotations only say it is a non-destructive, closed-world mutation; the description goes well beyond that by disclosing atomicity ('atomically flips the task to "taken"'), the exact state written (takenBy/takenAt), and the error case for already-taken/done tasks. It also pre-announces the shape of the payload (task plus a get_context-style briefing with concepts and code_areas), which is exactly what an agent needs before calling a claim tool.

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

Conciseness5/5

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

Four tight sentences, front-loaded with the action, then the two invocation modes, then side effects, then the return payload and the follow-on tool. No sentence is filler.

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

Completeness5/5

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

With no output schema, the description compensates by describing what comes back (the task plus a get_context-style briefing with part_of domain, concepts, code_areas). Combined with the disclosed error conditions and atomicity, nothing essential to correct invocation is missing.

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

Parameters3/5

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

Schema description coverage is 100% and both parameters are already documented there, including the ordering rule and the takenBy default. The description largely restates the `id` semantics rather than adding new meaning, so the baseline 3 applies.

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

Purpose5/5

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

States a specific verb and resource ('Claim a task') plus the bundled side effect ('get its briefing in one call'), which distinguishes it cleanly from list_tasks, create_task and complete_task. An agent can tell what this does without opening the schema.

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

Usage Guidelines5/5

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

Explicitly branches usage: pass an `id` for a specific task, omit it to claim the next open task with a stated ordering (oldest by createdAt then id). It also names the follow-on sibling ('complete_task marks it done') and states the failure condition (already taken or done).

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

upsert_conceptCreate or update conceptA
Destructive
Inspect

Write a concept note into the vault (creates or overwrites the markdown file, then reindexes it). Use to capture new product knowledge discovered during a task — a decision made, a constraint hit, a pattern adopted — so future agents can find it. Omit id to derive a slug from the title; pass an existing id to update that note. Body is markdown; [[wiki-links]] to other concept ids create graph edges. Returns the saved concept's metadata.

NameRequiredDescriptionDefault
idNoConcept id (slug). Omit to derive from title; pass an existing id to update.
bodyYesMarkdown body. [[other-id]] wiki-links become graph edges.
tagsNoTags for filtering.
typeNoConcept type (default "concept"). The 11 built-in types are concept, domain, feature, story, spec, workflow, task, decision, constraint, pattern, glossary; a vault may also define custom types. An unknown type falls back to "concept".
titleYesHuman-readable title (required, non-empty).
doneAtNoFor tasks: ISO timestamp when completed.
statusNoLifecycle status (default "active").
productNoProduct grouping key.
takenAtNoFor tasks: ISO timestamp when claimed.
takenByNoFor tasks: label of the agent/orchestrator that claimed it.
codeAreasNoRough codebase paths/globs where this knowledge lives, e.g. ["packages/core/src/vault.ts", "apps/web/src/routes/**"] — lets agents briefed by get_context know where to apply it.
relationsNoTyped edges, e.g. {"depends_on": ["auth-system"]}. Conventions: part_of (feature/story/task → domain), realized_by (story → features), realizes (task → stories/features), governs (spec → what it constrains), governed_by (task → specs), depends_on, constrains, supersedes, related_to. For domain concepts, prefer linking to OTHER domains (related_to / depends_on) wherever they share a boundary or hand off responsibility — connected domains reveal how the product's areas overlap instead of floating as isolated islands.
taskStatusNoFor type="task" concepts: lifecycle "open" | "taken" | "done" (default "open"). Prefer the task tools (create_task / take_task / complete_task) over setting this directly.

TDQS

A4.1/5.0
Behavior4/5

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

Adds real context beyond the annotations: the write is an overwrite of a markdown file followed by a reindex, which substantiates the destructiveHint=true flag rather than contradicting it. It also discloses the return shape. A 5 would need to say what an overwrite does to fields not supplied (e.g. are tags/relations cleared), which is the main behavioral risk for an upsert.

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

Conciseness4/5

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

Four tight sentences with the mutation behavior front-loaded and the create-vs-update rule following it; nothing is padding. Minor overlap with schema descriptions keeps it from a 5.

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

Completeness4/5

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

Covers return values verbally since there is no output schema, and handles the create/overwrite distinction for a 13-parameter tool with nested relations. The gap is update semantics: it never says whether an overwrite preserves or drops existing tags, relations, or status.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 13 parameters, including id derivation and wiki-link semantics. The description restates the id and body behavior without adding syntax or format detail not already present. Baseline 3 applies when the schema does the heavy lifting.

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

Purpose5/5

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

States a specific verb and resource — writes a concept note into the vault — and immediately clarifies the create-or-overwrite semantics plus the reindex side effect. This distinguishes it cleanly from read-side siblings like get_concept and search_concepts, and from the task-specific create_task.

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

Usage Guidelines4/5

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

Gives a concrete when-to-use framing (capture decisions, constraints, patterns discovered during a task) and explains the id-omitted vs id-passed branching for create vs update. It stops short of naming exclusions or deferring explicitly to siblings like create_task or link_concepts, which would be needed for a 5.

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

vault_statsVault statsA
Read-only
Inspect

Summarize the vault: counts of concepts and edges, the products and tags in use, a breakdown by concept type, and whether semantic search is available. Useful for gauging how much knowledge is here and which product/tag filters exist.

NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, destructiveHint=false and openWorldHint=false, so safety is covered. The description adds value beyond that by disclosing the return payload's contents — including the non-obvious availability flag for semantic search, which an agent would otherwise have to discover empirically. It does not discuss cost, caching, or freshness, keeping it short of a 5.

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

Conciseness5/5

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

A single sentence, front-loaded with the verb and resource, followed by a compact enumeration of return fields and one clause on usefulness. No filler or repetition of the title.

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

Completeness4/5

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

With no parameters, no output schema and a simple read-only surface, the description covers what an agent needs: what is counted and what filters can be discovered. Minor gap: no mention of response shape or whether counts are live/approximate, though this is low risk for a stats call.

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

Parameters4/5

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

Zero parameters, so there is nothing to disambiguate; the baseline for a no-arg tool applies. Nothing in the description is needed or wasted on parameter semantics.

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

Purpose5/5

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

States a specific verb (summarize) and resource (the vault), then enumerates exactly what the summary contains: concept/edge counts, products, tags, concept-type breakdown, and semantic-search availability. No sibling tool (list_concepts, search_concepts, get_context) produces aggregate statistics, so it is easy to distinguish from the rest of the toolset.

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

Usage Guidelines3/5

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

"Useful for gauging how much knowledge is here and which product/tag filters exist" implies a discovery/orientation use case, which is real guidance. But it never says when not to use it or routes to alternatives (e.g., use list_concepts to enumerate contents vs. this for aggregates), so the agent must infer the boundary.

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. 16 tool updates
    • First observedcomplete_task
    • First observedcreate_task
    • First observeddelete_concept
    • First observeddream
    • First observedget_concept
    • First observedget_context
    • First observedget_related
    • First observedlink_concepts
    • First observedlist_concepts
    • First observedlist_tasks
    • First observedonboard
    • First observedsearch_concepts
    • First observedsync
    • First observedtake_task
    • First observedupsert_concept
    • First observedvault_stats

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    A
    maintenance
    MCP-native knowledge base for AI agents — vault-scoped docs, tables, and files, git-versioned, with hybrid search (BM25 + pgvector dense + reranker) and an event stream so external consolidators / gardeners stay decoupled.
    50
    163
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables teams of AI coding agents (Claude Code, Cursor, Codex) to share persistent, time-aware graph memory and coordinate their work via MCP, so agents recall verified fixes at the moment of failure, learn procedures automatically, avoid file conflicts, claim tasks race-free, and hand off facts and decisions between sessions.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources