
Inkdrop
STDIOMCP server for accessing and managing Inkdrop notes and notebooks
MCP server for accessing and managing Inkdrop notes and notebooks
A Model Context Protocol server for the Inkdrop Local HTTP Server API.
Add server config to Claude Desktop:
~/Library/Application Support/Claude/claude_desktop_config.json
%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" } } } }
read-note
: Retrieve the complete contents of the note by its ID from the database.
noteId
: The ID of the note to retrieve. It can be found as _id
in the note docs. It always starts with note:
.search-notes
: List all notes that contain a given keyword.
keyword
: Keyword to search for.read-note
to get full content.book:
, tag:
, status:
, title:
, etc.list-notes
: List all notes with specified conditions.
bookId
: The notebook ID. It always starts with 'book:'.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
.read-note
to get full content.create-note
: Create a new note in the database.
bookId
: The notebook ID. Must start with 'book:' or be 'trash'.title
: The note title.body
: The content of the note in Markdown.status
: The note status (none
, active
, onHold
, completed
, dropped
).tags
: An array of tag IDs to assign to the note. Each must start with 'tag:'.update-note
: Update an existing note in the database.
_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.status
: The note status (none
, active
, onHold
, completed
, dropped
).tags
: An array of tag IDs to assign to the note. Each must start with 'tag:'.list-notebooks
: Retrieve a list of all notebooks.read-book
: Retrieve a single notebook by its ID.
bookId
: The notebook ID. Must start with 'book:'.list-tags
: Retrieve a list of all tags.read-tag
: Retrieve a single tag by its ID.
tagId
: The tag ID. Must start with 'tag:'.create-tag
: Create a new tag in the database.
name
: The name of the tag.color
: The color type of the tag (default
, red
, orange
, yellow
, olive
, green
, teal
, blue
, violet
, purple
, pink
, brown
, grey
, black
). Default: default
.update-tag
: Update an existing tag in the database.
_id
: The tag ID. Must start with 'tag:'._rev
: The revision ID (CouchDB MVCC-token).name
: The name of the tag.color
: The color type of the tag. Default: default
.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