brain
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_vaultA | Lista archivos .md del vault (path + description del frontmatter). prefix opcional, ej. 'projects'. |
| read_fileA | Devuelve el contenido completo de un archivo del vault (path relativo, ej. 'BRAIN.md'). |
| write_fileA | Crea o REEMPLAZA ENTERO un archivo del vault. Queda en el historial (file_history). |
| append_fileB | Agrega contenido al final de un archivo del vault (lo crea si no existe). Queda en el historial. |
| str_replace_fileC | Reemplazo puntual: 'old' debe aparecer exactamente una vez en el archivo. Queda en el historial. |
| set_frontmatterA | Cambia campos del frontmatter (description, tags, related, name…) sin tocar el contenido. Ej: set_frontmatter("projects/brain.md", {"description": "App de memoria local"}). null borra el campo. Preferila a reescribir el archivo cuando solo cambia un metadato. |
| delete_fileB | Borra un archivo del vault. Recuperable con file_history + restore_file. |
| move_fileA | Mueve o renombra una nota del vault (ej. move_file("idea.md", "projects/idea.md")). Recuperable con file_history + restore_file. No mueve BRAIN.md, profile.md, memory/ ni knowledge/sources/ (los maneja brain). Si otras notas la linkean por path, actualizá esos links. |
| vault_overviewA | Panorama del vault para ordenarlo: carpetas, notas sueltas, sin conexiones o sin descripción, tags repetidos o con variantes y nombres parecidos. No cambia nada. |
| file_historyA | Versiones de un archivo del vault, la más nueva primero (id, fecha, operación). El id sirve para restore_file. |
| restore_fileA | Vuelve un archivo a como quedó en la versión version_id (ver file_history). La restauración también queda en el historial, así que se puede deshacer. |
| add_memoryA | Guarda un hecho duradero sobre el usuario en memory/.md (sin duplicar), con la
fecha en que se guardó. Ej: add_memory("Prefiere respuestas cortas", "Preferencias").
Si este hecho reemplaza a uno anterior (cambió de dirección, de trabajo, etc.), pasá el texto
del hecho viejo en |
| memory_historyC | Hechos superados de una categoría de memoria (los que se reemplazaron con add_memory(..., supersede=...)), con la fecha en que dejaron de valer y qué los reemplazó. |
| list_connectionsA | Conexiones configuradas (otros servers MCP que brain re-expone): nombre, si están activas y sus tools. |
| propose_connectionA | Propone agregar un server MCP a las Conexiones de brain. NO lo agrega: el usuario lo aprueba con un click (en el chat o en Conexiones) viendo el comando o la URL. - Server remoto: url="https://…/mcp" (si pide login, el usuario inicia sesión al aprobar). - Server local: command + args, ej. command="npx", args=["-y", "@modelcontextprotocol/server-github"] o command="uvx", args=["mcp-server-fetch"]. env/headers: claves que pide (ej. {"GITHUB_TOKEN": "…"}). note: una línea que explique qué hace. Si falta un dato (una API key), pediselo al usuario antes. |
| propose_graph_changeA | Propone cambiar conexiones del grafo (el |
| fact_checkA | Verifica afirmaciones con un proceso visible: las separa, busca primero en brain y, si lo guardado no alcanza (y el usuario lo permite en Fact check), busca en internet con consultas a favor y en contra, lee cada página, agrupa las fuentes que no son independientes y da un veredicto por reglas (respaldada, probablemente respaldada, mixta, no concluyente, probablemente falsa, falsa, no verificable) con citas, fechas y limitaciones. No guarda nada en el vault. Tarda: usala cuando el usuario pida verificar algo o cuando haga falta comprobar un dato que no está en brain. Usa las preferencias de Fact check del usuario (nivel, actualidad, fuentes, buscador…). search_web=False: solo brain. |
| inspect_graph_regionA | Solo lee: para cada nota pedida (nombre o ruta, hasta 10), sus vecinos en el grafo y por qué están unidos (link en el texto, related, tag, entidad…), además de su related y tags. Sirve para entender una zona del grafo antes de proponer un cambio con propose_graph_change. |
| read_urlA | Lee una página web y devuelve su texto, SIN guardarla en el vault (para guardarla, save_url). Sirve para leer la documentación de un server MCP antes de proponerlo. |
| refresh_connectorsA | Vuelve a descubrir las tools de todas las conexiones activas (después de conectar una app nueva). |
| list_skillsA | Lista los skills disponibles (skills/*.md) con su description, para decidir cuál aplica. |
| get_skillA | Devuelve el contenido de un skill por nombre (ej. 'mi-skill' o 'mi-skill.md'). |
| save_urlA | Scrapea una URL, la chunkea, la indexa en Chroma y crea/actualiza su .md en knowledge/sources/. Si la URL ya estaba guardada, la actualiza (no duplica). Si el fetch normal no saca texto útil (sitio con mucho JS), renderiza solo con Playwright; render_js=True fuerza ese camino directo. |
| search_knowledgeB | Búsqueda híbrida en las fuentes scrapeadas y lo capturado de conexiones: semántica (sentido) + por palabra exacta (nombres propios, IDs, fechas, números). Devuelve chunks con url, source_md_path, score (similitud semántica, None si solo matcheó por palabra) y match. |
| reindex_keyword_searchA | Reconstruye el índice de búsqueda por palabra desde los .md de knowledge/ (sources, connections, composio). Sirve para fuentes guardadas antes de que existiera la búsqueda híbrida; no re-scrapea ni vuelve a calcular embeddings. |
| list_sourcesA | Lista todas las fuentes scrapeadas (url, cuándo se bajó el contenido actual, cuándo se revisó por última vez, el error de la última actualización si falló, path del .md, título y, si es larga, un resumen corto en 'abstract' para decidir si leerla entera con read_file). |
| refresh_sourcesA | Vuelve a bajar una fuente guardada (path de knowledge/sources/…) o todas si no pasás path. Si la página cambió, actualiza el .md y los índices; si falla, conserva la última copia buena y anota el error. Puede tardar si son muchas. |
| distill_skillA | Junta todo lo que brain tiene sobre |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 28 tools
Most tools target clearly distinct resources: file editing (append/str_replace/set_frontmatter/write), sources, memory, connections, graph and skills are well separated. The only mild overlaps are among the four write/edit tools and between list_vault and vault_overview, but descriptions make the boundaries clear enough.
Names follow a consistent snake_case verb_noun pattern (append_file, save_url, add_memory, propose_connection). A few are noun-based rather than verb-based (file_history, memory_history, fact_check, vault_overview), but the convention is still predictable and readable.
28 tools is on the heavy side, though the server covers several genuinely distinct sub-domains (files, sources, memory, skills, connections, graph, fact-check). It is borderline rather than bloated, but consolidating the write/edit variants could trim it.
File lifecycle is thoroughly covered (read/write/append/replace/frontmatter/delete/move/history/restore), plus sources, memory, connections and graph. Minor gaps remain: no direct memory read/list or full-text search over plain vault notes, though read_file and search_knowledge partially cover these.