Skip to main content
Glama
Alexandre1116

Obsidian Vault API

Obsidian Vault API — Docker

Versión compatible con Docker de Obsidian Vault API. Expone tu bóveda de Obsidian como un servidor MCP, sin necesidad de la aplicación de escritorio de Obsidian. Funciona 24/7 en cualquier servidor o NAS.

El plugin original se ejecuta dentro de Obsidian y utiliza la API de Obsidian + el Canvas de Electron para el procesamiento de imágenes. Esta versión se ejecuta como un proceso independiente de Node.js en Docker, usando operaciones directas de fs y sharp para redimensionar imágenes. Se conservan las 13 herramientas MCP del original.

Inicio rápido

docker-compose (recomendado)

services:
  vault-api:
    build: .
    container_name: obsidian-vault-api
    restart: unless-stopped
    ports:
      - "2768:2768"
    volumes:
      - /path/to/your/vault:/vault
      - vault-api-data:/data
    environment:
      - VAULT_API_KEY=your-secret-key-here

volumes:
  vault-api-data:
docker compose up -d

docker run

docker run -d \
  --name obsidian-vault-api \
  -p 2768:2768 \
  -v /path/to/your/vault:/vault \
  -v vault-api-data:/data \
  -e VAULT_API_KEY=your-secret-key-here \
  ghcr.io/alexandre1116/obsidian-vault-api-docker:latest

Interfaz web

Tras iniciar el contenedor, abre tu navegador y ve a:

http://localhost:2768/

El panel te permite:

  • Ver el estado del servidor (en ejecución/detenido, puerto, nombre de la bóveda)

  • Editar la configuración (puerto, dirección de enlace, comandos permitidos) — los cambios se guardan en /data/config.json y persisten entre reinicios

  • Regenerar la clave API — genera un nuevo secreto, requiere reconectar los clientes

  • Reiniciar / Detener el servidor MCP sin detener el contenedor

  • Copiar información de conexión — URL SSE, configuración JSON de Claude Desktop, clave API

La interfaz web en sí no requiere autenticación (es la página de configuración). Los endpoints MCP (/sse, /message, /raw) requieren la clave API.

Configuración

La configuración se almacena en /data/config.json y persiste entre reinicios del contenedor. Las variables de entorno actúan como anulaciones iniciales en el primer arranque; a partir de entonces, el archivo de configuración es la fuente de verdad.

Variable

Por defecto

Descripción

VAULT_PATH

/vault

Ruta al directorio de la bóveda dentro del contenedor

DATA_DIR

/data

Ruta para el archivo de configuración persistente

VAULT_API_PORT

2768

Puerto en el que escuchar

VAULT_API_BIND

0.0.0.0

Dirección de enlace (0.0.0.0 para Docker / acceso de red)

VAULT_API_KEY

(auto-generada)

Clave API para la autenticación MCP. Si está vacía, se genera y guarda una

VAULT_API_ALLOWED_COMMANDS

*

Patrones glob para comandos de shell permitidos (separados por comas). * = todos

VAULT_API_HOST

127.0.0.1:2768

Host informado en las URL de imágenes (configúralo con tu dirección externa si estás detrás de un proxy)

Conexión de tu cliente de IA

LM Studio / Open WebUI / Cualquier cliente MCP con soporte SSE

Añade la URL del servidor MCP:

http://localhost:2768/sse?key=YOUR_API_KEY

Claude Desktop

Añade a claude_desktop_config.json:

{
  "mcpServers": {
    "obsidian": {
      "url": "http://localhost:2768/sse?key=YOUR_API_KEY"
    }
  }
}

O copia el JSON directamente desde el panel de la interfaz web.

Autenticación

O bien:

  • Parámetro de consulta: ?key=YOUR_API_KEY

  • Encabezado HTTP: X-Api-Key: YOUR_API_KEY

Herramientas disponibles

Herramienta

Descripción

list_files

Lista los archivos de la bóveda — filtra por carpeta o extensión

read_file

Lee archivos de texto, visualiza imágenes, obtén datos binarios como base64

write_file

Crea o actualiza un archivo de texto

write_binary

Crea o sobrescribe un archivo binario a partir de datos base64

append_file

Añade texto a un archivo existente

delete_file

Elimina un archivo

read_frontmatter

Lee el frontmatter YAML como pares clave-valor parseados

update_frontmatter

Establece, actualiza o elimina campos del frontmatter

create_folder

Crea una nueva carpeta

delete_folder

Elimina una carpeta

rename_folder

Renombra o mueve una carpeta

search

Búsqueda por palabras clave en nombres de archivo y contenido

run_local_command

Ejecuta un comando de shell dentro del contenedor, en el directorio de la bóveda

Soporte de imágenes

Las imágenes grandes se redimensionan automáticamente con sharp (Node.js puro, sin Electron):

Tamaño de archivo

Dimensión máxima

Formato

<= 4 MB

Original

Tal cual

4–20 MB

1024 px

JPEG 85%

20–100 MB

800 px

JPEG 85%

> 100 MB

512 px

JPEG 85%

NFS / Montajes de red

El servidor lee los archivos directamente del sistema de archivos en cada llamada de herramienta, sin caché. Los montajes NFS funcionan en tiempo real:

volumes:
  - nfs-vault:/vault

volumes:
  nfs-vault:
    driver: local
    driver_opts:
      type: nfs
      device: ":/path/on/nfs"
      o: addr=10.0.0.1,nfsvers=4

Comprobación de salud

curl http://localhost:2768/health

Devuelve { "status": "ok", "version": "1.1.0" } públicamente. Las solicitudes autenticadas también devuelven vault, port y sessions.

Compilación desde el código fuente

git clone https://github.com/Alexandre1116/Obsidian-Vault-API-Docker
cd Obsidian-Vault-API-Docker
docker compose build
docker compose up -d

O sin Docker:

npm install
npm run build
VAULT_PATH=/path/to/vault VAULT_API_KEY=secret npm start

Diferencias con respecto al plugin original

Original (plugin de Obsidian)

Versión Docker

Entorno de ejecución

Dentro de la aplicación de escritorio de Obsidian

Node.js independiente en Docker

Acceso a archivos

Obsidian Vault API (app.vault)

Node.js fs

Redimensionado de imágenes

API Canvas de Electron

sharp (nativo, sin dependencia de GUI)

Eliminación de archivos

Papelera del sistema (recuperable)

Eliminación permanente

Interfaz de configuración

Pestaña de configuración de Obsidian

Interfaz web en http://host:2768/

Almacenamiento de configuración

Datos del plugin de Obsidian

/data/config.json (volumen de Docker)

Dirección de enlace

Solo 127.0.0.1

Configurable (0.0.0.0 por defecto)

Bridge.js / configuración de Claude

Escrito automáticamente por el plugin

Copiar desde la interfaz web

Licencia

CC BY-NC-SA 4.0 — igual que el proyecto original.

-
license - not tested
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
2Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Serve a folder of Markdown notes as an MCP server: hybrid search, reading, and sourced answers.

  • Markdown-based note-taking with a hosted MCP server. Your notes serve you and your AI.

  • Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Alexandre1116/Obsidian-Vault-API-Docker'

If you have feedback or need assistance with the MCP directory API, please join our Discord server