Skip to content
rounder

The MCP server

@roundertools/mcp is a Model Context Protocol server that lets an AI assistant use Rounder's tools on files on your computer: "compress the PDFs in my Downloads folder under 2 MB", "make these screenshots into one PDF", "cut this video to the first 30 seconds". It runs locally over stdio, so your files stay where they are; the assistant only sees the results' paths, sizes and summaries.

Claude Code

terminal
claude mcp add roundertools -- npx -y @roundertools/mcp --allow ~/Documents

--allow names a folder it may read; ~ works in every config below, JSON included. To make it available in every project, with more folders:

terminal
claude mcp add roundertools --scope user -- npx -y @roundertools/mcp --allow ~/Documents --allow ~/Downloads

Claude Desktop

Settings → Developer → Edit config, then add it to claude_desktop_config.json:

claude_desktop_config.json
{
  "mcpServers": {
    "roundertools": {
      "command": "npx",
      "args": [
        "-y",
        "@roundertools/mcp",
        "--allow",
        "/Users/you/Documents"
      ]
    }
  }
}

On Windows, if Claude can't find npx:

claude_desktop_config.json (Windows)
{
  "mcpServers": {
    "roundertools": {
      "command": "cmd",
      "args": [
        "/c",
        "npx",
        "-y",
        "@roundertools/mcp",
        "--allow",
        "C:\\Users\\you\\Documents"
      ]
    }
  }
}

Cursor

In ~/.cursor/mcp.json (every project) or .cursor/mcp.json (one project):

mcp.json
{
  "mcpServers": {
    "roundertools": {
      "command": "npx",
      "args": [
        "-y",
        "@roundertools/mcp",
        "--allow",
        "~/Documents"
      ]
    }
  }
}

VS Code

In .vscode/mcp.json:

.vscode/mcp.json
{
  "servers": {
    "roundertools": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@roundertools/mcp",
        "--allow",
        "~/Documents"
      ]
    }
  }
}

Which files it can touch

  • Reading: the folders you pass with --allow (repeat it for more), or in ROUNDERTOOLS_ALLOW. Without either, your home folder and the folder it was started in. A client's roots can narrow that further, never widen it.
  • Never: hidden folders and files (.ssh, .aws, .env…), key and password files, and app data such as browser profiles, even inside an allowed folder. Symlinks are followed to where they really point before checking.
  • Writing: only next to the input, or into a folder you name with --out. It never replaces an existing file and never touches an input.
  • Network: none. It has no code that makes a connection, and it blocks outgoing connections and DNS lookups in its own process as well. That guard isn't a sandbox: video and audio run on your own ffmpeg, a separate program, which it starts limited to local files.

Text and details it reads out of a file (PDF to text, a PDF's title, EXIF fields) are marked as the file's content, not instructions, because a document can contain words written to mislead an assistant.

Tools

It lists about 30 tools by default: PDF (compress, merge, split, organize, protect, unlock, page numbers, watermark, to text, to JPG, extract images), images (convert, compress, resize, crop, rotate, remove EXIF), ZIP files, file info, and, when ffmpeg is installed, video and audio. Three more help with the rest: find-tool searches every tool on the site by what you want done, describe-tool shows a tool's options, and run-tool runs any of them that work outside a browser (find-tool links to the site for the rest). --tools all lists everything; --tools pdf,image lists just those.

Options

  • --allow DIR: a folder it may read (repeatable)
  • --out DIR: a folder it may write results to, besides next to the inputs
  • --tools LIST: default, all, families or tool names
  • --max-input SIZE, --timeout MINUTES, --max-outputs N: limits per call

It speaks MCP over stdio with the official TypeScript SDK, logs to stderr only, runs one heavy job at a time, reports progress and stops when a call is cancelled.

try