Obsidian
Interagindo com o Obsidian via API REST
Documentação
Servidor MCP para Obsidian
Servidor MCP para interagir com o Obsidian via o plugin comunitário Local REST API.
Componentes
Ferramentas
O servidor implementa várias ferramentas para interagir com o Obsidian:
- list_files_in_vault: Lista todos os arquivos e diretórios no diretório raiz do seu vault do Obsidian
- list_files_in_dir: Lista todos os arquivos e diretórios em um diretório específico do Obsidian
- get_file_contents: Retorna o conteúdo de um único arquivo no seu vault.
- search: Pesquisa documentos que correspondem a uma consulta de texto especificada em todos os arquivos do vault
- patch_content: Insere conteúdo em uma nota existente relativa a um cabeçalho, referência de bloco ou campo de frontmatter.
- append_content: Adiciona conteúdo a um arquivo novo ou existente no vault.
- delete_file: Exclui um arquivo ou diretório do seu vault.
Exemplos de prompts
É bom primeiro instruir o Claude a usar o Obsidian. Então ele sempre chamará a ferramenta.
Use prompts como estes:
- Obtenha o conteúdo da última nota de chamada de arquitetura e resuma-os
- Pesquise todos os arquivos onde Azure CosmosDb é mencionado e explique-me rapidamente o contexto em que é mencionado
- Resuma as últimas notas de reunião e coloque-as em uma nova nota 'summary meeting.md'. Adicione uma introdução para que eu possa enviá-la por e-mail.
Configuração
Chave da API REST do Obsidian
Existem duas maneiras de configurar o ambiente com a chave da API REST do Obsidian.
- Adicione à configuração do 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>"
}
}
}
Às vezes, o Claude tem problemas para detectar a localização do uv / uvx. Você pode usar which uvx para encontrar e colar o caminho completo na configuração acima nesses casos.
- Crie um arquivo
.envno diretório de trabalho com as seguintes variáveis obrigatórias:
OBSIDIAN_API_KEY=your_api_key_here
OBSIDIAN_HOST=your_obsidian_host
OBSIDIAN_PORT=your_obsidian_port
Nota:
- Você pode encontrar a chave da API na configuração do plugin do Obsidian
- A porta padrão é 27124 se não for especificada
- O host padrão é 127.0.0.1 se não for especificado
Início rápido
Instalação
Obsidian REST API
Você precisa do plugin comunitário Obsidian REST API em execução: https://github.com/coddingtonbear/obsidian-local-rest-api
Instale e habilite-o nas configurações e copie a chave da API.
Claude Desktop
No MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
No Windows: %APPDATA%/Claude/claude_desktop_config.json
Configuração de Servidores Não Publicados
{
"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>"
}
}
}
}
Configuração 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>"
}
}
}
}
Desenvolvimento
Compilação
Para preparar o pacote para distribuição:
- Sincronize as dependências e atualize o lockfile:
uv sync
Depuração
Como os servidores MCP rodam sobre stdio, a depuração pode ser desafiadora. Para a melhor experiência de depuração, recomendamos fortemente usar o MCP Inspector.
Você pode iniciar o MCP Inspector via npm com este comando:
npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-obsidian run mcp-obsidian
Ao iniciar, o Inspector exibirá uma URL que você pode acessar no seu navegador para começar a depurar.
Você também pode observar os logs do servidor com este comando:
tail -n 20 -f ~/Library/Logs/Claude/mcp-server-mcp-obsidian.log