mcpField
R
Rounder tools

Rounder tools

ローカル
roundertools.com生産性13 日前に更新

Rounder tools について

Rounder toolsは、PDF、文書、画像、アーカイブを処理するツールをAIアシスタントに提供するローカルMCPサーバーです。ffmpegが利用可能な場合は動画と音声も扱えます。ローカルファイルを扱うエージェント向けで、読み取り範囲は許可フォルダーに限定され、ネットワーク通信は行いません。

主な機能

  1. 01PDFの結合・分割・圧縮・保護
  2. 02画像の変換・サイズ変更・編集
  3. 03アーカイブの作成と展開
  4. 04文書テキストの抽出と表計算の確認
  5. 05ffmpegによる動画・音声ツール
  6. 06フォルダー単位の読み取り・出力制限

活用シーン

  1. 01ローカルPDFの結合や圧縮
  2. 02複数画像の変換とサイズ変更
  3. 03文書や表計算ファイルの確認
  4. 04ffmpeg導入環境でのメディア切り取りや変換

MCP 対応

stdioのMCPサーバーとしてファイル処理ツールを提供し、初期状態ではツールの検索・説明・実行を行う少数のヘルパーを公開します。ファイルはローカルに保たれ、読み取りは許可フォルダー内に限られます。出力先は入力ファイルの隣または指定フォルダーです。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"adam-sari-roundertools": {
"command": "npx",
"args": [
"-y",
"@roundertools/mcp"
],
"env": {
"ROUNDERTOOLS_ALLOW": "<ROUNDERTOOLS_ALLOW>",
"ROUNDERTOOLS_FFMPEG": "<ROUNDERTOOLS_FFMPEG>"
}
}
}
}
起動コマンドnpx -y @roundertools/mcp
設定が必要な環境変数
ROUNDERTOOLS_ALLOWFolders the server may read, as a path list
ROUNDERTOOLS_FFMPEGPath to ffmpeg, if it isn't on the PATH

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@roundertools/mcp0.3.0

ツール

23

掲載時のツール一覧 · 3 日前に更新

パラメーター型必須説明
titlestringいいえ入力ファイルにタイトルがない場合のドキュメントタイトル
inputsarrayはい入力ファイルの絶対パスを順番に指定(2~500 個)。すべてを 1 つの結果にまとめます
outputstringいいえ出力先フォルダーの絶対パス(結果が 1 つの場合は新しいファイルのパスも可)。デフォルト:各入力ファイルの隣。既存のファイルは置き換えません。
keepInfobooleanいいえ最初の PDF のタイトル、作成者、日付をコピーします
passwordstringいいえ暗号化された入力ファイルのパスワード(すべてのファイルで同じものを使用)
bookmarksbooleanいいえ入力ファイルごとにブックマークを 1 つ追加します

詳細

@roundertools/mcp

AI アシスタントに roundertools.com のファイルツールを提供する MCP サーバーです。PDF の圧縮、結合、分割、保護、画像の変換とサイズ変更、ファイルの ZIP 圧縮、さらに(ffmpeg を使った)動画の圧縮、変換、トリミングができます。stdio 経由でコンピューター上で動作します。ファイルは元の場所に留まり、ネットワークリクエストは一切行いません。

インストール

Claude Code:

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

Claude Code では、サーバー自体が不要な場合があります。roundertools プラグイン(/plugin marketplace add adam-sari/rounder、続けて /plugin install roundertools@roundertools)は、Claude に CLI の実行方法を教えるスキルです。使用するまでは約 100 トークンしか消費しません。

Claude Desktop(claude_desktop_config.json、設定 → 開発者 → 設定を編集):

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

Windows で npx が見つからない場合は、"command": "cmd", "args": ["/c", "npx", "-y", "@roundertools/mcp", …] を使用してください。

Cursor(~/.cursor/mcp.json または .cursor/mcp.json):

{ "mcpServers": { "roundertools": { "command": "npx", "args": ["-y", "@roundertools/mcp"] } } }

VS Code(.vscode/mcp.json):

{ "servers": { "roundertools": { "type": "stdio", "command": "npx", "args": ["-y", "@roundertools/mcp"] } } }

Node 22.13 以降が必要です。ffmpeg が PATH 上(または ROUNDERTOOLS_FFMPEG で指定した場所)にある場合、動画および音声ツールが利用可能になります。

