mcpField
T
tooldash-mcp

tooldash-mcp

本地服务
github.com/LassiB999生产力09 周前更新

关于 tooldash-mcp

tooldash-mcp 是本地 MCP 服务,为 AI Agent 提供 PDF 和文本工具,无需上传文件或进行网络调用。它适用于在 MCP 客户端中处理文档的用户,并提供防止意外覆盖文件的保护。

主要功能

  1. 01查看 PDF 页数与元数据
  2. 02合并 PDF 文件
  3. 03提取指定 PDF 页面
  4. 04清理并规范化文本
  5. 05将文件访问限制在指定目录

适用场景

  1. 01查看文档页数和元数据
  2. 02合并报告与封面
  3. 03从指定页面生成 PDF 摘录
  4. 04清理复制的文本以便复用

MCP 相关

通过本地运行的服务向 MCP 客户端提供 PDF 和文本工具。客户端可使用 npx 启动,也可从代码克隆目录运行。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"lassib999-tooldash": {
"command": "npx",
"args": [
"-y",
"tooldash-mcp"
],
"env": {
"TOOLDASH_MCP_ROOT": "<TOOLDASH_MCP_ROOT>"
}
}
}
}
启动命令npx -y tooldash-mcp
需要配置的环境变量
TOOLDASH_MCP_ROOTOptional. Confines every file the server reads or writes to this directory.

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

安装包
npmtooldash-mcp1.0.2

工具

4

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

参数类型必填说明
pathstring是要检查的 PDF。可以是绝对路径,也可以是相对于客户端工作目录的路径。

详细介绍

ToolDash MCP

为 AI Agent 提供离线 PDF 和文本工具。 一个 MCP 服务,可让 Claude Desktop、Cursor、VS Code 及任何其他 MCP 客户端合并 PDF、提取页面、检查文档并清理文本——所有操作都在你自己的设备上完成。

不上传。不需要 API 密钥。不需要账户。完全不进行任何网络调用:PDF 操作由 pdf-lib 在本地完成,因此机密合同不会离开你的笔记本电脑。

由 ToolDash 提供支持


工具

工具功能会写入文件吗?
pdf_infoPDF 的页数、每页尺寸和元数据否
merge_pdfs按给定顺序将两个或多个 PDF 合并为一个是
extract_pdf_pages将所选页面("1-3,7,10-12")复制到新的 PDF 中是
clean_text合并空白字符、移除不可见字符、规范化标点,可选择移除 URL否

除非传入 overwrite: true,两个会写入文件的工具都不会替换现有文件,因此 Agent 重试调用时不会悄悄破坏文档。

要求

Node.js 20 或更高版本。

安装

无需安装——MCP 客户端会按需通过 npx 运行它。将服务添加到客户端配置中,然后重启客户端。

Claude Desktop

编辑 claude_desktop_config.json:

  • macOS — ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows — %APPDATA%\Claude\claude_desktop_config.json
  • Linux — ~/.config/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "tooldash": {
      "command": "npx",
      "args": ["-y", "tooldash-mcp"]
    }
  }
}

重启 Claude Desktop。工具会显示在聊天框的工具图标下。

Cursor

在项目中创建 .cursor/mcp.json(或为所有项目创建 ~/.cursor/mcp.json):

{
  "mcpServers": {
    "tooldash": {
      "command": "npx",
      "args": ["-y", "tooldash-mcp"]
    }
  }
}

然后在 Settings → MCP 下启用该服务。

VS Code(GitHub Copilot Agent 模式)

创建 .vscode/mcp.json:

{
  "servers": {
    "tooldash": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "tooldash-mcp"]
    }
  }
}
从克隆的仓库运行
git clone https://github.com/LassiB999/tooldash-mcp.git
cd tooldash-mcp
npm install
npm test

然后将客户端指向 node /absolute/path/to/tooldash-mcp/server.js,而不是 npx。

路径可以是绝对路径、相对于客户端工作目录的路径,也可以以 ~ 开头。路径两端的引号会被去除,因此粘贴为 "/home/you/file.pdf" 的路径仍然有效。

限制文件访问

该服务可以在用户账户有权限的任何位置读取和写入文件。若要将其限制在某个目录中,请设置 TOOLDASH_MCP_ROOT——目录之外的任何路径都会被拒绝,并返回清晰的错误信息:

{
  "mcpServers": {
    "tooldash": {
      "command": "npx",
      "args": ["-y", "tooldash-mcp"],
      "env": { "TOOLDASH_MCP_ROOT": "/home/you/Documents/pdfs" }
    }
  }
}

使用示例

用自然语言向助手提出请求——“合并这两个 PDF,并把结果放到我的桌面上”——它就会填写下面的调用内容。这里提供原始 JSON,方便测试。

pdf_info
{ "path": "/home/you/Documents/report.pdf" }
report.pdf: 12 page(s), 248.3 KB. Title: "Q3 Report".
merge_pdfs
{
  "inputPaths": ["/home/you/Documents/cover.pdf", "/home/you/Documents/report.pdf"],
  "outputPath": "/home/you/Documents/final.pdf",
  "overwrite": false
}
extract_pdf_pages

页码从 1 开始。页面顺序会保留,因此 "3,1-2" 会先给出第 3 页。像 "5-1" 这样的降序范围会将这些页面倒序排列。

{
  "inputPath": "/home/you/Documents/report.pdf",
  "pages": "1-3,7,10-12",
  "outputPath": "/home/you/Documents/excerpt.pdf"
}
clean_text
{
  "text": "Hello   world  \r\n\r\n\r\n\r\nSecond   line   ",
  "collapseBlankLines": true,
  "normalizeQuotes": false,
  "removeUrls": false
}

removeUrls 会移除所有 http/https URL。该服务处于离线状态,无法区分有效链接和失效链接——它不会假装能够判断。

如何处理失败

对于错误输入,服务会返回模型可以处理的易读错误结果,而不会崩溃:文件缺失、PDF 受密码保护、页码超出文档范围,或输出路径已存在时,都会分别返回说明下一步该怎么做的信息。服务会继续运行。

诊断信息只会写入 stderr。stdout 只承载协议帧,不包含其他内容——任何内容泄漏到其中都会导致测试失败。

开发

npm test                # 15 end-to-end tests: a real MCP client over stdio, on real PDFs
npm run inspect         # open the MCP Inspector against this server

由 ToolDash 提供支持

ToolDash 是一组免费的浏览器实用工具,涵盖 PDF、文本、图像、颜色、开发者和计算器工具,所有操作都在浏览器标签页中完成,不会上传任何内容。此服务将相同的理念带到了你的编辑器中。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

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

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