Token导航 LogoToken导航TokenDH.com
Devon (Mnott) logo
文档知识stdio官方级别未说明来源级核验

Devon (Mnott)

MCP Server

@tekmidian/devon

提供33个工具实现DEVONthink与Claude Code的无缝集成,支持搜索、文档管理、AI功能等。

工具数

33

提示词数

0

GitHub Stars

3

资源数

0
文档处理搜索工具TypeScriptClaudeClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

mnott

提供方

mnott

最后核验

2026/5/17 20:21

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx @tekmidian/devon setup

详细介绍

德文

为Claude Code开发MCP服务器。零配置设置——一个命令就完成了。

33个工具,用于完整的DEVONthink集成——搜索、CRUD、AI、标签、智能组、电子邮件线程等。所有MIT许可,除MCP SDK外无外部依赖。

______________________________________________________________________

快速开始

如果你有克劳德密码,只需问:

“嘿,克劳德,从github.com/mnott/Devon克隆Devon并为我设置它”

Claude将克隆仓库,构建它,配置 ~/.claude.json,并启用服务器。重新启动Claude Code,所有33个DEVONthink工具都可用。

______________________________________________________________________

它提供了什么

在运行此服务器的情况下,Claude Code可以:

  • 搜索并浏览所有打开的DEVONthink数据库
  • 读取文档内容(PDF、Markdown、纯文本、HTML、富格文本)
  • 创建、更新和删除记录
  • 跨组移动、复制、拷贝和转换记录
  • 添加和删除标签、对文档进行分类、管理元数据
  • 向DEVONthink的内置AI询问文档并创建摘要
  • 将电子邮件与存档文件进行交叉引用
  • 列出和导航数据库组
  • 列出智能组和智能规则(无法通过AppleScript访问)
  • 解析EML标头以进行电子邮件线程关联
  • 读取并复制列布局配置

______________________________________________________________________

需求

  • macOS(DEVONthink仅适用于macOS)
  • 发展思维3或4 已安装并正在运行
  • Node.js>=18
  • 克劳德代码

______________________________________________________________________

安装

选项1:问克劳德(推荐)

在Claude Code中,让Claude进行设置:

“将Devon从github.com/mnott/Devon克隆到~/ai并对其进行配置”

Claude克隆、构建、配置 ~/.claude.json,并启用MCP服务器。

选项2:安装向导

npx @tekmidian/devon setup

交互式CLI,用于检查先决条件、配置 ~/.claude.json,并启用服务器。

选项3:克隆和构建

git clone https://github.com/mnott/Devon ~/dev/ai/devon
cd ~/dev/ai/devon
npm install
npm run build
node dist/index.js setup

______________________________________________________________________

手动配置

如果您更喜欢手动配置Claude代码,请将其添加到 mcpServers 部分 ~/.claude.json:

"devonthink": {
  "type": "stdio",
  "command": "npx",
  "args": ["-y", "@tekmidian/devon", "serve"],
  "env": {}
}

或者,如果您在本地安装了它:

"devonthink": {
  "type": "stdio",
  "command": "node",
  "args": ["/path/to/devon/dist/index.js", "serve"],
  "env": {}
}

编辑后重新启动Claude代码 ~/.claude.json.

______________________________________________________________________

工具

按类别组织的所有33个工具。

应用

工具说明
is_running检查DEVONthink是否正在运行

数据库

工具说明
get_open_databases列出所有打开的数据库
current_database获取最前端的数据库

记录

工具说明
create_record创建新记录(标记、文本、HTML等)
delete_record按UUID删除记录
get_record_by_identifier通过UUID获取记录
get_record_properties获取记录的元数据属性
get_record_content读取记录的内容
update_record_content更新记录的内容
set_record_properties设置记录的元数据属性
rename_record重命名记录
move_record将记录移动到其他组或数据库
replicate_record在另一个组中创建记录的复制者
duplicate_record创建记录的独立副本
convert_record将记录转换为其他类型

群组

工具说明
list_group_content列出组的内容
selected_records在DEVONthink中获取当前选定的记录

搜索

工具说明
search使用DEVONthink查询语法跨数据库搜索
lookup_record按名称或路径查找记录

标签

工具说明
add_tags向记录添加标签
remove_tags从记录中删除标签

网络

工具说明
create_from_url从URL创建记录(markdown、PDF、网络存档、格式化笔记)

智能

工具说明
classify使用DEVONthink的AI分类对记录进行分类
compare比较两条记录的相似性

人工智能