アクセス対象

  • 読み取り対象:--allow DIR(複数回指定可)または ROUNDERTOOLS_ALLOW(パスのリスト)で指定したフォルダー内のファイルです。どちらも指定しない場合は、ホームフォルダーと、起動したフォルダー(システムフォルダーではなくプロジェクトの場合)です。クライアント側でルートをさらに狭めることはできますが、広げることはできません。
  • 読み取り対象外:許可されたフォルダー内であっても、隠しフォルダーやファイル(.ssh、.aws、.config、.env など)、鍵やパスワードのファイル、ブラウザープロファイルなどのアプリデータは読み取りません。パスは絶対パスである必要があり、確認前にシンボリックリンクを解決します。例外はサーバー独自の設定フォルダーのみで、起動時に読み取られます。ツール呼び出しから読み取ることはできません。
  • 書き込み先:入力ファイルの隣、または --out DIR で指定したフォルダーのみです。既存のファイルを置き換えたり、入力ファイルに上書きしたりすることはありません。もう一つの書き込み先は、サーバー独自の設定フォルダーです。
  • ネットワーク:使用しません。サーバーは最初にガードを読み込み、プロセスとワーカースレッド内の fetch、http、https、net、tls、dgram、および DNS ルックアップをブロックします。Node 26 以降では、ネットワークアクセスを無効にした Node の権限モデルの下で、自身を再実行します。Node 22 および 24 では、このガードはサンドボックスではありません。ネットワークコードを含まないパッケージに依存しています。ffmpeg は別のプログラムとして実行され、入力はローカルファイルに制限されます(-protocol_whitelist file,pipe)。
  • ディスクにアクセスする前の確認:許可されたフォルダー外のパスは、検索される前に拒否されるため、ツール呼び出しでファイルの有無を調べることはできません。また(Windows では)コンピューターに \\server\share への接続を試みさせることもありません。

ファイルから読み取ったテキストや詳細情報(ドキュメントから Markdown への変換結果、PDF のテキスト、フォームのフィールド、PDF のタイトル、EXIF フィールド)は、ファイルの内容として囲まれて返されます。ファイルが推測できないランダムな名前のタグで囲まれ、指示として扱われることはありません。

読み込まれる内容

クライアントは、サーバーが一覧表示するすべてのツールを、使うかどうかにかかわらず、各会話の開始時にモデルへ送信します。最初からすべてのツールを一覧表示すると(ffmpeg を含めて 38 個)、約 18,000 トークンが必要です。そのため、デフォルトでは 3 つのヘルパー(約 700 トークン)に加え、短い説明文(約 150 トークン)のみを一覧表示します。

  • find-tool:サイト上のすべてのツールを、実行したい内容に基づいて検索します
  • describe-tool:任意のツールのオプションを JSON Schema 形式で表示します
  • run-tool:ブラウザー外で動作する任意のツールを、同じチェックを行って実行します

これらの背後には、merge-pdf、split-pdf、compress-pdf、protect-pdf、unlock-pdf、organize-pdf、add-page-numbers-to-pdf、watermark-pdf、jpg-to-pdf、pdf-to-text、extract-images-from-pdf、pdf-form-fields、fill-pdf-form があり、@napi-rs/canvas を使う pdf-to-jpg と redact-pdf、さらに image-converter、image-compressor、image-resizer、crop-image、rotate-image、exif-remover、image-prep、image-diff、zip-files、unzip-files、checksum-calculator、file-info、document-to-markdown、spreadsheet-inspector、そして ffmpeg を使う video-compressor、video-converter、trim-video、mute-video、video-to-gif、video-to-mp3、audio-converter、video-contact-sheet のほか、ブラウザー外で動作するサイト上のその他のツールがあります。

使用するにつれて一覧が増えていきます。

  • ツールごと。 アシスタントが describe-tool でツールの説明を取得するか、run-tool でツールの実行に成功すると、サーバーはそのツールを直接一覧に追加し、クライアントに通知します(notifications/tools/list_changed)。これにより、次回から名前を指定して呼び出せます。find-tool は検索のみを行い、実行に失敗しても何も追加されません。一覧の変更を無視するクライアントでも、run-tool を通じてすべてのツールを利用できます。find-tool とプロンプトでは、最初から一覧にないツールに対して run-tool を指定します。一覧が変更されるたびに、クライアントが一覧を再読み込みする(キャッシュされたプロンプトが失われる)可能性があるため、ツールごとに一度だけ変更されます。
  • お気に入り。 過去 90 日間に少なくとも 2 回使用したツール(最大 5 個)は、このコンピューターで動作する場合、最初から一覧に表示されます。メモリをご覧ください。

