- Home
- MCP servers
- DEVONthink
DEVONthink
- 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.