工具说明
ask_ai_about_documents问DEVONthink内置的AI一个关于文档的问题
check_ai_health检查DEVONthink的AI功能是否可用
create_summary_document创建人工智能生成的文档摘要
get_ai_tool_documentation获取DEVONthink人工智能功能的文档

自定义扩展

这五个工具扩展了核心DEVONthink脚本API,其功能无法通过AppleScript获得。

工具说明
list_smart_groups枚举所有智能组(直接读取plist)
list_smart_rules枚举所有智能规则(直接读取plist)
parse_eml_headers从.eml文件中提取消息ID、引用、主题等
get_column_layout读取智能组的列布局配置
copy_column_layout将列布局从一个智能组复制到另一个

______________________________________________________________________

用法

配置后,Claude Code可以自动访问所有DEVONthink工具。DEVONthink必须在至少一个数据库打开的情况下运行。

示例提示:

  • “在我的DEVONthink数据库中搜索有关第三季度预算的注释”
  • “找到约翰关于合同的电子邮件,并向我展示相关文件”
  • “在我的收件箱中用今天的会议笔记创建一个新的标记笔记”
  • “列出我的Ablegen数据库中标记为'todo'的所有文档”
  • “阅读我昨天导入的PDF的内容”
  • “列出我的智能组”
  • “解析此.eml文件的标头以查找其线程ID”
  • “请DEVONthink的AI总结这些文档”

______________________________________________________________________

自定义工具参考

list_smart_groups

解析 ~/Library/Application Support/DEVONthink/SmartGroups.plist 并返回所有智能组及其名称、UUID、同步日期和 UseUUIDKey 旗帜。

关键限制: 智能组是 无法通过DEVONthink AppleScript脚本字典访问。此工具是枚举它们的唯一编程方式。

参数:

退货:

字段类型描述
successboolean操作是否成功
smartGroupsarray智能组条目列表
totalCountnumber找到的智能组总数

每个条目 smartGroups:

字段类型描述
namestring智能组的显示名称
uuidstringUUID来自 sync.UUID 字段--将其与 search 工具
syncDatestringnull上次同步日期(ISO 8601)
useUuidKeybooleannullDEVONthink是否在内部使用UUID作为键

______________________________________________________________________

list_smart_rules

解析 ~/Library/Application Support/DEVONthink/SmartRules.plist 并返回所有智能规则,包括名称、UUID、启用状态、执行元数据和同步日期。

参数:

退货:

字段类型描述
successboolean操作是否成功
smartRulesarray智能规则条目列表
totalCountnumber找到的智能规则总数

每个条目 smartRules:

字段类型描述
namestring智能规则的显示名称
uuidstringUUID来自 sync.UUID 现场
enabledbooleannull规则当前是否已启用
indexOffsetnumbernull规则列表中的顺序索引
lastExecutionnumbernullCFAbsolute上次执行的时间戳
syncDatestringnull上次同步日期(ISO 8601)
useUuidKeybooleannullDEVONthink是否在内部使用UUID作为键

______________________________________________________________________

parse_eml_headers

读取RFC 2822 .eml 文件,并提取电子邮件线程关联所需的MIME标头。

处理Subject、From和To字段中的CRLF和LF行尾、折叠标头(连续行)和RFC 2047编码单词。

只读取文件的前64KB,因为标头始终位于开头。

参数:

参数类型必填说明
filePathstringyes绝对路径 .eml 文件

退货:

字段类型描述
successboolean解析是否成功
filePathstring读取的路径
messageIdstringnullMessage-ID 标题值
inReplyTostringnullIn-Reply-To 标题值
referencesstring\[\]来自的消息ID数组 References 头球
subjectstringnull解码主题行
fromstringnull发件人地址
tostringnull收件人地址
ccstringnullCC地址
datestringnull标题中的日期字符串

______________________________________________________________________

get_column_layout

从以下位置读取命名智能组或智能规则的列布局 ~/Library/Preferences/com.devon-technologies.think.plist.

返回有序的可见列、所有表视图列(可见和隐藏)和列宽。支持部分名称匹配。

参数:

参数类型必填说明
namestringyes智能组或智能规则的显示名称
uuidstring如果名称查找失败,UUID回退

退货:

字段类型描述
successboolean是否找到布局
namestring搜索到的名称
resolvedKeystring实际使用的plist键
columnsstring\[\]null显示顺序中可见的列
tableViewColumnsstring\[\]null所有列标识符(可见+隐藏)
widthsobjectnull列标识符到宽度的映射
keysFoundstring\[\]存在哪些plist键

______________________________________________________________________

copy_column_layout

将列布局从一个智能组或智能规则复制到另一个。所有布局键都是使用Python的原子编写的 plistlib.

