DEVONthink

Exposes DEVONthink operations via MCP, enabling record management and bibliography metadata resolution.
  • typescript

0

GitHub Stars

typescript

Language

4 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "tombener-devonthink-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "github:TomBener/devonthink-mcp"
      ],
      "env": {
        "BIBLIOGRAPHY_BIB": "/path/to/bibliography.bib",
        "BIBLIOGRAPHY_JSON": "/path/to/bibliography.json"
      }
    }
  }
}

This MCP server exposes DEVONthink functionality through the Model Context Protocol, enabling you to list, search, create, modify, and manage records and databases in DEVONthink Pro from any MCP client. It also includes tools to resolve bibliography metadata for DEVONthink attachments based on exported bibliography data, making it easier to link references to your documents.

How to use

You connect to the DEVONthink MCP server from an MCP client (such as Claude or your own MCP UI) and call tools by name with the parameters you provide. Use the tools to inspect DEVONthink state, search for records, create and move items, modify properties and tags, and retrieve content. When you need bibliography associations, use the dedicated bibliography metadata tools to map DEVONthink attachments to exported bibliography data. All tool inputs are validated and responses are returned in structured JSON so you can reliably build automation and workflows.

How to install

Prerequisites: Node.js is recommended for running MCP clients and npm or npx to install server packages. Ensure you have a working shell (bash, zsh, or PowerShell) and write access to the directory where you plan to run the MCP server.

Step 1: Install and run the DEVONthink MCP server using the inline MCP command. This uses npx to fetch the server package and run it with automatic environment setup.

{
  "mcpServers": {
    "devonthink": {
      "command": "npx",
      "args": ["-y", "github:TomBener/devonthink-mcp"]
    }
  }
}
```"}]} ,{

Step 2: If you prefer to specify environment variables for bibliography data, set them in your shell before starting the server or configure them in your MCP client. The primary environment variable is BIBLIOGRAPHY_JSON, which should point to your bibliography export in JSON format.

Step 3: Start the MCP server through your chosen MCP client configuration or by running the command shown in Step 1. The server will expose a set of tools you can invoke from the client.

Configuration, security, and notes

Configuration is designed to be compatible with common MCP clients. You can adjust which bibliography exports are used by setting BIBLIOGRAPHY_JSON (and optionally BIBLIOGRAPHY_BIB) to point to your files. The server prefers JSON exports when both JSON and BibTeX exports are available.

Security considerations: Treat the MCP server as you would other automation endpoints. Use scoped access where possible, and keep sensitive bibliography exports in secure locations. If you enable remote access to the MCP server, ensure you have appropriate authentication and network controls in place.

Examples of common workflows include listing open DEVONthink databases, searching for specific records by name or content, creating new notes or groups, attaching tags, and resolving bibliography metadata to attach to records based on your exported bibliography data.

Tools overview

Below is the core set of MCP tools available for DEVONthink. Each tool validates inputs and returns structured results to help you automate tasks in DEVONthink.

Appendix: Example usage patterns

Example: Check if DEVONthink is running, then search for a project plan and open the corresponding record.

Available tools

is_running

Checks if DEVONthink is currently running and returns whether the MCP backend is active.

create_record

Creates new DEVONthink records such as notes, bookmarks, or groups with specified properties.

delete_record

Deletes records by ID, name, or path.

move_record

Moves records between groups within DEVONthink.

get_record_properties

Retrieves detailed metadata and properties for a given record.

search

Performs text-based searches with configurable options.

lookup_record

Looks up records by filename, path, URL, tags, comment, or content hash (exact matches only).

create_from_url

Creates records from web URLs in multiple formats.

get_open_databases

Lists all currently open DEVONthink databases.

list_group_content

Lists the contents of a specific DEVONthink group.

get_record_content

Retrieves the content of a specific DEVONthink record.

rename_record

Renames a specified DEVONthink record.

add_tags

Adds tags to a specified record.

remove_tags

Removes tags from a specified record.

classify

Provides AI-based classification proposals for a record, with optional database name, comparison type, and tag filtering.

compare

Compares records to identify similarities or provide detailed comparison analysis.

get_bib_metadata

Resolves bibliography metadata for a DEVONthink record or Finder path and returns a top-level citationKey and bibliographyId along with an attachment list and a short metadata summary.

get_records_by_citation_key

Resolves a citation key to its attachment metadata and matching DEVONthink records.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational