Inkdrop
Interaja com o banco de dados local do aplicativo de anotações Inkdrop por meio de sua API HTTP.
GitHub
57
Experimente este MCPPatrocinadoDocumentação
Servidor MCP do Inkdrop
Um servidor Model Context Protocol para a API do Servidor HTTP Local do Inkdrop.
Instalação
-
Adicione a configuração do servidor ao Claude Desktop:
- MacOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- MacOS:
{
"mcpServers": {
"inkdrop": {
"command": "npx",
"args": ["-y", "@inkdropapp/mcp-server"],
"env": {
"INKDROP_LOCAL_SERVER_URL": "http://localhost:19840",
"INKDROP_LOCAL_USERNAME": "your-local-server-username",
"INKDROP_LOCAL_PASSWORD": "your-local-server-password"
}
}
}
}
Componentes
Ferramentas
read-note: Recupera o conteúdo completo da nota pelo seu ID no banco de dados.- Entradas obrigatórias:
noteId: O ID da nota a ser recuperada. Pode ser encontrado como_idnos documentos da nota. Sempre começa comnote:.
- Entradas opcionais:
includeTemplate: Quandotruee a nota possui umsourceTemplateId, também busca esse modelo e incorpora seu corpo (instruções de preenchimento e exemplos) como um bloco de texto extra. Padrão:false.
- Observação: Se a nota foi criada a partir de um modelo, a resposta inclui um link de recurso para o modelo de origem, cujo corpo contém as instruções de preenchimento e exemplos.
- Entradas obrigatórias:
read-backlinks: Recupera backlinks de uma nota — as notas que linkam para ela.- Entradas obrigatórias:
noteId: O ID da nota para encontrar backlinks. Sempre começa comnote:.
- Observação: Cada resultado é retornado como um link de recurso (
inkdrop://note/<id>) apontando para a nota de referência. Os backlinks são encontrados pesquisando todos os corpos das notas pelo URI do link da nota.
- Entradas obrigatórias:
search-notes: Lista todas as notas que contêm uma determinada palavra-chave.- Entradas obrigatórias:
keyword: Palavra-chave para pesquisar.
- Observação: Os resultados incluem corpos de notas truncados (200 caracteres). Use
read-notepara obter o conteúdo completo. - Suporta qualificadores de pesquisa avançados como
book:,tag:,status:,title:, etc.
- Entradas obrigatórias:
list-notes: Lista todas as notas com condições especificadas.- Entradas obrigatórias:
bookId: O ID do caderno. Sempre começa com 'book:'.
- Entradas opcionais:
tagIds: Uma matriz de IDs de tags para filtrar. Cada um começa com 'tag:'.keyword: Palavra-chave para filtrar notas.sort: Campo de ordenação (updatedAt,createdAtoutitle). Padrão:updatedAt.descending: Inverte a ordem da saída. Padrão:true.
- Observação: Os resultados incluem corpos de notas truncados (200 caracteres). Use
read-notepara obter o conteúdo completo.
- Entradas obrigatórias:
create-note: Cria uma nova nota no banco de dados.- Entradas obrigatórias:
bookId: O ID do caderno. Deve começar com 'book:' ou ser 'trash'.title: O título da nota.body: O conteúdo da nota em Markdown.
- Entradas opcionais:
status: O status da nota (none,active,onHold,completed,dropped).tags: Uma matriz de IDs de tags para atribuir à nota. Cada um deve começar com 'tag:'.
- Entradas obrigatórias:
update-note: Atualiza uma nota existente no banco de dados. Apenas os campos fornecidos serão atualizados; campos omitidos permanecem inalterados.- Entradas obrigatórias:
_id: O ID da nota. Deve começar com 'note:'._rev: O ID de revisão (token MVCC do CouchDB).
- Entradas opcionais:
bookId: O ID do caderno. Deve começar com 'book:' ou ser 'trash'.title: O título da nota.body: O conteúdo da nota em Markdown.status: O status da nota (none,active,onHold,completed,dropped).tags: Uma matriz de IDs de tags para atribuir à nota. Cada um deve começar com 'tag:'.
- Entradas obrigatórias:
patch-note: Atualiza o corpo de uma nota existente realizando uma substituição exata de string. Mais eficiente queupdate-notepara pequenas edições em notas grandes, pois economiza tokens. Você deve primeiro ler a nota comread-notepara obter o corpo atual.- Entradas obrigatórias:
_id: O ID da nota. Deve começar com 'note:'._rev: O ID de revisão (token MVCC do CouchDB).old_string: O texto exato a ser encontrado no corpo da nota. Deve corresponder exatamente a uma ocorrência. Inclua contexto circundante suficiente para garantir uma correspondência única.new_string: O texto para substituirold_string. Use uma string vazia para excluir o texto correspondente.
- Entradas obrigatórias:
list-notebooks: Recupera uma lista de todos os cadernos.read-book: Recupera um único caderno pelo seu ID.- Entradas obrigatórias:
bookId: O ID do caderno. Deve começar com 'book:'.
- Entradas obrigatórias:
list-tags: Recupera uma lista de todas as tags.read-tag: Recupera uma única tag pelo seu ID.- Entradas obrigatórias:
tagId: O ID da tag. Deve começar com 'tag:'.
- Entradas obrigatórias:
create-tag: Cria uma nova tag no banco de dados.- Entradas obrigatórias:
name: O nome da tag.
- Entradas opcionais:
color: O tipo de cor da tag (default,red,orange,yellow,olive,green,teal,blue,violet,purple,pink,brown,grey,black). Padrão:default.
- Entradas obrigatórias:
update-tag: Atualiza uma tag existente no banco de dados.- Entradas obrigatórias:
_id: O ID da tag. Deve começar com 'tag:'._rev: O ID de revisão (token MVCC do CouchDB).name: O nome da tag.
- Entradas opcionais:
color: O tipo de cor da tag. Padrão:default.
- Entradas obrigatórias:
Depuração
Como os servidores MCP são executados via stdio, a depuração pode ser desafiadora. Para a melhor experiência de depuração, recomendamos fortemente o uso do MCP Inspector.
Você pode iniciar o MCP Inspector via npm com este comando:
npx @modelcontextprotocol/inspector "./dist/index.js"
Certifique-se de que as variáveis de ambiente estejam configuradas corretamente.
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-inkdrop.log