--tools all を指定すると、最初からすべてのツールが一覧表示されます。アシスタントに検索させる代わりに、一度だけトークンを消費したい場合に使います。--tools default は、デフォルトで一覧表示される 0.1 のツールセット(checksum-calculator 以外のすべて)を一覧表示します。ファミリー(--tools pdf,image)やツール名(--tools compress-pdf,merge-pdf)を指定すると、それらだけが一覧表示されます。これらは組み合わせられます。例:--tools lean,pdf または --tools default,checksum-calculator。ヘルパーは常に利用できます。このフラグは設定ファイルより優先され、設定ファイルは lean のデフォルトより優先されます。

各ツールは inputs(絶対パス)、任意の output(フォルダー、または単一の結果に対する新しいファイル)、および独自のオプションを受け取ります。結果として、概要、ファイルへの resource_link、および各出力のパス、サイズ、種類を含む structuredContent が返されます。画像ツールでは preview: true を指定すると、結果の小さな PNG が生成されます。

ターミナルのコーディングエージェント(Claude Code、Codex、Gemini CLI、opencode)では、最初の find-tool の結果に、MCP を使わずに同じ処理を行う npx -y roundertools <tool> … が一度だけ記載されます。ほかに、接続しているクライアントによって変わるものはありません。

プロンプト

プロンプトは選択するまでトークンを消費しません。それぞれ、アシスタントに呼び出すツールとその引数を指示します。

プロンプト引数
compress-pdffile、任意の size(例:1mb)
merge-pdfsfiles
convert-imagesfiles、format
pdf-to-textfile
read-documentfile(PDF、Word、PowerPoint、Excel、または CSV)
fill-pdf-formfile(フィールドを一覧表示して質問し、その後入力します)
redact-pdffile、what(@napi-rs/canvas を使用する場合のみ)
shrink-videofile、任意の size(ffmpeg を使用する場合のみ)

メモリー

お気に入りは、使用したツールの回数に基づいています。ツールの実行が成功すると、サーバーは回数を 1 増やし、日付を usage.json に記録します。

{ "version": 1, "tools": { "compress-pdf": { "count": 4, "last": "2026-11-02" } } }

保存するのはこれだけです。ツール名、回数、日付です。パス、ファイル名、オプション、ファイルから読み取った内容などは一切保存しません。他のすべてのデータと同様に、お使いのコンピューター上に保持されます。

--no-memory、ROUNDERTOOLS_MEMORY=off、または npx roundertools config set memory off で無効にできます。すべての記録を消去するには、npx roundertools config reset を実行します。

設定

settings.json と usage.json は同じフォルダーに保存されます。

システムフォルダー
Windows%APPDATA%\roundertools
macOS~/Library/Application Support/roundertools
Linux など$XDG_CONFIG_HOME/roundertools、または ~/.config/roundertools

別のフォルダーを指定するには、ROUNDERTOOLS_CONFIG_DIR を設定します。CLI で表示や変更ができます。

npx roundertools config                  # the folder, the settings and your favourites
npx roundertools config set tools all    # lean, all, default, families or tool names
npx roundertools config set memory off   # on or off
npx roundertools config reset            # remove both files

変更は次回のサーバー起動時に適用され、コマンドラインのフラグが優先されます。Node 26 以降では、権限モデルによりサーバーはこのフォルダーへの読み書きが許可されるため、メモリーも引き続き機能します。メモリーが無効の場合、読み取りのみが可能です。

オプション

オプション
--allow DIR読み取り可能なフォルダー(複数指定可)
--out DIR入力ファイルと同じ場所に加えて、書き込み先として許可するフォルダー
--tools LISTlean(デフォルト)、all、default、ファミリー(pdf,image,files,media)、またはツール名
--no-memory使用したツールの回数を記録しません
--experimental未完成の機能を有効にします(現在はありません)
--max-input SIZEファイルごとの上限(デフォルトは 1gb、メディアは 2gb)
--timeout MIN呼び出しごとの時間(分、デフォルトは 5、メディアは 30)
--max-outputs N1 回の呼び出しで書き込めるファイル数(デフォルトは 500)

公式 MCP TypeScript SDK(@modelcontextprotocol/server)を基盤とし、stdio のみを使用します。ログは stderr に出力し、負荷の高いジョブを一度に 1 つ実行し、進捗通知を送信します。また、呼び出しがキャンセルされると停止します。

ライセンス

MIT。ドキュメント:roundertools.com/developers/mcp。ソース:github.com/adam-sari/rounder の packages/mcp にあります。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。