Inkdropapp Mcp Server

by andyciggy

352 downloads Not rated yet Apache-2.0 license

About

## Inkdrop MCP Server A [Model Context Protocol](https://github.com/modelcontextprotocol) server for the [Inkdrop Local HTTP Server API](https://developers.inkdrop.app/data-access/local-http-server). <a href="https://glama.ai/mcp/servers/c7fgtnckbv"> <img width="380" height="200"…

Details

License
Apache-2.0 license

Explore

- Retrieve full note content by ID (read-note)
- Search notes by keyword with advanced qualifiers (search-notes)
- List notebooks and tags with built‑in tools
- Create new notes with markdown body and optional status
- Update existing notes with CouchDB MVCC revision tokens
- Results in search-notes and list-notes include truncated bodies (200 chars)

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Inkdropapp Mcp Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

1. Set up a local HTTP server

2. Add server config to Claude Desktop:
- MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
- Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "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"
      }
    }
  }
}

noteId

The ID of the note to retrieve. It can be found as `_id` in the note docs. It always starts with `note:`.

keyword

Keyword to search for.

bookId

The notebook ID. It always starts with 'book:'.

tagIds

An array of tag IDs to filter. Each starts with 'tag:'.

sort

Sort field (`updatedAt`, `createdAt`, or `title`). Default: `updatedAt`.

descending

Reverse the order of output. Default: `true`.

title

The note title.

body

The content of the note in Markdown.

status

The note status (`none`, `active`, `onHold`, `completed`, `dropped`).

_id

The note ID. Must start with 'note:'.

_rev

The revision ID (CouchDB MVCC-token).

1. read-note: Retrieve the complete contents of the note by its ID from the database.
- Required inputs:
- noteId: The ID of the note to retrieve. It can be found as _id in the note docs. It always starts with note:.
2. search-notes: List all notes that contain a given keyword.
- Required inputs:
- keyword: Keyword to search for.
- Note: Results include truncated note bodies (200 characters). Use read-note to get full content.
- Supports advanced search qualifiers like book:, tag:, status:, title:, etc.
3. list-notes: List all notes with specified conditions.
- Required inputs:
- bookId: The notebook ID. It always starts with 'book:'.
- Optional inputs:
- tagIds: An array of tag IDs to filter. Each starts with 'tag:'.
- keyword: Keyword to filter notes.
- sort: Sort field (updatedAt, createdAt, or title). Default: updatedAt.
- descending: Reverse the order of output. Default: true.
- Note: Results include truncated note bodies (200 characters). Use read-note to get full content.
4. create-note: Create a new note in the database.
- Required inputs:
- bookId: The notebook ID. Must start with 'book:' or be 'trash'.
- title: The note title.
- body: The content of the note in Markdown.
- Optional inputs:
- status: The note status (none, active, onHold, completed, dropped).
5. update-note: Update an existing note in the database.
- Required inputs:
- _id: The note ID. Must start with 'note:'.
- _rev: The revision ID (CouchDB MVCC-token).
- bookId: The notebook ID. Must start with 'book:' or be 'trash'.
- title: The note title.
- body: The content of the note in Markdown.
- Optional inputs:
- status: The note status (none, active, onHold, completed, dropped).
6. list-notebooks: Retrieve a list of all notebooks.
7. list-tags: Retrieve a list of all tags.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "inkdropapp mcp server": {
            "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"
                }
            }
        }
    }
}

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"
        }
    }
}

A Model Context Protocol server for the Inkdrop Local HTTP Server API.

<a href="https://glama.ai/mcp/servers/c7fgtnckbv">
Inkdrop Server MCP server
</a>

Installation

1. Set up a local HTTP server

2. Add server config to Claude Desktop:
- MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
- Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "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"
      }
    }
  }
}

Components

Tools

1. read-note: Retrieve the complete contents of the note by its ID from the database.
- Required inputs:
- noteId: The ID of the note to retrieve. It can be found as _id in the note docs. It always starts with note:.
2. search-notes: List all notes that contain a given keyword.
- Required inputs:
- keyword: Keyword to search for.
- Note: Results include truncated note bodies (200 characters). Use read-note to get full content.
- Supports advanced search qualifiers like book:, tag:, status:, title:, etc.
3. list-notes: List all notes with specified conditions.
- Required inputs:
- bookId: The notebook ID. It always starts with 'book:'.
- Optional inputs:
- tagIds: An array of tag IDs to filter. Each starts with 'tag:'.
- keyword: Keyword to filter notes.
- sort: Sort field (updatedAt, createdAt, or title). Default: updatedAt.
- descending: Reverse the order of output. Default: true.
- Note: Results include truncated note bodies (200 characters). Use read-note to get full content.
4. create-note: Create a new note in the database.
- Required inputs:
- bookId: The notebook ID. Must start with 'book:' or be 'trash'.
- title: The note title.
- body: The content of the note in Markdown.
- Optional inputs:
- status: The note status (none, active, onHold, completed, dropped).
5. update-note: Update an existing note in the database.
- Required inputs:
- _id: The note ID. Must start with 'note:'.
- _rev: The revision ID (CouchDB MVCC-token).
- bookId: The notebook ID. Must start with 'book:' or be 'trash'.
- title: The note title.
- body: The content of the note in Markdown.
- Optional inputs:
- status: The note status (none, active, onHold, completed, dropped).
6. list-notebooks: Retrieve a list of all notebooks.
7. list-tags: Retrieve a list of all tags.

Debugging

Since MCP servers run over stdio, debugging can be challenging. For the best debugging
experience, we strongly recommend using the MCP Inspector.

You can launch the MCP Inspector via npm with this command:

npx @modelcontextprotocol/inspector "./dist/index.js"

Be sure that environment variables are properly configured.

Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.

You can also watch the server logs with this command:

tail -n 20 -f ~/Library/Logs/Claude/mcp-server-inkdrop.log
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.