必须重新启动DEVONthink(或关闭并重新打开智能组窗口)才能使更改生效。

参数:

参数类型必填说明
sourceNamestringyes源智能组的名称
targetNamestringyes目标智能组的名称
sourceUuidstringno源的UUID回退
targetUuidstringno目标的UUID(在UUID键下编写的布局)

______________________________________________________________________

工作流

智能组发现和内容查询

智能组是由搜索条件定义的虚拟视图,它们不是AppleScript脚本字典的一部分。使用此两步模式:

第一步: 枚举所有智能组。

list_smart_groups

第二步: 使用查询内容 search 随着 groupUuid.

search
  query: ""
  groupUuid: "4A469368-94FD-46D3-9A62-ED7C24D822D8"
注: list_group_content 使用智能组UUID返回电子邮件消息ID uuid 字段(不是DEVONthink记录UUID)。使用 search 随着 groupUuid 相反,它返回带有日期和正确UUID的正确记录。

______________________________________________________________________

电子邮件线程关联

要将实时电子邮件线程链接回DEVONthink中的存档副本,请使用三层匹配策略:

第1层——线程ID匹配(最高精度)

get_record_properties  uuid: 
parse_eml_headers      filePath: "/path/to/archived/email.eml"

使用 messageId, inReplyTo,以及 references 以精确地关联。

第2层——主题和发件人匹配

search  query: "kind:email subject:\"Contract renewal\" from:jane@example.com"

脱衣 Re:, Fwd:, AW:, WG: 搜索前使用前缀。

第3级——仅受试者(最广泛)

search  query: "kind:email subject:\"Contract renewal\""

______________________________________________________________________

立柱布局管理

get_column_layout   name: "Archivieren - Jobs"
copy_column_layout  sourceName: "Archivieren - Jobs"  targetName: "New Smart Group"

复制后关闭并重新打开智能组窗口(或重新启动DEVONthink)。

______________________________________________________________________

DEVONthink搜索语法

search 该工具支持以下运算符:

操作员示例描述
kind:kind:email按记录类型筛选
name:name:"offer letter"匹配文件名或主题
subject:subject:"interview"电子邮件主题字段
from:from:recruiter@co.com发件人地址
to:to:user@example.com收件人地址
text:text:"stock options"全文内容搜索
tags:tags:jobs标记记录
date:date:2024-01-01~日期范围(~ =之后)
报价单"exact phrase"精确短语匹配
和/或from:x OR from:y 布尔运算符

组合运算符:

kind:email from:@company.com subject:"compensation" date:2023-01-01~2024-12-31

______________________________________________________________________

运作原理

devon 是一个独立的MCP服务器 @modelcontextprotocol/sdk所有33个工具都是在MIT许可证下从头开始实现的,除了MCP SDK之外没有外部依赖关系。

这些工具通过JXA(JavaScript for Automation)与DEVONthink通信,JXA通过以下方式执行 osascript共享的JXA执行器处理脚本构造、转义和结果解析。自定义工具(智能组、智能规则、列布局)使用 PlistBuddy Python的 plistlib 直接读取DEVONthink偏好和数据文件。

与DEVONthink3和DEVONthink4兼容,具有自动应用程序名称检测功能。

______________________________________________________________________

故障排除

“未找到DEVONthink” 确保DEVONthink 3或4已安装在 /Applications 跑步。

“未找到数据库” 在使用MCP工具之前,请至少打开一个DEVONthink数据库。

工具未出现在Claude代码中

  1. 验证 ~/.claude.jsondevonthink 进入
  2. 重新启动Claude Code(不仅仅是一个新会话——完全退出并重新打开)
  3. 检查DEVONthink是否正在运行

AppleScript错误 在“系统设置”>“隐私和安全”>“自动化”中授予Claude Code(或终端)自动化权限。

list_smart_groups 不返回结果或错误 plist格式因DEVONthink版本而异。使用 plutil -p ~/Library/Application\ Support/DEVONthink/SmartGroups.plist 检查原始格式并报告问题。

get_column_layout 返回“未找到布局” 智能组尚未保存自定义列布局。使用 copy_column_layout 从已配置布局的另一个智能组复制布局。

______________________________________________________________________

积分

______________________________________________________________________

许可证

麻省理工学院

目录标签

目录标签

文档处理搜索工具TypeScriptClaude文档管理本地部署AI集成智能分类邮件关联

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

local-only

来源包(packageName,安装包名)

@tekmidian/devon

工具数量(toolCount,工具数)

33

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononelocal-only

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP