Inkdrop

Inkdrop

Official
inkdropapp

Connects to your local Inkdrop note-taking app to search, read, create, and update Markdown notes through Claude conversations.

Integrates with Inkdrop's note-taking application to enable searching, reading, creating, and updating Markdown notes directly within conversations through seven specialized tools for managing notes, notebooks, and tags.

52352 views11Local (stdio)

What it does

  • Search notes by keyword with advanced qualifiers
  • Read full note contents by ID
  • Create new Markdown notes
  • Update existing notes
  • List notes by notebook or tags
  • Manage notebooks and tags

Best for

Knowledge workers managing personal notesResearchers organizing markdown documentationWriters collaborating with AI on note content
Requires local Inkdrop installationSeven specialized note management tools

About Inkdrop

Inkdrop is an official MCP server published by inkdropapp that provides AI assistants with tools and capabilities via the Model Context Protocol. Integrate with Inkdrop to manage notes, notebooks & tags in conversations. Search, read, and update Markdown notes using It is categorized under productivity.

How to install

You can install Inkdrop in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

License

Inkdrop is released under the Apache-2.0 license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

Inkdrop MCP Server

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

Inkdrop Server MCP server

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).
      • tags: An array of tag IDs to assign to the note. Each must start with 'tag:'.
  5. update-note: Update an existing note in the database. Only the fields you provide will be updated; omitted fields remain unchanged.
    • Required inputs:
      • _id: The note ID. Must start with 'note:'.
      • _rev: The revision ID (CouchDB MVCC-token).
    • Optional inputs:
      • 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:'.
  6. patch-note: Update the body of an existing note by performing an exact string replacement. More efficient than update-note for small edits to large notes as it saves tokens. You must first read the note with read-note to get the current body.
    • Required inputs:
      • _id: The note ID. Must start with 'note:'.
      • _rev: The revision ID (CouchDB MVCC-token).
      • old_string: The exact text to find in the note body. Must match exactly one occurrence. Include enough surrounding context to ensure a unique match.
      • new_string: The text to replace old_string with. Use an empty string to delete the matched text.
  7. list-notebooks: Retrieve a list of all notebooks.
  8. read-book: Retrieve a single notebook by its ID.
    • Required inputs:
      • bookId: The notebook ID. Must start with 'book:'.
  9. list-tags: Retrieve a list of all tags.
  10. read-tag: Retrieve a single tag by its ID.
    • Required inputs:
      • tagId: The tag ID. Must start with 'tag:'.
  11. create-tag: Create a new tag in the database.
    • Required inputs:
      • name: The name of the tag.
    • Optional inputs:
      • color: The color type of the tag (default, red, orange, yellow, olive, green, teal, blue, violet, purple, pink, brown, grey, black). Default: default.
  12. update-tag: Update an existing tag in the database.
    • Required inputs:
      • _id: The tag ID. Must start with 'tag:'.
      • _rev: The revision ID (CouchDB MVCC-token).
      • name: The name of the tag.
    • Optional inputs:
      • color: The color type of the tag. Default: default.

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

Alternatives

Related Skills

Browse all skills
ai-assisted-development

Leveraging AI coding assistants and tools to boost development productivity, while maintaining oversight to ensure quality results.

4
teams-channel-post-writer

Creates educational Teams channel posts for internal knowledge sharing about Claude Code features, tools, and best practices. Applies when writing posts, announcements, or documentation to teach colleagues effective Claude Code usage, announce new features, share productivity tips, or document lessons learned. Provides templates, writing guidelines, and structured approaches emphasizing concrete examples, underlying principles, and connections to best practices like context engineering. Activates for content involving Teams posts, channel announcements, feature documentation, or tip sharing.

4
cto-engineering-metrics

Expert methodology for defining, tracking, and interpreting engineering performance metrics including DORA, team health, productivity, and executive reporting.

4
personal-assistant

This skill should be used whenever users request personal assistance tasks such as schedule management, task tracking, reminder setting, habit monitoring, productivity advice, time management, or any query requiring personalized responses based on user preferences and context. On first use, collects comprehensive user information including schedule, working habits, preferences, goals, and routines. Maintains an intelligent database that automatically organizes and prioritizes information, keeping relevant data and discarding outdated context.

3
productivity-helper

Boost your productivity with automated task management

2
cursor-local-dev-loop

Optimize local development workflow with Cursor. Triggers on "cursor workflow", "cursor development loop", "cursor productivity", "cursor daily workflow". Use when working with cursor local dev loop functionality. Trigger with phrases like "cursor local dev loop", "cursor loop", "cursor".

2