概要
Doc Ops MCP (Document Operations MCP Server) は、ドキュメント処理、変換、自動化のための汎用的なMCP (Model Context Protocol) サーバである。
このMCPを使用することにより、Claude等のLLMがPDF、DOCX、HTML、Markdownなどの様々なドキュメント形式を統一されたAPIとツールセットを通じて処理することができる。
Doc Ops MCPサーバは、以下に示すような機能を提供する。
- ドキュメントの読み取りと書き込み
- ドキュメント形式の相互変換
- スタイルとフォーマットの保持
- PDFへの透かしとQRコードの追加
- インテリジェントな変換プランニング
- 複数ドキュメントの同時処理
Doc Ops MCPサーバは、Standard I/O (STDIO) トランスポートを使用してローカル環境で動作する。
これにより、Claude Desktop、Claude Code、Cursor等のMCPクライアントと統合することができる。
Doc Ops MCPサーバの最大の特徴は、純粋なJavaScriptアーキテクチャを採用しており、外部システム依存が一切ないことである。
全てのドキュメント処理機能は、npmパッケージを通じて提供される。
Doc Ops MCPの機能
ドキュメント読み取り
- PDF、DOCX、DOC、HTML、Markdown等の様々な形式のドキュメント読み取り
- メタデータの抽出
- フォーマット保持オプション
- エンコーディング指定
ドキュメント変換
- PDF、DOCX、HTML、Markdown間の相互変換
- スタイルとフォーマットの自動保持
- OOXMLパーサーによる高度なスタイル保持
- テーマスタイルのサポート (Markdown変換時)
- 目次の自動生成
PDF機能強化
- 透かし (ウォーターマーク) の追加
- QRコードの追加
- 画像透かしのサポート (PNG/JPG)
- テキスト透かしのサポート
- 位置、透明度、スケールの調整
コンテンツ書き換え
- バッチテキスト置換
- 正規表現置換
- ドキュメント構造の変更
- 見出しレベルの調整
- スタイルフォーマットの変更
インテリジェント変換
- 自動変換パスの最適化
- 直接変換とマルチステップ変換
- 品質要件の指定 (fast, balanced, high)
- 変換パラメータの自動生成
対応ドキュメント形式
| 形式 | PDFに変換 | DOCXに変換 | HTMLに変換 | Markdownに変換 | コンテンツ書き換え | 透かし / QRコード |
|---|---|---|---|---|---|---|
| 対応 | - | - | - | - | 対応 | |
| DOCX | 対応 | 対応 | 対応 | 対応 | 対応 | - |
| HTML | 対応 | - | 対応 | 対応 | 対応 | - |
| Markdown | 対応 | 対応 | 対応 | 対応 | 対応 | - |
動作要件
システム要件
- Node.js 18.0以上
- 外部システム依存なし (全てnpmパッケージ経由で処理)
オプション統合
- playwright-mcp (PDF変換機能強化用、オプション)
必須ライブラリ
コアテクノロジースタック
- pdf-lib >= 1.17.1 (PDF操作と機能強化)
- word-extractor >= 1.0.4 (DOCXドキュメントのテキスト抽出)
- marked >= 15.0.12 (Markdownパースとレンダリング)
- cheerio >= 1.0.0-rc.12 (HTMLパースと操作)
- docx >= 9.5.1 (DOCXドキュメント生成)
- jszip >= 3.10.1 (ZIPファイル処理)
- xml2js >= 0.6.2 (XMLパースと変換)
- カスタムOOXMLパーサー (高度なDOCXスタイル保持)
インストール
グローバルインストール
npmを使用してグローバルインストールする。
npm install -g Doc Ops MCP
pnpmを使用する場合は、以下に示すコマンドを実行する。
pnpm add -g Doc Ops MCP
bunを使用する場合は、以下に示すコマンドを実行する。
bun add -g Doc Ops MCP
ローカルインストール
プロジェクトのローカルディレクトリにインストールする。
npm install doc-ops-mcp
pnpmを使用する場合は、以下に示すコマンドを実行する。
pnpm add doc-ops-mcp
bunを使用する場合は、以下に示すコマンドを実行する。
bun add doc-ops-mcp
ローカルインストールした場合、MCPクライアント設定でnpxを使用することにより、グローバルインストール不要で実行できる。
ソースコードからのインストール
この方法は、Doc Ops MCPの開発に参加する場合や最新の開発版を使用する場合に適している。
Doc Ops MCPのGithubからソースコードをクローンする。
git clone https://github.com/Tele-AI/doc-ops-mcp.git cd doc-ops-mcp
Doc Ops MCPをビルドする。
npm install npm run build
プロジェクト構造
Doc Ops MCPサーバのプロジェクト構造を以下に示す。
Doc Ops MCP/ ├── README.md # プロジェクトドキュメント ├── README_zh.md # 中国語ドキュメント ├── package.json # Node.js依存関係 ├── package-lock.json # 依存関係ロックファイル ├── tsconfig.json # TypeScript設定 ├── build.mjs # ビルドスクリプト ├── jest.config.js # テスト設定 ├── .eslintrc.js # ESLint設定 ├── .prettierrc # Prettier設定 ├── .prettierignore # Prettierの除外設定 ├── Dockerfile # Docker設定 ├── docker-compose.yml # Docker Compose設定 ├── .dockerignore # Dockerの除外設定 ├── env.example # 環境変数の例 ├── .gitignore # Git除外設定 ├── .gitattributes # Git属性設定 ├── LICENSE # ライセンスファイル (MIT) ├── CHANGELOG.md # 変更履歴 ├── CODE_OF_CONDUCT.md # 行動規範 ├── CONTRIBUTING.md # コントリビューションガイド ├── SECURITY.md # セキュリティポリシー ├── src/ # ソースコード │ ├── index.ts # MCPサーバエントリーポイント │ ├── tools/ # ツール実装 │ │ ├── documentConverter.ts │ │ ├── pdfTools.ts │ │ └── ... │ ├── types/ # 型定義 │ └── utils/ # ユーティリティ関数 ├── docs/ # ドキュメント └── .github/ # GitHub設定
システムアーキテクチャ
Doc Ops MCPサーバは、純粋なJavaScriptアーキテクチャ設計を採用しており、完全なドキュメント処理機能を提供する。
アーキテクチャ概要
コア機能
- 外部システム依存のない純粋なJavaScript実装
- 完全なドキュメント読み取り、変換、スタイル処理機能
- 組み込みPDF透かしとQRコード追加機能
- インテリジェントな変換プランニングとパス最適化
変換フロー
- 直接変換 - 多くの形式間で直接変換をサポート
- マルチステップ変換 - 中間形式を経由した複雑な変換
- スタイル保持 - OOXMLパーサーを使用した完全なスタイル保持
クライアント接続設定
Claude Desktopからの接続
Claude Desktopの設定ファイルを編集する。
設定ファイルの場所は、以下の通りである。
- Linux
- ~/.config/Claude/claude_desktop_config.json
- Windows
- %APPDATA%\Claude\claude_desktop_config.json
標準設定を以下に示す。
{
"mcpServers": {
"Doc Ops MCP": {
"command": "npx",
"args": ["-y", "Doc Ops MCP"],
"env": {
"OUTPUT_DIR": "/path/to/your/output/directory",
"CACHE_DIR": "/path/to/your/cache/directory"
}
}
}
}
Claude Desktopを再起動して、Doc Ops MCPサーバが利用可能であることを確認する。
VS Codeからの接続
VS Codeの設定ファイルに、標準設定を追加する。
詳細については、VS CodeのMCPサーバインストールガイドを参照すること。
Cursorからの接続
Cursor Settingsを開き、MCPセクションに移動する。
[Add new MCP Server]を選択して、任意の名前を付ける。
[commandタイプ]を選択し、コマンドに npx -y Doc Ops MCP を指定する。
その他のMCPクライアントからの接続
標準設定を使用し、各クライアントのMCPサーバインストールドキュメントを参照する。
環境変数
Doc Ops MCPサーバは、環境変数による設定をサポートしている。
これらの変数は、MCPクライアント設定の env オブジェクトに含めることができる。
コアディレクトリ
- OUTPUT_DIR
- 生成されたすべてのファイルが保存される場所 (デフォルト: ~/Documents)
- CACHE_DIR
- 一時ファイルとキャッシュファイル用のディレクトリ (デフォルト: ~/.cache/Doc Ops MCP)
PDF機能強化
- WATERMARK_IMAGE
- PDFファイルのデフォルト透かし画像パス
- 全てのPDF変換に自動的に追加される
- サポートされる形式: PNG、JPG
- 設定されていない場合、デフォルトのテキスト透かし「Doc Ops MCP」が使用される
- QR_CODE_IMAGE
- PDFファイルのデフォルトQRコード画像パス
- 明示的に要求された場合のみPDFに追加される (addQrCode=true)
- サポートされる形式: PNG、JPG
- 設定されていない場合、QRコード機能は利用できない
出力パスルール
1. outputPathが指定されていない場合
- ファイルは自動生成された名前でOUTPUT_DIRに保存される
2. outputPathが相対パスの場合
- OUTPUT_DIRからの相対パスとして解決される
3. outputPathが絶対パスの場合
- そのまま使用され、OUTPUT_DIRは無視される
利用可能なツール
read_document
様々なドキュメント形式 (PDF、DOCX、DOC、HTML、MD等) を読み取る。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| filePath | string | 必須 | 読み取るドキュメントのパス |
| extractMetadata | boolean | オプション | ドキュメントメタデータを抽出する (デフォルト: false) |
| preserveFormatting | boolean | オプション | フォーマットを保持する (HTML出力) (デフォルト: false) |
- 使用例
「/path/to/document.docx」のドキュメントを読み取ってください。
write_document
指定された形式でドキュメントファイルにコンテンツを書き込む。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| content | string | 必須 | 書き込むコンテンツ |
| outputPath | string | オプション | 出力ファイルパス (指定しない場合は自動生成) |
| encoding | string | オプション | ファイルエンコーディング (デフォルト: utf-8) |
- 使用例
このコンテンツを「/path/to/output.txt」に書き込んでください。
convert_document
スタイル保持を強化してドキュメントを形式間で変換する。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| inputPath | string | 必須 | 入力ファイルパス |
| outputPath | string | オプション | 出力ファイルパス (指定しない場合は自動生成) |
| preserveFormatting | boolean | オプション | フォーマットを保持する (デフォルト: true) |
| useInternalPlaywright | boolean | オプション | PDF変換に組み込みPlaywrightを使用する (デフォルト: false) |
- 使用例
「/path/to/document.docx」をPDFに変換してください。
convert_docx_to_pdf
DOCXをPDFに変換し、透かしを自動的に追加する (設定されている場合)。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| docxPath | string | 必須 | DOCXファイルパス |
| outputPath | string | オプション | 出力PDFパス (指定しない場合は自動生成) |
| addQrCode | boolean | オプション | QRコードを追加するか (デフォルト: false) |
| preserveFormatting | boolean | オプション | 元のフォーマットを保持する (デフォルト: true) |
| chineseFont | string | オプション | 中国語フォント (デフォルト: Microsoft YaHei) |
- 使用例
「/path/to/document.docx」をPDFに変換して、QRコードを追加してください。
convert_markdown_to_pdf
MarkdownをPDFに変換し、透かしを自動的に追加する (設定されている場合)。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| markdownPath | string | 必須 | Markdownファイルパス |
| outputPath | string | オプション | 出力PDFパス (指定しない場合は自動生成) |
| theme | string | オプション | テーマスタイル (デフォルト: github) |
| includeTableOfContents | boolean | オプション | 目次を含める (デフォルト: false) |
| addQrCode | boolean | オプション | QRコードを追加するか (デフォルト: false) |
- 使用例
「/path/to/document.md」をPDFに変換して、目次を含めてください。
convert_markdown_to_html
MarkdownをHTMLに変換する。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| markdownPath | string | 必須 | Markdownファイルパス |
| outputPath | string | オプション | 出力HTMLパス (指定しない場合は自動生成) |
| theme | string | オプション | テーマスタイル (デフォルト: github) |
| includeTableOfContents | boolean | オプション | 目次を含める (デフォルト: false) |
- 使用例
「/path/to/document.md」をHTMLに変換してください。
convert_markdown_to_docx
MarkdownをDOCXに変換する。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| markdownPath | string | 必須 | Markdownファイルパス |
| outputPath | string | オプション | 出力DOCXパス (指定しない場合は自動生成) |
- 使用例
「/path/to/document.md」をDOCXに変換してください。
convert_html_to_markdown
HTMLをMarkdownに変換する。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| htmlPath | string | 必須 | HTMLファイルパス |
| outputPath | string | オプション | 出力Markdownパス (指定しない場合は自動生成) |
- 使用例
「/path/to/document.html」をMarkdownに変換してください。
plan_conversion
インテリジェント変換プランナー - 変換要件を分析し、最適な変換プランを生成する。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| sourceFormat | string | 必須 | ソースファイル形式 (pdf, docx, html, markdown, md, txt, doc) |
| targetFormat | string | 必須 | ターゲットファイル形式 (pdf, docx, html, markdown, md, txt, doc) |
| sourceFile | string | オプション | ソースファイルパス (特定の変換パラメータを生成する場合) |
| preserveStyles | boolean | オプション | スタイルフォーマットを保持するか (デフォルト: true) |
| includeImages | boolean | オプション | 画像を含めるか (デフォルト: true) |
| theme | string | オプション | 変換テーマ (デフォルト: github) |
| quality | string | オプション | 変換品質要件 (fast, balanced, high) (デフォルト: balanced) |
- 使用例
DOCXからPDFへの最適な変換プランを教えてください。
process_pdf_post_conversion
変換後のPDF処理 - 生成されたPDFファイルに透かしやQRコードを追加する。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| playwrightPdfPath | string | 必須 | 生成されたPDFファイルパス |
| targetPath | string | オプション | ターゲットPDFファイルパス (指定しない場合は自動生成) |
| addWatermark | boolean | オプション | 透かしを追加するか (デフォルト: false) |
| addQrCode | boolean | オプション | QRコードを追加するか (デフォルト: false) |
| watermarkImage | string | オプション | 透かし画像パス |
| qrCodePath | string | オプション | QRコード画像パス |
- 使用例
「/path/to/converted.pdf」に透かしを追加してください。
add_watermark
PDF透かし追加ツール - PDFドキュメントに画像またはテキストの透かしを追加する。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| pdfPath | string | 必須 | PDFファイルパス |
| watermarkImage | string | オプション | 透かし画像パス (PNG/JPG) |
| watermarkText | string | オプション | 透かしテキストコンテンツ |
| watermarkImageScale | number | オプション | 画像スケール比率 (デフォルト: 0.25) |
| watermarkImageOpacity | number | オプション | 画像透明度 (デフォルト: 0.6) |
| watermarkImagePosition | string | オプション | 画像位置 (デフォルト: fullscreen) |
- 使用例
「/path/to/document.pdf」に「社外秘」という透かしを追加してください。
add_qrcode
PDF QRコード追加ツール - PDFドキュメントにQRコードを追加する。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
| pdfPath | string | 必須 | PDFファイルパス |
| qrCodePath | string | オプション | QRコード画像パス |
| qrScale | number | オプション | QRコードスケール比率 (デフォルト: 0.15) |
| qrOpacity | number | オプション | QRコード透明度 (デフォルト: 1.0) |
| qrPosition | string | オプション | QRコード位置 (デフォルト: bottom-center) |
| addText | boolean | オプション | 説明テキストを追加するか (デフォルト: true) |
- 使用例
「/path/to/document.pdf」にQRコードを右下に追加してください。
使用例
基本的なドキュメント読み取り
- 「~/Documents/report.docx」を読み取ってください。
- 「/home/user/papers/research.pdf」を読み取って、メタデータも抽出してください。
ドキュメント変換
- 「~/Documents/report.docx」をPDFに変換してください。
- 「~/Documents/article.md」をHTMLに変換して、GitHubテーマを適用してください。
- 「~/Documents/presentation.html」をDOCXに変換してください。
PDF機能強化
- 「~/Documents/contract.pdf」に透かしを追加してください。
- 「~/Documents/invoice.pdf」にQRコードを追加してください。
- 「~/Documents/report.pdf」に会社ロゴの透かしを追加してください。
コンテンツ書き換え
- 「~/Documents/contract.md」の会社名を書き換えてください。
- 「~/Documents/manual.docx」の用語をバッチ置換してください。
- 「~/Documents/article.html」の見出しレベルを調整してください。
変換プランニング
- DOCXからPDFへの最適な変換方法を提案してください。
- MarkdownをDOCXに変換する際の推奨設定を教えてください。
外部リンク
- Ops MCP Doc Ops MCPのGitHub
- Ops MCP Doc Ops MCP on Glama
- Ops MCP NPMパッケージ
- Model Context Protocol公式サイト