br8n
Officialbr8n
Memoria de trabajo propia y portátil. Una plantilla de cerebro en archivos planos y un pequeño servidor MCP que permite que cualquier modelo la lea.
Todo lo que tu equipo ha enseñado a una herramienta de chat sobre cómo se hace el trabajo está dentro del inicio de sesión de otra persona. Cambia de herramienta y vuelves a ser un extraño. Este repositorio es la dirección opuesta: la memoria vive en archivos que posees, y el modelo es solo un lector.
br8n es la práctica de entrega de IA de Branded Mayhem Collective. Esta es la parte abierta: la estructura de archivos y la puerta. La instalación alojada añade recuperación, gobernanza y alguien que lo ejecute contigo — sobre los mismos archivos, que nunca cambian de forma. br8n.io
Qué hay aquí
template/brain/— la estructura del cerebro:how-we-work/,decisions/,exceptions/,handoffs/,voice/. Solo Markdown. Un archivo, una cosa. Escribe el porqué, para que el modelo pueda objetar más tarde.src/— un servidor MCP (stdio) con tres herramientas:brain_list,brain_read,brain_search. La búsqueda devuelve archivo + línea para que las respuestas citen su fuente. Sin vectores, sin índice, sin cuenta. Grep es el punto.
Related MCP server: Universal Memory MCP Server
Úsalo
git clone https://github.com/Branded-Mayhem-Collective-LLC/br8n
cd br8n && npm install && npm run build
cp -r template/brain ~/my-brain # now write in it
node dist/cli.js ~/my-brain # MCP server on stdioClaude Desktop / Claude Code / Cursor (cualquier cliente MCP) — añade:
{ "mcpServers": { "br8n": { "command": "node", "args": ["/path/to/br8n/dist/cli.js", "/path/to/my-brain"] } } }Luego pregúntale al modelo algo que el cerebro sepa. Responde desde el archivo y lo nombra. Cambia de modelo; misma respuesta, mismo archivo.
Por qué archivos
Portátil.
cp -r brain/ new-machine/es toda la migración. Si no puedes hacer eso, no lo posees.Inspeccionable. Puedes leer cada byte que lee el modelo.
Independiente del modelo. La carpeta no le importa qué modelo está al otro lado de MCP.
Puede objetar. Una decisión almacenada con su porqué permite que un modelo diga «esto entra en conflicto con lo que decidiste en marzo». Un historial de chat no puede.
El método es público a propósito
La estructura y este servidor son MIT. Lo que br8n cobra es por manos en una operación real: extraer lo que realmente hay en las cabezas de las personas, dar forma a la recuperación para el rol, ejecutarlo y mantenerlo actualizado. Si prefieres hacerlo tú mismo, empieza aquí — la mayoría debería. El primer curso gratuito está en br8n.io/lab.
No afiliado
br8n en PyPI (un motor de captura de contexto de otro autor) no es este proyecto.
MIT © 2026 Branded Mayhem Collective LLC
Publicación (mantenedores)
npm login && npm publish --access public # 1. claims `br8n` on npm; package.json carries mcpName
mcp-publisher login github # 2. GitHub device-flow auth (org member)
mcp-publisher publish # 3. lists io.github.Branded-Mayhem-Collective-LLC/br8n in the official MCP registryAvailable Tools
3 toolsbrain_listARead-onlyIdempotent
List every markdown file in the brain (relative path, size, last modified).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and non-destructive behavior. The description adds value by specifying the exact scope ('every markdown file') and the output fields, which clarifies what the tool returns without contradicting 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 sentence with no wasted words. It front-loads the action and resource, then appends the relevant output fields in parentheses, making it easy to parse quickly.
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 zero-parameter, read-only list operation with annotations covering safety, the description is complete. It states what is listed, the scope, and the returned fields; no additional information is needed 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?
The tool has zero parameters and the schema is empty, so the baseline is 4. The description adds no parameter details, but none are needed; it instead describes the output characteristics, which is more useful for a parameterless tool.
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 ('List') and clearly identifies the resource ('every markdown file in the brain') plus the fields returned (relative path, size, last modified). This distinguishes it from siblings brain_read and brain_search, which imply reading or searching rather than enumerating.
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 phrase 'List every markdown file' provides clear context for when to use the tool: when the agent needs an inventory of all markdown files. It does not explicitly name alternatives or exclusions, so it stops short of a 5, but the intended usage is evident.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
brain_readARead-onlyIdempotent
Read one file from the brain by relative path (e.g. decisions/2026-03-change-orders.md).
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | relative path inside the brain |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the scope of reading exactly one file and the relative-path constraint, but provides no details on error behavior or return format. These additions are consistent with annotations but minimal.
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 with action front-loaded, a precise resource, and a helpful example. No filler or redundancy; every part earns its place.
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 tool with one required parameter, no output schema, and annotations covering side effects, the description is complete. The example and relative-path wording give the agent everything needed to call it correctly, and sibling tools provide surrounding context.
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% and the schema already describes 'path' as a relative path, so the baseline is 3. The description goes slightly beyond by giving a concrete example (decisions/2026-03-change-orders.md), which clarifies the expected format and nested structure.
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 'Read' with a clear resource ('one file from the brain') and a method ('by relative path') plus a concrete example. This distinguishes it naturally from siblings brain_list and brain_search without ambiguity.
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 the contents of a specific file by path—but does not explicitly contrast with brain_list or brain_search, nor does it state when not to use this tool. The context is clear enough but exclusions/alternatives are left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
brain_searchARead-onlyIdempotent
Literal, case-insensitive search across the brain. Returns file, line number and the matching line, so answers can cite the source.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With annotations indicating readOnlyHint=true and destructiveHint=false, the safety profile is already clear. The description adds useful behavioral details: the search is literal and case-insensitive, and the tool returns source-citing output. However, it does not mention limits or edge cases like pagination or behavior with no matches, which would be extra context beyond 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 one focused sentence that front-loads the key distinction ('Literal, case-insensitive search') and immediately states the return value. Every word earns its place; no fluff or redundant restatement of the tool name.
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 is a simple read-only search with annotations covering safety and idempotence, the description is largely complete. The main missing context is the sibling differentiation and explicit behavior for the 'limit' parameter, but the tool's simplicity and annotations reduce the burden. It does not need to explain return values in detail because it already states them.
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 documents only the parameter names and types; description coverage is 0%. The description adds meaning by stating that the search returns file, line number, and matching line, which clarifies the 'query' parameter's effect. It doesn't explain the 'limit' parameter in detail, but a limit's purpose is fairly evident from its integer type and range. A score of 4 is appropriate because the description compensates for the schema's lack of semantic detail on what a query produces.
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 ('search') and resource ('the brain'), and explicitly states what it returns (file, line number, and the matching line). It clearly distinguishes itself from siblings like brain_list and brain_read by framing itself as a search operation rather than listing or reading.
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 this tool is for locating specific content within the brain, which is distinct from brain_list and brain_read, but it does not explicitly state when not to use it or name alternatives. The phrase 'Literal, case-insensitive search' gives some context on when it is appropriate, but it could more explicitly contrast with sibling tools.
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.
3 tool updates
v0.1.2- First observed
brain_list - First observed
brain_read - First observed
brain_search
TDQS
Scored across 3 tools
Each tool targets a distinct operation: listing all files, reading a specific file, and searching content. There is no overlap or ambiguity in their purposes.
All tools consistently use the 'brain_' prefix with a simple verb pattern (list/read/search), making the API predictable and easy to navigate.
Three tools is minimal but well-scoped for a read-only markdown knowledge base. Each tool serves a necessary and non-redundant function.
The set fully covers the core retrieval workflows: browsing the structure, reading files, and searching content. Write or management operations are absent, but they appear outside the server's stated read-only scope.
Maintenance
Related MCP Connectors
One memory, every AI. A shared, user-owned markdown memory your AI clients read and write over MCP.
Shared long-term memory vault for AI agents with 20 MCP tools.
Person-owned AI memory that learns, not just stores — portable context for any MCP client.
An MCP memory server. One memory your agents share — across models, devices and apps.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceMCP server providing persistent brain storage for LLM agents, including memory, personality, social intelligence, and context management.1MIT
- AlicenseNot gradedqualityDmaintenanceA portable MCP server providing a shared intelligent memory system for any MCP-compatible AI tool, enabling storage, retrieval, extraction, and governance of memories across sessions.23 npmMIT
- AlicenseNot gradedqualityBmaintenanceProvides a file-first personal memory layer for AI agents, enabling them to store and retrieve memories as markdown files with an SQLite index. The MCP server offers read-only search by default, with optional write tools for manual memory addition and conflict resolution.1 npmMIT
- AlicenseNot gradedqualityBmaintenanceMCP server that turns a git-versioned Markdown vault into a queryable memory for AI agents, providing tools like brain_search, brain_read, and brain_neighbors.Apache 2.0