tiny-context — efficient file tools by AVRG3 について
tiny-contextは、ドキュメント、表計算ファイル、ログ、JSONをエージェントが扱うためのローカルファイルツールを提供します。再利用可能な抽出プロファイルやレコード比較に対応し、MCPクライアントには必要な結果を返します。
主な機能
- 01ドキュメント内容の検索
- 02指定セクションの読み取り
- 03CSV、XLSX、ParquetへのSQL実行
- 04ログのエラーと時間範囲の要約
- 05IDによるJSONレコード比較
- 06フィールドの一括抽出と検証
活用シーン
- 01PDFやOfficeファイルから条項を検索
- 02大規模なエラーログを要約
- 03表計算ファイルの売上データを照会
- 042つのJSONエクスポートを比較
MCP 対応
ローカルで動作するMCPサーバーとして、8種類のファイル処理ツールをクライアントに公開します。ツールはローカルファイルを処理し、選択した結果をクライアントに返します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
tiny-context — ドキュメント検索、SQL、JSON エクスポートの差分確認のための MCP ツール
ファイルを読まずに内容を把握できます。 PDF、DOCX、PPTX、XLSX などのファイルをアウトライン化、検索、部分抽出、クエリ、クラスタリング、差分確認、検証、抽出できる、ローカルで動作する決定論的な MCP ツールを8つ提供します。AI エージェントは必要な情報だけを取得でき、すべての応答に削減量を示す行が含まれます。
タスク別にツールを探す(入力例付き) · 実際のツールスキーマ · インストール。AVRG3 が開発しました。
ファイル関連タスクの手順を減らしたいエージェント向けに設計されています:
- 大きなエラーログを説明する:
summarize_logは、すべてのログ行をコンテキストに送らずに、繰り返し発生するエラー、件数、時間範囲を返します。 - スプレッドシートについて質問する:
query_tableは CSV/XLSX/Parquet に対して SQL を実行し、元の行ではなくクエリ結果を返します。 - PDF または Office 文書の該当箇所を見つける:
query_fileは順位付けされた一致箇所を返し、read_sectionは場所がわかっている箇所を読み取ります。アウトラインが役立つ場合に限り、file_mapを使ってください。 - JSON/JSONL エクスポートを比較する:
diff_filesは、明示的な ID によってモード一致、注文、課題、在庫を記録し、行の並び順が変わっていても実際の変更を報告します。ステータスや数量などのフィールドを選択すると、対象を絞った正確な件数と、範囲を限定した変更前後のプレビューが得られます。仕様と例。
タスク全体を測定しましょう: ツールの応答は元ファイルより大幅に小さくなる場合がありますが、起動、検証、追加のエージェントとのやり取りにも時間がかかります。結果はタスクとクライアントによって異なります。エージェントの比較(性能低下を含む) · 初回の比較(過去の結果)。
以下のファイル全体読み込みベンチマークは別のベースラインを測定しています。その削減量は、高性能なエージェントでの結果を予測するものではありません。
tiny-context を探す
公式 MCP Registry に io.github.Warddamn/tiny-context として登録されており、Glama プロフィール もあります。ディレクトリのインデックス作成は外部で管理されます。エージェントが呼び出せるようにするには、引き続きクライアントからサーバーへ接続する必要があります。
0.2.0 の新機能:IDでレコードを比較
diff_files が、JSON/JSONL/NDJSONのスナップショット向けに mode: "records"、明示的な key ポインター、任意の fields/records_path を受け付けるようになりました。曖昧なIDと精度損失は拒否します。out は既存ファイルを置き換えず、すべての変更をJSONLとして保存します。ツールは引き続き8個で、新たな依存関係やモデル呼び出しはありません。使用例と制限 · 既存の正確なスクリプトとのベンチマーク · 実際のエージェントによる検証。
これにより、変更のないレコードをモデルに送信せずに済みますが、両方のファイルは引き続きローカルで読み込みます。小さなファイルや、すでに正確なスクリプトを使うほうが、安価で高速な場合があります。
安全制御(0.1.1 で導入)
以前のバージョンをインストールしている場合は、以下の現在のインストールボタン/設定を使ってアップグレードし、サーバーを再接続してください。バージョンを固定した既存のインストールは自動更新されません。
SQLで許可されるのは、指定されたテーブルに対する読み取り専用クエリ1つです。外部ファイル/ネットワークへのアクセスとSQLの書き込みコマンドは無効になっています。エクスポートには out が必要で、既存ファイルを置き換えることはありません。入力/エクスポートの上限は64 MBです。クエリワーカーのデフォルトの制限時間は15秒で、エンジン/JavaScriptのメモリ使用量には上限があります。これらの制御は、オペレーティングシステムのセキュリティサンドボックスではありません。
質問には query_file を、場所がわかっている場合は read_section を直接使ってください。アウトラインが役立つ場合に限り、file_map を使います。ドキュメントの再読み込みでは、最大8ファイル、シリアライズ済みの解析データ16 MB、30秒間のキャッシュを再利用し、キャッシュヒットごとにファイルの識別情報と更新メタデータを確認します。任意の Read フックは引き続きアウトラインを作成し、別のプロセスを起動しますが、処理が増える可能性があり、必須ではありません。小さなテキストや完全一致検索では、組み込み機能だけで済む場合がよくあります。ツールには起動/検証のオーバーヘッドがあり、すべてのタスクで総コストが下がるとは限りません。
tiny-context 0.3.0 の新機能:再利用可能なドキュメントプロファイル
ドキュメントのラベルとチェック項目を一度保存し、繰り返し使用するフォーム/レポートに対して extract を使えば、1回のバッチ処理で抽出できます。対応形式はTXT/Markdown、DOCX、テキストレイヤー付きPDFです。トレーニング、モデル呼び出し、自動推論はありません。フィールドが欠落または曖昧な場合は、部分的な値を返さず needs_review を返します。プロファイルはローカルに保持され、新しいドキュメントは毎回解析し直してチェックします。プロファイルの保存と再利用 · セットアップ、バッチ処理、準備済みスクリプトの計測結果。
応答が小さくても、請求額が少ないとは限りません。 以前のキー指定比較の試行では処理速度が向上した一方、ペアで実施した2回の試行ではコストがそれぞれ約33%と3%増えました。プロファイルは繰り返しの作業向けの任意機能であり、安価な単発の読み取りや、すでに正確なスクリプトの代わりではありません。説明を短縮したことで、ツール定義の合計ペイロードは0.2.0よりわずかに小さくなっていますが、エージェント/セットアップ/キャッシュのコストはクライアントによって異なります。保存済みプロファイルの試行とその制限では、最初に追加の呼び出しが発生した問題と、修正後の結果を紹介しています。
インストール
MCPB 対応クライアント: エージェントバンドルのリリースからお使いの OS 用のバンドルをダウンロードし、クライアントで開いてください。darwin は macOS、win32 は Windows、linux は Linux です。各バンドルには x64 と arm64 向けの依存関係が含まれていますが、Node.js 20 以降のランタイムは引き続き必要です(一部のクライアントでは同梱されています)。これらは署名されていないバンドルで、レジストリに SHA-256 ハッシュが掲載されています。ダウンロードサイズは、macOS が約 77 MiB、Linux が約 96 MiB、Windows が約 34 MiB です。8 つすべてのツールを、macOS、Linux、Windows で展開済みのバンドルからテストしました。ただし、すべての CPU/OS の組み合わせやクライアントの UI をテストしたわけではありません。
その他の MCP クライアント: 以下の既存のコマンドを使用してください。現在のマシンに必要な依存関係のみをダウンロードします。
Node.js 20 以降が必要です。npm アカウントやトークンは不要です。 以下の公開済み GitHub リリースを使用してください。npm パッケージはまだ公開されていません。これらのコマンドは npm パッケージに依存しません。サーバーはローカルで stdio 経由で動作します。初回起動時には、依存関係のダウンロードに時間がかかります。
Claude Code
claude mcp add tiny-context -- npx -y -p https://github.com/Warddamn/tiny-tools/releases/download/context-v0.3.0/tiny-context-standalone-0.3.0.tgz tiny-context-mcp
Codex CLI([mcp_servers.tiny-context] を ~/.codex/config.toml に書き込みます)
codex mcp add tiny-context -- npx -y -p https://github.com/Warddamn/tiny-tools/releases/download/context-v0.3.0/tiny-context-standalone-0.3.0.tgz tiny-context-mcp
Cursor — .cursor/mcp.json を使用するか、上の Install in Cursor バッジをクリックしてください
{ "mcpServers": { "tiny-context": { "command": "npx", "args": ["-y", "-p", "https://github.com/Warddamn/tiny-tools/releases/download/context-v0.3.0/tiny-context-standalone-0.3.0.tgz", "tiny-context-mcp"] } } }
VS Code — .vscode/mcp.json を使用してください(servers キーに注意)。または、上の Install in VS Code バッジをクリックしてください
{ "servers": { "tiny-context": { "type": "stdio", "command": "npx", "args": ["-y", "-p", "https://github.com/Warddamn/tiny-tools/releases/download/context-v0.3.0/tiny-context-standalone-0.3.0.tgz", "tiny-context-mcp"] } } }
Windsurf — ~/.codeium/windsurf/mcp_config.json
{ "mcpServers": { "tiny-context": { "command": "npx", "args": ["-y", "-p", "https://github.com/Warddamn/tiny-tools/releases/download/context-v0.3.0/tiny-context-standalone-0.3.0.tgz", "tiny-context-mcp"] } } }
Claude Desktop — ~/Library/Application Support/Claude/claude_desktop_config.json(macOS) · %APPDATA%\Claude\claude_desktop_config.json(Windows)
{ "mcpServers": { "tiny-context": { "command": "npx", "args": ["-y", "-p", "https://github.com/Warddamn/tiny-tools/releases/download/context-v0.3.0/tiny-context-standalone-0.3.0.tgz", "tiny-context-mcp"] } } }
エージェントが適切なタイミングでツールを使えるように、docs/AGENT_USAGE.md の内容を CLAUDE.md/AGENTS.md/.cursorrules に貼り付けてください。Claude Code ユーザーは、より厳格なポリシーを任意で適用する Read ガードフック も追加できます。まずはスニペットから始めてください。フックを追加しても、測定した比較結果は改善しませんでした。
TINY_TOOLS_DEBUG=1 を設定すると、各呼び出しが stderr に記録されます。
エージェントで試す
セットアップ後、クライアントを再起動するか、再接続してください。tiny-context が接続され、8 つのツールが公開されていることを確認してください。その後、CSV に関する質問、PDF の条項、エラーログを扱う 3 つの実例 を、期待される回答とともに試してください。
Claude Code プラグイン: /plugin marketplace add Warddamn/tiny-tools を実行し、続けて /plugin install tiny-context@tiny-tools を実行します。サーバーとタスク選択のガイダンスの両方が含まれています。サーバーが重複しないよう、こちらを使うか、手動で MCP をセットアップしてください。
プライバシー
- ツールからテレメトリは送信されません。 サーバーが使用状況レポートや分析データを送信することはありません。
- ツールはローカルファイルを処理し、選択したテキストを MCP クライアントに返します。モデルを呼び出したり、ファイルを自らアップロードしたりすることはありません。クライアントは設定に応じて、そのテキストをモデルプロバイダーに送信する場合があります。
- 初回起動時に npm を使用してリリースとサードパーティ製の依存関係をダウンロードします。これには
query_table用のオプションの DuckDB も含まれます。これはオフラインインストーラーではありません。GitHub と npm はそれぞれ独自にダウンロード数を集計していますが、これらはエージェントや人数の集計ではありません。
置き換えるもの
1 回のターンで必要なだけの情報を得るために行うファイル全体の Read/cat 呼び出し、フォルダーの内容を把握するための ls+grep+head の反復、列の合計を出すためだけに書くスクリプト、ログに対する tail/grep の反復、組み込みツールではまったく読めない PDF や Office ファイルを開く作業です。
理由
一般的なエージェントのコンテキストウィンドウの約 50% はツールの結果で占められており、その大部分は 1 回のターンで必要なだけの情報を得るためのファイル全体の読み取りです。エージェントのワークロードは読み取り/レビュー中心であり(公開されている測定値では、確認が約 59%、書き込みが約 9%)、中間データをコンテキストに含めないことで、トークンを最大 98% 削減できることが示されています。これらのツールを使えば、エージェントはファイルを読み込まずにファイルの内容を把握できます。すべての応答は上限が設定され、最後に削減効果を示す行が付加されます。
ステップあたりのトークン数と実時間を減らすことで、コンテキストが劣化するまでにエージェントが実行できるステップ数を増やせます。これは単なるコスト削減ではなく、能力を高めるものです。
ベンチマーク
17 件のタスク · 素朴な方法では 7,417,733 トークン → ツールでは 9,158 トークン · 全体で 99.9% 削減 · 呼び出しあたりの中央値 11ms
| ツール | タスク | 素朴な方法のトークン数 | ツールのトークン数 | 削減率 | 時間 |
|---|---|---|---|---|---|
query_table | 地域別の総売上(sales.csv) | 1,370,762 | 75 | 99.99% | 0.2s |
query_table | 合計がマイナスの行数(sales.csv) | 1,370,762 | 37 | 99.99% | 0.2s |
query_table | 存在する列とその型(sales.csv) | 1,370,762 | 186 | 99.99% | 0.2s |
summarize_log | 5xx の急増の原因(app.log) | 731,145 | 380 | 99.9% | 35ms |
summarize_log | このログの要約(app.log) | 731,145 | 698 | 99.9% | 92ms |
file_map | この 100 ページの契約書の内容(contract.pdf) | 72,055 | 2,065 | 97.1% | 0.2s |
query_file | 契約書のどこで解約について説明しているか(contract.pdf) | 72,055 | 713 | 99.0% | 14ms |
read_section | 解約に関するページを読む(100 ページ中 2 ページ)(contract.pdf) | 72,055 | 1,528 | 97.9% | 4ms |
file_map | 40 ページのハンドブックの概要(handbook.docx) | 31,699 | 483 | 98.5% | 7ms |
query_file | ハンドブックにリモートワークについての記載があるか(handbook.docx) | 31,699 | 310 | 99.0% | 4ms |
read_section | ハンドブックの Termination セクションを読む(handbook.docx) | 31,699 | 1,166 | 96.3% | 1ms |
extract | ハンドブック内のすべてのメールアドレス(handbook.docx) | 31,699 | 51 | 99.8% | 2ms |
diff_files | 2 つのハンドブックのバージョン間で変更された内容(handbook.docx ↔ handbook-v2.docx) | 63,429 | 293 | 99.5% | 5ms |
file_map | このソースツリーの内容(src/) | 2,788 | 327 | 88.3% | 3ms |
file_map | このモジュールに含まれる関数(src/…/paths.ts) | 1,607 | 259 | 83.9% | 3ms |
query_file | resolveInputs を呼び出す関数(src/**/*.ts) | 61,610 | 550 | 99.1% | 11ms |
validate_file | 10 万行の CSV が正しい形式かどうか(sales.csv) | 1,370,762 | 37 | 99.99% | 59ms |
テスト用データ(ローカルで生成、シード値固定):sales.csv 5.2 MB · app.log 2.8 MB · contract.pdf 206 KB · handbook.docx 29 KB(100,000 行 · 50,000 行 · 100 ページ · 約 18k 語)· src/ TypeScript ファイル 38 個。 · 2026-09-22 に生成。npm run bench で再実行できます。
エージェントが体験する方法で測定しています。素朴な方法=タスクに必要な生データを読むためのトークン数(バイト数/4)、ツール=ツールの応答全体のトークン数です。テスト用データは bench/ で生成されます。
過去との比較(2026-09-19、このパッチ適用前): ヘッドレス Claude Code で同じ 12 件のタスクを tiny-context の有無を変えて実行したところ、回答は同一でした。ツールによりトークン数は約 20%、コストは約 19%、実時間は約 50%削減され、ターン数は 4.3 から 3.5 に減りました。これは、シェルで確認を繰り返す代わりに 1 回の呼び出しで済むためです。アーカイブ済みの evals/COMPARISON-2026-09-19.md を参照してください。現在の結果は evals/COMPARISON.md にあります。
サイズ
インストールサイズ:134.7 MB(108 パッケージ)— DuckDB を除くと 21.9 MB。DuckDB が必要なのは query_table のみです。最大のもの:@duckdb/node-bindings-darwin-arm64 112.1 MB · zod 5.9 MB · @modelcontextprotocol/sdk 4.1 MB · unpdf 2.0 MB。2026-09-22 に npm run bench で測定。
依存関係と、それぞれが必要な理由:
| 依存関係 | 理由 | 読み込み |
|---|---|---|
@modelcontextprotocol/sdk | MCP サーバー/クライアントの公式 SDK(stdio) | 起動時 |
zod | 1 つのスキーマでライブラリ、CLI、MCP を制御します。パラメーターの説明もここにあります | 起動時 |
commander | CLI | CLI のみ |
@tiny_tools_pw/shared | パス/glob の解決、安全な出力、teach-errors、台帳、テキスト抽出(PDF は unpdf、Office ファイルは fflate + 正規表現を使用) | 起動時。unpdf は遅延読み込み |
@duckdb/node-api (optional, native) | query_table で CSV/TSV/Parquet/XLSX に対する SQL を実行 | 遅延読み込み。query_table のみ |
ajv · yaml · fast-xml-parser | validate_file で JSON Schema · YAML · XML を検証 | 遅延読み込み。検証ごと |
モデルも、バイナリも、ネットワークもありません。extract は、システムに jq があればそれを使用し、なければ組み込みのパス部分集合を使用します。
Read ガードフック(推奨)
ツールの説明とスニペットによって、エージェントは小さなコンテキストを選択します。このフックは選択の余地をなくします。対象が PDF/DOCX/PPTX/XLSX(Read では開けません)、または 20 KB を超えるテキストファイルの場合、組み込みの Read をインターセプトしてブロックし、ファイルの概要と、後続で実行する正確な呼び出し(read_section、query_file、query_table、summarize_log)をエージェントに渡します。小さなファイルと、すでに offset/limit を渡している Read はそのまま通過します。フック内でエラーが発生した場合、Read はそのまま通過します。
Claude Code — ~/.claude/settings.json(すべてのプロジェクト)または .claude/settings.json(1 つのプロジェクト)に追加します:
{
"hooks": {
"PreToolUse": [
{ "matcher": "Read", "hooks": [ { "type": "command", "command": "tiny-context-read-guard", "timeout": 30 } ] }
]
}
}
npm i -g https://github.com/Warddamn/tiny-tools/releases/download/context-v0.3.0/tiny-context-standalone-0.3.0.tgz の実行後、tiny-context-read-guard が PATH に追加されます(または hooks/read-guard.mjs のフルパスを使用してください)。しきい値:TINY_CONTEXT_READ_GUARD_KB(デフォルトは 20)。測定結果については evals/COMPARISON.md を参照してください(hook 条件ではスニペットを一切使用しません)。
ツール
| ツール | 概要 | 組み込み機能より優れている理由 |
|---|---|---|
file_map | 内容を表示せずにファイル/ディレクトリの概要を表示:見出し、シグネチャ、シート/列、スライドタイトル、ページ、サイズのツリー | 1 回の呼び出しで ls+grep+head の繰り返しを置き換えます。Office/PDF 形式も開けます |
query_file | 複数ファイルを対象に、正確な位置情報付きで関連度順に並べた箇所(BM25 + 完全一致フレーズの加点、または正規表現)を検索 | Grep は PDF/Office ファイルを検索できず、複数ファイルをまたいだ順位付けもできません。後続の読み取りを必要な箇所だけに絞れます |
read_section | 該当箇所だけを読み取り:見出しのセクション、ページ範囲、行範囲、¶ 範囲、シート範囲、スライド | Read では PDF/DOCX/XLSX/PPTX の範囲を指定して読み取れません。file_map/query_file と組み合わせて使えます |
query_table | CSV/TSV/Parquet/XLSX に対する DuckDB SQL(テーブル名 t)。総行数を報告し、out で全結果を CSV に出力 | データをコンテキストに含めずに集計できます。スクリプトを書く必要もありません |
summarize_log | カウント、最初/最後の時刻、各 1 件のサンプルを含むテンプレート別クラスター、レベル別カウント、レートの推移 | 8 万行を約 300 トークンにまとめます。grep の繰り返しでは構造を把握できません |
diff_files | ドキュメント/テーブルの変更、統一形式の差分、またはフィールド範囲と完全なレポートを含むキー指定の JSON/JSONL レコード変更 | エクスポートの順序が入れ替わっていても、結果を 1 回に抑えられます。ID を推測する必要はありません |
validate_file | JSON/YAML/XML の解析 · CSV の構造 · JSON Schema · Markdown/HTML の内部リンク · エンコーディング/BOM | 1 回の呼び出しで済み、リンターのセットアップも不要です。再読み込みせずに済む決定的なチェックを実行します |
extract | 位置情報と件数を含む、正規表現/組み込みの種類(メール、URL、日付、数値)/jq 値の抽出 | Grep では Office/PDF を開けません。重複排除、種類指定、jq を 1 か所で実行できます |
すべての応答には、概要 · 上限付きペイロード(≤ 約 4,000 トークン) · 注意点(上限到達、スキップしたファイル) · Returned ~214 tokens · raw ≈ 48,200 tokens · 99.6% saved · 0.4s が含まれます。
すべてのエラーで、何が問題だったかと次に何をすべきかを示します(Input not found: … — accepts absolute paths and globs like './shots/*.png'。SQL エラーにはテーブルの列名と型も含まれます)。
CLI
tiny-context map ./src
tiny-context map ./report.docx
tiny-context query ./contract.pdf "termination notice" -n 5
tiny-context read ./contract.pdf --pages 3-5
tiny-context read ./spec.md --heading Installation
tiny-context read ./book.xlsx --sheet Sales --range A1:F20
tiny-context table ./sales.csv "SELECT region, SUM(total) FROM t GROUP BY 1"
tiny-context log ./app.log --focus errors --since 2h
tiny-context diff ./v1.docx ./v2.docx
tiny-context validate ./out/data.json --schema ./schema.json
tiny-context extract ./docs/*.pdf --kind emails
tiny-context extract ./data.json --jq ".items[].name"
成功時の終了コードは 0、そうでない場合は teach-error を stderr に出力して 1 で終了します。tiny-context tools で MCP ツールの一覧を表示できます。
ツールリファレンス
file_map
path(ファイルまたはディレクトリ) · depth?(デフォルトは 2、最大 8)。Markdown/DOCX → 行数/¶ 数と単語数を含む見出しツリー。コード → 行番号付きの関数/クラス/メソッドのシグネチャとインポート(言語ごとの正規表現:TS/JS、Python、Go、Rust、Java/Kotlin/C#/C/C++、Ruby、PHP、Swift、shell、SQL)。XLSX → シート、ヘッダー、行数/列数。PPTX → スライドタイトル。PDF → ページ、アウトライン、各ページの最初の行。CSV → 列と行数。JSON → 構造。ログ → レベルと範囲。ディレクトリ → サイズ注釈付きツリー(node_modules、.git、dist、…を件数付きでスキップ)。
query_file
path または paths[](グロブ可) · query · regex? · max_results?(8、上限 30) · context_lines?(2)。完全一致フレーズの加点を加えた BM25 で約 700 文字の箇所を順位付けします。各ヒットには file · location (heading path) と短い抜粋が表示されます。読み取れない入力は skipped: に一覧表示され、残りの処理は続行されます。
read_section
path · locator = {heading} | {pages:"3-5"} | {lines:"120-180"} | {paras:"88-95"} | {sheet, range:"A1:F20" | "10-40"} | {slide: 4 | "2-5"} · max_tokens?(2000、上限 8000)。上限に達した場合、レスポンスには続きの正確な locator が示されます。
query_table
path(csv/tsv/parquet/xlsx/json)· sql(テーブル t)· max_rows?(50、上限 200)· out?(結果全体を出力する CSV パス)· sheet?(xlsx)。上限適用前の結果行数を報告します。エラーには列名と型が含まれます。
summarize_log
path · focus?(errors | warnings | キーワード/正規表現)· since?(ISO または 2h/30m/3d)· max_clusters?(15、上限 50)。グループ化の前に、数値/hex/uuid/ip/パス/url/メールアドレスをマスクします。ISO、YYYY/MM/DD、syslog、Apache CLF、epoch のタイムスタンプを認識します。
diff_files
a · b · mode?(summary | unified | records)· max_hunks?(20、上限 100)。summary モード:2 つのテーブル(csv/xlsx)の場合は、行単位の追加/削除/変更を報告します(最初の列が一意の場合は、その列を基準に照合)。それ以外の場合は、抽出したテキストに対して patience diff を実行します。records モード:JSON/JSONL/NDJSON には、必須の key JSON Pointers、任意の fields、records_path、完全な JSONL レポート用の out を指定します。レコードの仕様全文。
validate_file
path · schema?(JSON Schema、draft-07 または 2020-12)。拡張子に応じてチェックします:json/jsonl · yaml · xml/svg · csv/tsv · md/html のリンク、アンカー、画像。常にチェックする項目:BOM、無効な UTF-8、NUL バイト、混在する改行コード。
extract
保存済みプロファイル:profile + バッチ paths、任意の out(完全な JSONL レポート)。ラベル付けされた TXT/Markdown、DOCX、またはテキストレイヤー付き PDF ファイルを最大 100 件処理します。学習は行いません。毎回、必須のアンカー/フィールドをチェックします。まず、上限付きプレビューで行を確認してください。プロファイル形式と例。その他の抽出モード:
path または paths[] · pattern(+ ignore_case?)| kind(emails urls dates numbers)| jq のいずれか 1 つ · max_matches?(100、上限 500)· dedupe?(true)。jq は、インストールされている場合はシステムのバイナリを使用します。フォールバックでは、.a.b、.items[]、.items[2].name、.["k"]、keys、length、values、..、| によるチェーンに対応しています。
制限事項(正直に)
埋め込みには対応していません — query_file はキーワードによるランキングを行います。コードのアウトライン抽出には正規表現を使用します。テキストレイヤーのない PDF(スキャン画像)では NO TEXT LAYER を報告します。OCR は対象外です。query_table は 1 つのファイルを 1 つのテーブルとして扱います(結合はできません)。ここでネットワークやモデルを呼び出すことはありません。
ライセンス:MIT。
AVRG3 が開発 · MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。