mcpField
U
Unified Diff MCP Server

Unified Diff MCP Server

ローカル
github.com/gorosunバージョン管理1273 週間前に更新

Unified Diff MCP Server について

Unified Diff MCP Server は、unified diff を Claude Desktop などの MCP クライアント向けに視覚化します。HTML プレビューや共有用 GitHub Gist の作成、PNG・HTML のローカル保存に対応し、共有時のセキュリティレベルも設定できます。

主な機能

  1. 01HTML diff の描画
  2. 02GitHub Gist でのプレビュー共有
  3. 03diff の PNG・HTML 保存
  4. 04一時共有データの自動削除
  5. 05共有セキュリティレベルの選択

活用シーン

  1. 01並列表示でのコード変更レビュー
  2. 02チームへの一時的な diff リンクの共有
  3. 03ドキュメント用 diff 画像・HTML の保存

MCP 対応

unified diff をブラウザプレビューまたはローカルファイルに変換するツールを MCP クライアントに提供します。GitHub Gist 共有、一時削除、セキュリティレベルの設定に対応します。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Unified Diff MCP Server

smithery badge

Claude Desktop 向けの美しい差分表示です。コードの差分を、GitHub Gist 連携とローカルファイル出力で、見事なビジュアル比較に変換します。

Unified Diff の可視化スクリーンショット

✨ 機能

  • 🎨 diff2html を使用した美しい HTML 差分表示
  • 🌐 GitHub Gist 連携による即時共有
  • 📁 ローカルファイル出力(PNG/HTML)
  • 🔄 一時的な差分の自動削除機能
  • 🖥️ クロスプラットフォーム対応(Windows、macOS、Linux)
  • ⚡ Bun ランタイムによる高パフォーマンス
  • 🛡️ 共有差分を複数段階で保護する強化されたセキュリティ
  • 🔒 用途に応じた複数段階のセキュリティ(低/中/高)

🚀 クイックスタート

Smithery 経由でインストールする
bunx @smithery/cli install @gorosun/unified-diff-mcp --client claude --config '{
  "defaultAutoOpen": true,
  "defaultOutputMode": "html",
  "githubUsername": "your_actual_github_username",
  "githubToken": "ghp_your_actual_token_here"
}'
手動インストール
  1. Claude Desktop と Bun をインストールします
  2. クローンしてビルドします:
    git clone https://github.com/gorosun/unified-diff-mcp.git
    cd unified-diff-mcp
    bun install
    
  3. Claude Desktop を設定します — 詳細は以下の設定を参照してください

🛠️ ツールの概要

ツール目的出力最適な用途
visualize_diff_html_contentブラウザーでの表示と共有GitHub Gist + HTML プレビュー URL手軽な共有、即時表示
visualize_diff_output_fileローカルファイルへの保存PNG/HTML ファイルローカル保存、プレゼンテーション

📖 使用例

🎯 目的別の最適なプロンプト
目的推奨プロンプト使用するツール出力
クイックプレビューPlease visualize and preview the following diff:
以下のdiffを可視化してプレビューしてください
visualize_diff_html_contentGitHub Gist + HTML プレビュー URL
ローカル保存Please visualize and save the following diff to a file:
以下のdiffを可視化してファイルに保存してください
visualize_diff_output_fileローカルの HTML/PNG ファイル
他の人と共有Please visualize the following diff and create a shareable link:
以下のdiffを可視化して共有リンクを作成してください
visualize_diff_html_content共有可能な URL を含む GitHub Gist
画像としてエクスポートPlease visualize and save the following diff as a PNG image:
以下のdiffを可視化してPNG画像で保存してください
visualize_diff_output_fileローカルの PNG 画像
コードレビューPlease visualize the following diff in side-by-side format:
以下のdiffをside-by-side形式で可視化してください
どちらのツールでも可左右並列の比較
ドキュメント作成Please visualize and save the following diff as an HTML file:
以下のdiffを可視化してHTMLファイルで保存してください
visualize_diff_output_fileローカルの HTML ファイル
🔒 安全な共有Please visualize this diff with high security:
以下のdiffを高セキュリティで可視化してください
visualize_diff_html_content自動削除付きの Secret Gist
差分をすぐに共有する(GitHub Gist)
visualize_diff_html_content:
- Creates temporary GitHub Gist
- Auto-deletes after 30 minutes
- Instant browser-ready URLs
- Perfect for code reviews
差分をローカルに保存する
visualize_diff_output_file:
- Saves PNG or HTML to local disk
- Auto-opens in browser (optional)
- Perfect for documentation

🎛️ 設定

