起草MCP服务器
MCP服务器 草稿 应用程序集成,使Claude能够通过模型上下文协议与您的草稿笔记进行交互。
特性
- 创建草稿 -使用内容、标签和可选操作创建新草稿
- 获取草稿 -按UUID检索特定草稿
- 获取所有草稿 -列出所有带有元数据的草稿(从本地SQLite数据库读取)
- 搜索草稿 -在本地数据库中进行全文搜索
- 附录/前言 -向现有草稿添加文本
- 打开草稿 -在草稿应用程序中打开草稿
- 运行操作 -对文本执行草稿操作
- 搜索UI -打开带有过滤器的草稿搜索界面
需求
安装
1.安装依赖项
# Install mise if not already installed
curl https://mise.run | sh
# Install Node.js via mise
mise install
# Install npm packages
npm install2.建设项目
npm run build3.配置克劳德桌面
增添 ~/.config/claude/claude_desktop_config.json:
{
"mcpServers": {
"drafts": {
"command": "node",
"args": ["/Users/YOUR_USERNAME/sideprojects/drafts-mcp/build/index.js"]
}
}
}替换 /Users/YOUR_USERNAME/sideprojects/drafts-mcp 根据您的实际项目路径。
4.重新启动克劳德桌面
用法
配置后,Claude可以使用以下工具:
create_draft
创建新草稿:
{
text: "Draft content",
tags?: ["tag1", "tag2"],
action?: "Action Name",
folder?: "inbox" | "archive"
}get_draft
按UUID检索草稿:
{
uuid: "draft-uuid-here"
}get_all_drafts
通过读取本地数据库获取所有包含元数据的草稿列表:
{
folder?: "inbox" | "archive" | "trash" | "all",
flagged?: boolean
}返回包含uuid、标题、标签、时间戳和标志的草稿数组。
search_drafts_db
在本地数据库中按文本内容搜索草稿:
{
query: "search text"
}返回匹配的草稿数组。
附录草案
将文本添加到现有草案中:
{
uuid: "draft-uuid-here",
text: "Text to append"
}准备草稿
现有草案的预发文本:
{
uuid: "draft-uuid-here",
text: "Text to prepend"
}open_draft
在草稿应用程序中打开草稿:
{
uuid?: "draft-uuid-here",
title?: "Draft Title"
}run_action
执行草稿操作:
{
action: "Action Name",
text: "Text to process"
}搜索工具
打开草稿搜索UI:
{
query?: "search query",
tag?: "tag-name",
folder?: "inbox" | "archive" | "flagged" | "trash" | "all"
}资源
服务器通过资源公开草稿内容:
draft://uuid/{uuid}-检索特定草稿内容
发展
构建
npm run build观看模式
npm run watch测试
npm test
npm run test:watch棉绒
npm run lint
npm run lint:fix格式
npm run format
npm run format:check建筑
- 回拨服务器 -Express服务器在随机端口上处理x-callback-url响应
- 草稿客户 -带有重试逻辑的URL方案包装器
- 草稿数据库 -直接SQLite访问Drafts数据库进行查询
- MCP服务器 -stdio传输,公开工具和资源
- 重试逻辑 -3次指数回退尝试
局限性
- 仅限macOS -用途
openURL方案和本地数据库访问命令 - 需要草稿应用程序 -必须运行写入操作(创建、追加、预置)
- 只读查询 -数据库查询是只读的;修改使用URL方案
- 搜索用户界面 -
search_draftsURL方案打开UI(使用search_drafts_db用于程序化搜索)
故障排除
“查询草稿数据库失败”
- 确保已安装草稿应用程序
- 检查数据库路径:
~/Library/Group Containers/GTFQ98J4YG.com.agiletortoise.Drafts/DraftStore.sqlite - 验证您是否具有对组容器的读取权限
“请求超时”
- 确保草稿应用程序正在运行
- 检查草稿是否有权接收URL方案
- 验证回调服务器是否可以绑定到localhost
“连接失败”
- 重新启动克劳德桌面
- 检查MCP服务器配置路径是否正确
- 使用验证Node.js版本
mise current
许可证
麻省理工学院
