Bovedia

io.github.jmpdsevillaPublished by GitHub account jmpdsevillav2.7.0Updated Oct 24, 2026

Memoria personal para Claude Code en notas Markdown; no carga el contexto a ciegas.

Overview

AI-generated overview

Bovedia gives an AI assistant persistent personal memory stored as plain Markdown notes in a local vault, loading only what each task needs.

What you can do
Create, read, search, list and delete notes and categories in a Markdown vault, with an index map of the vault's structure and automatic wikilink updates on moves and renames. Edit notes in place: find and replace, append or prepend content, replace or insert whole sections, and update YAML frontmatter. Read cheaply by peeking at frontmatter and first paragraph, reading a single section, listing headings, or reading only the frontmatter. Maintain links and tags: find broken wikilinks, backlinks and orphan notes, rename wikilinks vault-wide, list and audit tags, merge tag variants. Run vault upkeep: recently updated notes, due scheduled notes, validation, bulk moves, health reports, and snap-
When to use it
Use it when you want an assistant to keep durable memory across sessions in notes you own and can edit in any text editor, rather than reloading all context each time. Suited to people who organize projects, clients and reference material in a folder of Markdown files, optionally synced through iCloud, OneDrive, Google Drive or Dropbox.
Requirements
Runs locally over stdio via npx or a cloned repository; needs Node.js 18 or higher and an MCP client such as Claude Code. Point it at your vault with the KB_MEMORY_ROOT environment variable (defaults to ~/Documents/bovedia). Optional: KB_TOOLS=core to expose only daily-use tools, KB_ENABLE_ANNOTATIONS=1 for authorship tools, and KB_AUTHOR_NAME / KB_AUTHOR_EMAIL for the signature.
Before you install
Tools write, move, rename and delete notes and folders in your vault, and some rewrite wikilinks or frontmatter across many notes at once; take a snapshot first and use dry-run modes where offered. The README suggests saving credentials and decisions in notes, so keep secrets out of a synced folder. Authorship migration rewrites existing notes and should be dry-run first. The public repository is described as frozen while development continues privately.

Installation

In SourceWeft

  1. Open Bovedia in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

BovedIA

Memoria personal para Claude Code: tus notas en Markdown, tuyas y para siempre.

[Node.js] [License: MIT] [MCP Compatible]

Estado del proyecto (28 de agosto de 2026). BovedIA se sigue desarrollando a diario, pero en un repositorio privado: el trabajo del día a día se hace sobre una instalación real y sus pruebas contienen datos de clientes y agenda personal, así que publicarlo tal cual no es una opción responsable.

Lo que hay aquí es una versión estable, completa y probada (v2.8.1, 89 pruebas): funciona, se mantiene instalable y su licencia MIT no cambia. No está abandonada — está congelada a propósito.

Cuando haya material que pueda salir limpio (el módulo de agenda para Apple, la memoria por activación, la búsqueda semántica local), se publicará aquí. Sin fecha comprometida.


Qué es BovedIA

BovedIA (bóveda + IA) es un servidor MCP que le da a Claude Code —y a cualquier cliente MCP— memoria persistente. Tus notas viven en archivos Markdown planos, en tu disco, sincronizados en la nube si quieres. La IA puede leerlas, crearlas, buscarlas y organizarlas durante cualquier sesión de trabajo.

Pero BovedIA no es solo el motor. Es también una forma de organizar la memoria para que la IA llegue a cada conversación ligera y enfocada, en vez de arrastrar todo el contexto de golpe. Esa forma va incluida en el vault-example/ de este repositorio, lista para adaptar.


La idea de fondo: no cargar todo de golpe

Casi todos los sistemas de memoria vuelcan todo el contexto en cada sesión. BovedIA parte de lo contrario: traer solo lo que el caso pide, en el momento en que lo pide. Cargar de más no es solo trabajo desperdiciado — condiciona y ensucia la respuesta.

Para lograrlo, la bóveda se recorre por niveles (la pirámide):

  1. El router (Inicio). La única nota que se lee siempre, al empezar cada conversación. No contiene el trabajo: contiene el criterio para decidir qué cargar y cuándo. Si la señal es clara, la IA actúa; si no, pregunta.
  2. Las portadas de rama. Cada gran área (proyectos, clientes, infraestructura…) tiene una portada que el router carga solo cuando el tema entra por ahí.
  3. Las notas. El contenido real, al que se llega desde su portada o por búsqueda.

Y una capa aparte, el alma: la carpeta donde se vuelca lo que uno piensa y siente — el porqué de fondo, la mentalidad, la manera de mirar el trabajo. No es documentación: es lo que hace que la memoria deje de ser un archivador y empiece a ser continuidad.


Por qué así

  • Simple: un solo archivo de servidor (index.js), una sola dependencia.
  • Tuyo: las notas son archivos .md en tu disco — sin bases de datos, sin APIs externas.
  • Portátil: funciona con iCloud, OneDrive, Google Drive, Dropbox o cualquier carpeta local.
  • Transparente: abres y editas tus notas en cualquier editor de texto.

La estructura de la bóveda: para qué sirve cada carpeta

El vault-example/ trae una estructura de referencia lista para usar. No es una jaula: crea las categorías que tu trabajo pida. Pero enseña el método completo.

Carpeta / archivoPara qué sirve
Inicio.mdEl router. Primera nota que se lee en cada sesión: decide qué cargar y cuándo. No carga a ciegas.
HOME.mdEl mapa. Qué carpeta es qué y dónde va cada cosa.
una-tarea-pendiente.mdEjemplo de pendiente sin fecha, en la raíz, marcado con #pendiente.
programado/Notas con fecha de activación (> APARECER: AAAA-MM-DD). El router avisa cuando llega el día.
sistema/Cómo funciona todo: la pirámide (regla madre), las portadas de rama y los protocolos de sesión.
alma/Filosofía y mentalidad; dónde se vuelca lo que uno piensa y siente. Fondo, no operativa.
proyectos/Tus proyectos propios.
clientes/Una subcarpeta por cliente, con su perfil y contexto.
conocimiento/Saber de oficio reutilizable, incluidos los problemas-resueltos/.
referencias/Guías, técnicas y recursos que se consultan pero no cambian a menudo.

Instalación

Opción rápida: npx

No necesitas clonar nada. Añade esto a la configuración MCP de tu cliente (Claude Code, Claude Desktop…) y copia el vault-example/ a tu carpeta como punto de partida:

json
{  "mcpServers": {    "bovedia": {      "command": "npx",      "args": ["-y", "bovedia"],      "env": { "KB_MEMORY_ROOT": "/ruta/absoluta/a/tu/boveda" }    }  }}

El resto de esta sección es la instalación manual (clonando el repo), útil si quieres modificar el código.

Requisitos

  • Node.js 18 o superior
  • Claude Code (npm install -g @anthropic-ai/claude-code)
  • Una carpeta sincronizada en la nube (iCloud, OneDrive, Google Drive, Dropbox) — o cualquier carpeta local

1. Clonar el repositorio

bash
git clone https://github.com/jmpdsevilla/BovedIA.gitcd BovedIA/servernpm install

2. Crear tu bóveda

Copia la bóveda de ejemplo a tu carpeta sincronizada y personaliza HOME.md e Inicio.md:

bash
# Mac + iCloudcp -r vault-example ~/Library/Mobile\ Documents/com~apple~CloudDocs/mi-boveda
# Windows + OneDrive (PowerShell)xcopy /E /I vault-example "%USERPROFILE%\OneDrive\mi-boveda"
# Linux + Dropboxcp -r vault-example ~/Dropbox/mi-boveda

3. Configurar Claude Code

Apunta el servidor a tu bóveda con la variable KB_MEMORY_ROOT (acepta rutas con ~):

json
{  "mcpServers": {    "bovedia": {      "command": "node",      "args": ["/ruta/absoluta/a/BovedIA/server/index.js"],      "env": {        "KB_MEMORY_ROOT": "/ruta/absoluta/a/tu/mi-boveda"      }    }  }}

Si no defines KB_MEMORY_ROOT (ni su alias MEMORY_PATH), BovedIA usa ~/Documents/bovedia por defecto.

4. Verificar

Reinicia Claude Code y pide leer Inicio, o ejecutar get_index. Deberías ver tu bóveda.


Anotaciones de autoría (opcional)

BovedIA soporta opcionalmente Markdown Annotations, una spec abierta originalmente de iA Writer que registra qué autor escribió qué parte de cada nota. Cuando se activa, las notas escritas por la IA llevan al final un bloque que atribuye el cuerpo a &Claude; cuando un humano edita la nota en un editor compatible, sus rangos quedan marcados como @nombre, y la siguiente vez que BovedIA toque la nota preserva esa autoría en vez de sobrescribirla.

Está desactivado por defecto. Para activarlo, añade KB_ENABLE_ANNOTATIONS=1 al entorno del servidor:

json
{  "mcpServers": {    "bovedia": {      "command": "node",      "args": ["/ruta/absoluta/a/BovedIA/server/index.js"],      "env": {        "KB_MEMORY_ROOT": "/ruta/absoluta/a/tu/mi-boveda",        "KB_ENABLE_ANNOTATIONS": "1"      }    }  }}

Con la opción activa se desbloquean dos herramientas: read_authorship (resumen de quién escribió qué) y migrate_annotations (añade el bloque a todas las notas existentes; ejecútala con dry_run: true primero). La firma se puede personalizar con KB_AUTHOR_NAME y KB_AUTHOR_EMAIL.

Solo actívalo si usas un editor compatible con la spec: los que no la soportan mostrarán el bloque como texto plano al final del archivo.


Las herramientas

38 en total. Las 36 primeras funcionan siempre. Las 2 de autoría (read_authorship, migrate_annotations) solo se exponen si arrancas el servidor con KB_ENABLE_ANNOTATIONS=1.

El listado de herramientas viaja en cada sesión y ocupa contexto. Si tu cliente tiene poca ventana, arranca con KB_TOOLS=core y se expondrán solo las 15 de uso diario (la mitad de tokens). Por defecto se exponen todas.

Lectura y escritura base

HerramientaQué hace
write_noteCrear o actualizar una nota (upsert completo)
read_noteLeer una nota (busca en todas las categorías)
search_notesBuscar por texto libre (lógica AND, sin distinguir acentos)
list_notesListar notas, filtradas por categoría o etiqueta
get_indexMapa de categorías (full: true para el detalle)
delete_noteEliminar una nota (avisa de backlinks)
create_categoryCrear una carpeta
move_noteMover/renombrar una nota (actualiza wikilinks)
delete_categoryEliminar una carpeta vacía

Edición dirigida

HerramientaQué hace
edit_noteBuscar/reemplazar dentro de una nota
append_to_noteAñadir contenido al final
prepend_to_noteInsertar contenido al principio
update_sectionReemplazar una sección por su encabezado
insert_after_sectionInsertar una sección nueva tras otra

Mantenimiento de wikilinks y tags

HerramientaQué hace
list_broken_linksTodos los wikilinks rotos de la bóveda
find_backlinksBacklinks de una nota (sin cargar su contenido)
find_orphansNotas sin backlinks ni enlaces salientes
rename_wikilinkSustituir [[viejo]] por [[nuevo]] en toda la bóveda
list_tagsTodos los hashtags #snake_case con su recuento
update_frontmatterActualizar campos YAML sin tocar el cuerpo

Lecturas baratas

HerramientaQué hace
peek_noteFrontmatter + primer párrafo
read_sectionSolo una sección
list_sectionsÍndice de encabezados de una nota, sin su contenido
read_frontmatterSolo el YAML

Mantenimiento de la bóveda

HerramientaQué hace
recently_updatedNotas modificadas en los últimos N días
move_categoryRenombrar una carpeta (actualiza el frontmatter de cada nota)
validate_noteRevisar frontmatter, hashtags, "Ver también" y enlaces rotos
bulk_moveMover varias notas a la misma categoría
due_notesLa lista de notas programadas que ya toca sacar hoy, avisando de las que parecen ya hechas o duplicadas. Solo la lista: el contenido se lee al elegir una tarea
audit_tagsSalud de las etiquetas (y corrección de las mal formadas)
prune_tagsFusionar variantes y recortar las notas con etiquetas de más
vault_healthParte de salud de la bóveda en una sola llamada
create_snapshotCopia de seguridad completa, a demanda
list_snapshotsVer las copias disponibles
restore_snapshotVolver a una copia anterior (simula por defecto)
migrate_yaml_tagsBajar al cuerpo las etiquetas que quedan en el frontmatter YAML

Autoría (con KB_ENABLE_ANNOTATIONS=1)

HerramientaQué hace
read_authorshipResumen de qué autor escribió qué rangos
migrate_annotationsAñadir el bloque de autoría a las notas existentes

Referencia completa en docs/tools-reference.md.


Protocolo de uso

Añade esta instrucción a tu CLAUDE.md o a la configuración del asistente para sacarle todo el partido:

Al empezar cada sesión: leer Inicio (el router). Revisar la carpeta programado/y avisar de lo que ya toca. No cargar nada más "por si acaso".Guardar lo que merezca recordarse: credenciales, soluciones, decisiones, comandos.Enlazar las notas con wikilinks [[slug]]. Cada nota termina con una sección"Ver también" con 2-5 wikilinks.

Wikilinks

Las notas se enlazan entre sí con el formato [[slug]]:

markdown
## Ver también
- [[proyecto-ejemplo]] — proyecto donde se usa esto- [[cliente-ejemplo]] — cliente al que pertenece

Reglas:

  • Usa el slug del nombre de archivo (kebab-case, sin .md).
  • Sin rutas: [[referencias/x]] → [[x]].
  • Sin alias: [[x|otro texto]] → [[x]].

Cuando una nota se renombra, sus wikilinks se actualizan automáticamente.


Guías de instalación detalladas


Autor

Creado por José Manuel Pérez, fundador de santa marta crea — agencia digital. Santa Marta, Colombia.


Licencia

MIT — libre para usar, modificar y distribuir.

Source: README.md at commit 0be2d35

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v2.7.0LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts