Obsidian
Interactuando con Obsidian a través de la API REST
Documentación
Servidor MCP para Obsidian
Servidor MCP para interactuar con Obsidian mediante el plugin comunitario de API REST local.
Componentes
Herramientas
El servidor implementa múltiples herramientas para interactuar con Obsidian:
- list_files_in_vault: Lista todos los archivos y directorios en el directorio raíz de tu bóveda de Obsidian
- list_files_in_dir: Lista todos los archivos y directorios en un directorio específico de Obsidian
- get_file_contents: Devuelve el contenido de un solo archivo en tu bóveda.
- search: Busca documentos que coincidan con una consulta de texto especificada en todos los archivos de la bóveda
- patch_content: Inserta contenido en una nota existente relativo a un encabezado, referencia de bloque o campo de frontmatter.
- append_content: Añade contenido a un archivo nuevo o existente en la bóveda.
- delete_file: Elimina un archivo o directorio de tu bóveda.
Ejemplos de prompts
Es bueno primero instruir a Claude para que use Obsidian. Luego siempre llamará a la herramienta.
Usa prompts como estos:
- Obtén el contenido de la última nota de llamada de arquitectura y resúmelo
- Busca todos los archivos donde se mencione Azure CosmosDb y explícame rápidamente el contexto en el que se menciona
- Resume las últimas notas de la reunión y colócalas en una nueva nota 'summary meeting.md'. Añade una introducción para que pueda enviarla por correo electrónico.
Configuración
Clave de API REST de Obsidian
Hay dos formas de configurar el entorno con la clave de API REST de Obsidian.
- Añadir a la configuración del servidor (preferido)
{
"mcp-obsidian": {
"command": "uvx",
"args": [
"mcp-obsidian"
],
"env": {
"OBSIDIAN_API_KEY": "<your_api_key_here>",
"OBSIDIAN_HOST": "<your_obsidian_host>",
"OBSIDIAN_PORT": "<your_obsidian_port>"
}
}
}
A veces Claude tiene problemas para detectar la ubicación de uv / uvx. Puedes usar which uvx para encontrar y pegar la ruta completa en la configuración anterior en tales casos.
- Crea un archivo
.enven el directorio de trabajo con las siguientes variables requeridas:
OBSIDIAN_API_KEY=your_api_key_here
OBSIDIAN_HOST=your_obsidian_host
OBSIDIAN_PORT=your_obsidian_port
Nota:
- Puedes encontrar la clave de API en la configuración del plugin de Obsidian
- El puerto predeterminado es 27124 si no se especifica
- El host predeterminado es 127.0.0.1 si no se especifica
Inicio rápido
Instalación
API REST de Obsidian
Necesitas el plugin comunitario de API REST de Obsidian en ejecución: https://github.com/coddingtonbear/obsidian-local-rest-api
Instálalo y actívalo en la configuración y copia la clave de API.
Claude Desktop
En MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
En Windows: %APPDATA%/Claude/claude_desktop_config.json
Configuración de servidores no publicados en desarrollo
{
"mcpServers": {
"mcp-obsidian": {
"command": "uv",
"args": [
"--directory",
"<dir_to>/mcp-obsidian",
"run",
"mcp-obsidian"
],
"env": {
"OBSIDIAN_API_KEY": "<your_api_key_here>",
"OBSIDIAN_HOST": "<your_obsidian_host>",
"OBSIDIAN_PORT": "<your_obsidian_port>"
}
}
}
}
Configuración de servidores publicados
{
"mcpServers": {
"mcp-obsidian": {
"command": "uvx",
"args": [
"mcp-obsidian"
],
"env": {
"OBSIDIAN_API_KEY": "<YOUR_OBSIDIAN_API_KEY>",
"OBSIDIAN_HOST": "<your_obsidian_host>",
"OBSIDIAN_PORT": "<your_obsidian_port>"
}
}
}
}
Desarrollo
Compilación
Para preparar el paquete para distribución:
- Sincroniza las dependencias y actualiza el lockfile:
uv sync
Depuración
Dado que los servidores MCP se ejecutan sobre stdio, la depuración puede ser desafiante. Para la mejor experiencia de depuración, recomendamos encarecidamente usar el MCP Inspector.
Puedes lanzar el MCP Inspector mediante npm con este comando:
npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-obsidian run mcp-obsidian
Al lanzarlo, el Inspector mostrará una URL que puedes acceder en tu navegador para comenzar a depurar.
También puedes ver los registros del servidor con este comando:
tail -n 20 -f ~/Library/Logs/Claude/mcp-server-mcp-obsidian.log