環境変数
変数説明デフォルト
GITHUB_TOKENGitHub Personal Access Token(Gist 連携用)visualize_diff_html_content の実行に必要
DEFAULT_AUTO_OPEN生成したファイルを自動で開くかどうかfalse
DEFAULT_OUTPUT_MODEデフォルトの出力形式(html または image)html
GitHub トークンの設定
  1. GitHub Settings > Personal Access Tokens に移動します
  2. gist スコープを指定して新しいトークンを生成します
  3. 環境に追加します:
    export GITHUB_TOKEN="your_token_here"
    
Claude Desktop の設定

macOS:

code ~/Library/Application\ Support/Claude/claude_desktop_config.json

Windows:

code %APPDATA%\Claude\claude_desktop_config.json

設定テンプレート:

{
  "mcpServers": {
    "unified-diff-mcp": {
      "command": "bun",
      "args": ["run", "/path/to/unified-diff-mcp/src/index.ts"],
      "env": {
        "GITHUB_TOKEN": "your_github_token_here",
        "DEFAULT_AUTO_OPEN": "true",
        "DEFAULT_OUTPUT_MODE": "html"
      }
    }
  }
}

📋 パラメーターリファレンス

共通パラメーター
パラメーター型デフォルト説明
diffstring(必須)統合形式の差分テキスト
formatstringside-by-side表示形式(line-by-line または side-by-side)
showFileListbooleantrueファイル一覧の概要を表示します
highlightbooleantrue構文のハイライトを有効にします
oldPathstringfile.txt元のファイルパス
newPathstringfile.txt変更後のファイルパス
autoOpenbooleanfalseブラウザーで自動的に開きます
GitHub Gist 固有のパラメーター
パラメーター型デフォルト説明
expiryMinutesnumber30自動削除までの時間(1~1440 分)
publicbooleanfalse公開 Gist とシークレット Gist の切り替え
ローカルファイル固有のパラメーター
パラメーター型デフォルト説明
outputTypestringhtml出力形式(html または image)

🌍 プラットフォームのサポート

プラットフォーム自動で開くコマンド
Windows✅start(優先)、explorer(フォールバック)
macOS✅open(優先)、AppleScript(フォールバック)
Linux✅xdg-open

🔧 開発

開発モード(ホットリロード有効):

{
  "command": "bun",
  "args": ["--watch", "/path/to/unified-diff-mcp/src/index.ts"]
}

本番モード:

{
  "command": "bun",
  "args": ["run", "/path/to/unified-diff-mcp/src/index.ts"]
}

📚 高度な使い方

🔒 強化されたセキュリティレベル

GitHub Token を利用できない場合や、安全に共有したい場合は、複数のセキュリティレベルから選択できます。

セキュリティレベル設定機能用途
🟢 低シークレット Gist + 60 分後に自動削除URL のみでアクセス可能コード例、学習
🟡 中シークレット Gist + パスワード + 30 分後に自動削除URL とアクセスコードが必要チームレビュー
🔴 高シークレット Gist + パスワード + 15 分後に自動削除URL、アクセスコード、短い有効期間機密性の高いコード
使用例
Please visualize this diff with high security:
--- a/config.js
+++ b/config.js
@@ -1,3 +1,4 @@
 const config = {
-  apiKey: 'old-key'
+  apiKey: 'new-secure-key',
+  timeout: 5000
 };

応答例:

🔒 **Secure Diff Visualization**

🔴 **Security Level**: High Security - Secret Gist + Password (15min auto-delete)
📋 **Preview Link**: https://htmlpreview.github.io/?...
🔑 **Access Code**: `a7x9k2`
⏰ **Auto-delete**: 15 minutes
🔄 フォールバック機能

GitHub Token を利用できない場合、システムはローカルファイルにフォールバックします。

  • HTML を一時ファイルとして保存します
  • ブラウザーを自動的に開きます
  • セキュリティに応じてファイルを管理します

詳しいセットアップと統合ガイドについては、以下をご覧ください。

🤝 対応クライアント

  • Claude Desktop(主要)
  • Claude Code(CLI)
  • VS Code + MCP Extension
  • Cline およびその他の MCP クライアント

📄 ライセンス

MIT License — 詳細は LICENSE ファイルをご覧ください。

依存関係
ライブラリライセンス用途
diff2htmlMITHTML 差分の生成
playwright-coreApache 2.0ブラウザーの自動化
@modelcontextprotocol/sdkMITMCP 統合

Claude Desktop コミュニティのために ❤️ を込めて作成

コメント

MCP は初めてですか?

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

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