mcpField
D
dropnote

dropnote

本地服务
github.com/CloudCorpRecords生产力01 周前更新

关于 dropnote

dropnote 是供 noglow 桌面暂存板用户使用的文本传递工具。它通过临时 UTF-8 文件将纯文本片段发送到应用中配置的目标槽位,保留格式,并避免将文本放入命令行参数。

主要功能

  1. 01将文本放入 noglow 目标槽位
  2. 02保留 UTF-8 文本和换行
  3. 03片段长度上限为 1,500 个字符
  4. 04启动本地 noglow 应用
  5. 05按配置解析应用二进制文件

适用场景

  1. 01将复制的终端内容保存到暂存板
  2. 02切换窗口时暂存简短想法

MCP 相关

MCP 服务提供 `drop` 工具,可按明确请求将最长 1,500 个字符的文本片段发送到本地 noglow 暂存板应用。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cloudcorprecords-dropnote": {
"command": "npx",
"args": [
"-y",
"@reneturcios/dropnote"
]
}
}
}
启动命令npx -y @reneturcios/dropnote

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@reneturcios/dropnote0.1.0
ocighcr.io/cloudcorprecords/dropnote:0.1.0

工具

1

收录的工具列表 · 更新于 1 周前

参数类型必填说明
textstring是要投放的文本片段;保留换行和格式

详细介绍

dropnote

有时,你只需要把一小段文本放进便笺里——比如从终端复制的一行内容、一闪而过的想法,或是在切换窗口时不想丢失的片段。dropnote 只负责这一次简单的传递:它会启动本地 noglow 应用,将一小段纯文本放入 noglow 桌面便笺的目标槽位(槽位在应用自身的设置中选择)。

文本绝不会作为命令行字符串传递。dropnote 会将文本按 UTF-8 原样逐字节写入一个唯一命名的临时文件(位于操作系统临时目录中的 noglow-drop-<unique>.txt),然后只向应用传入一个参数:--drop-file <path>。由于 argv 中只有文件路径,换行符、引号、$ 和反引号都能原样保留,而且片段本身不会出现在进程列表中。启动过程采用即发即弃方式:应用进程启动后,dropnote 就会立即报告成功,并保留临时文件;应用会读取并删除该文件。

片段最多为 1500 个字符。缺少 text、text 不是字符串、片段为空或片段过长,都会触发带有固定消息的错误;临时文件无法写入或二进制文件无法启动时也一样。

要启动的二进制文件按固定顺序确定:如果 NOGLOW_BIN 环境变量已设置且非空,就使用该变量;否则使用平台默认值——macOS 上为 /Applications/noglow.app/Contents/MacOS/noglow,Windows 上为 %LOCALAPPDATA%\noglow\noglow.exe。Linux 上使用裸名称 noglow,并通过 PATH 查找。要成功投递内容,必须安装 noglow 桌面应用;如果未安装,启动错误会指出尝试使用的路径,并提示设置 NOGLOW_BIN。

成功投递后会按以下顺序返回 dropped(true)、characters(片段长度)、tempFile(临时文件路径)和 binary(已启动的二进制文件路径)。

CLI

npx @reneturcios/dropnote drop '{"text":"a fragment to keep"}'
npx @reneturcios/dropnote --version

drop 命令将完整的参数对象作为一个 JSON 字符串,并以 JSON 格式打印结果:

{
  "dropped": true,
  "characters": 18,
  "tempFile": "/tmp/noglow-drop-3f2a1c9e-4b7d-8e5a-9c0d-1a2b3c4d5e6f.txt",
  "binary": "noglow"
}

退出代码:成功时为 0,运行时错误(包括无法解析 JSON 参数或投递失败)时为 1,用法错误时为 2。

MCP 服务

npx -y @reneturcios/dropnote mcp

MCP 客户端配置:

{
  "mcpServers": {
    "dropnote": {
      "command": "npx",
      "args": ["-y", "@reneturcios/dropnote", "mcp"]
    }
  }
}
工具
  • drop — 通过本地 noglow 应用,将一小段文本(最多 1500 个字符)放入 noglow 便笺的目标槽位。仅在用户明确请求时执行。

    • text(字符串,必填)— 要投递的片段;保留换行符和格式

    返回 {dropped, characters, tempFile, binary}。 错误会以错误结果返回,并携带以下固定消息之一:text is required、text must not be empty、text exceeds the 1500-character limit (got N)、failed to write drop file: <message> 或 failed to launch noglow binary at <path>: <message> (set NOGLOW_BIN to override the binary path)。

Docker

docker run -i ghcr.io/cloudcorprecords/dropnote
docker run --rm ghcr.io/cloudcorprecords/dropnote drop '{"text":"a fragment to keep"}'

请注意,在容器中投递内容时,会启动容器内的 noglow 二进制文件;请将 NOGLOW_BIN 指向容器内可用的二进制文件,或优先使用本地安装版本。

开发

npm install
npm run build   # tsc -> dist/
npm test        # tsx --test test/*.test.ts (fake executor plus a stand-in script; no real app)
npm run dev     # run the CLI from source

许可证

MIT — 版权所有 (c) 2026 Rene Turcios

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。