Obsidian Omnisearch
Busca en tu bóveda de Obsidian usando el plugin Omnisearch a través de una API REST.
Documentación
Servidor MCP Obsidian Omnisearch
Un servidor basado en FastMCP que proporciona funcionalidad de búsqueda en bóvedas de Obsidian a través de una interfaz de API REST.
Descripción general
Este proyecto implementa un servicio de búsqueda que permite buscar notas en bóvedas de Obsidian de forma programática. Utiliza FastMCP para exponer la funcionalidad de búsqueda como una herramienta que puede integrarse con otros servicios.
Características
- Búsqueda en notas de bóvedas de Obsidian
- Integración con API REST
- Devuelve rutas absolutas a las notas coincidentes
- Fácil integración con herramientas FastMCP
Requisitos previos
- Python 3.x
- Obsidian con el plugin Omnisearch instalado y en ejecución
- Biblioteca FastMCP
- Bóveda de Obsidian activa
Instalación
Instalación mediante Smithery
Para instalar MCP Server Obsidian Omnisearch para Claude Desktop automáticamente a través de Smithery:
npx -y @smithery/cli install @anpigon/mcp-server-obsidian-omnisearch --client claude
Instalación manual
- Clonar el repositorio:
git clone https://github.com/anpigon/mcp-server-obsidian-omnisearch.git
cd mcp-server-obsidian-omnisearch
- Instalar dependencias:
uv install
Configuración
La ruta de la bóveda de Obsidian ahora se proporciona como un argumento de línea de comandos al ejecutar el servidor:
python server.py /path/to/your/obsidian/vault
Uso
API de Obsidian Omnisearch
Necesitas el plugin comunitario Obsidian Omnisearch en ejecución: https://publish.obsidian.md/omnisearch/Inject+Omnisearch+results+into+your+search+engine
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
{
"mcpServers": {
"obsidian-omnisearch": {
"command": "uv",
"args": [
"--directory",
"<dir_to>/mcp-server-obsidian-omnisearch",
"run",
"mcp-server-obsidian-omnisearch",
"/path/to/your/obsidian/vault"
]
}
}
}
Configuración de Servidores Publicados
{
"mcpServers": {
"obsidian-omnisearch": {
"command": "uvx",
"args": [
"mcp-server-obsidian-omnisearch",
"/path/to/your/obsidian/vault"
]
}
}
}
Referencia de la API
Buscar notas
- Función:
obsidian_notes_search(query: str) - Descripción: Busca notas de Obsidian y devuelve rutas absolutas a las notas coincidentes
- Parámetros:
query: Cadena de consulta de búsqueda
- Devuelve: Lista de rutas absolutas a las notas coincidentes
Desarrollo
Compilación y publicación
Para preparar el paquete para su distribución:
- Sincronizar dependencias y actualizar el archivo de bloqueo:
uv sync
- Compilar distribuciones del paquete:
uv build
Esto creará distribuciones de código fuente y wheel en el directorio dist/.
- Publicar en PyPI:
uv publish
Nota: Necesitarás configurar las credenciales de PyPI mediante variables de entorno o banderas de comando:
- Token:
--tokenoUV_PUBLISH_TOKEN - O nombre de usuario/contraseña:
--username/UV_PUBLISH_USERNAMEy--password/UV_PUBLISH_PASSWORD
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 a través de npm con este comando:
npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-server-obsidian-omnisearch run mcp-server-obsidian-omnisearch
Al iniciar, 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-server-obsidian-omnisearch.log
Dependencias
- FastMCP
- requests
- urllib
Licencia
Este proyecto está licenciado bajo la Licencia MIT - consulta el archivo LICENSE para más detalles.
Contribuciones
¡Las contribuciones son bienvenidas! No dudes en enviar una Solicitud de Extracción (Pull Request).