Unreal Engine コードアナライザー MCP サーバー
Unreal Engineのコードベースに強力なソースコード解析機能を提供するModel Context Protocol(MCP)サーバー。このツールにより、ClaudeやClineといったAIアシスタントはUnreal Engineのソースコードを深く理解し、解析できるようになります。
特徴
- クラス分析: メソッド、プロパティ、継承を含む C++ クラスの詳細情報を取得します。
- 階層マッピング: クラスの継承階層を視覚化して理解する
- コード検索: コンテキストに応じた結果でコードを検索します
- 参照の検索: クラス、関数、変数へのすべての参照を検索します
- サブシステム分析: レンダリング、物理などの主要な Unreal Engine サブシステムを分析します。
- ゲームジャンル知識: ゲームのジャンル、機能、実装パターンに関する知識ベースが組み込まれています
- パターン検出と学習: 一般的な Unreal Engine パターンを識別し、学習リソースを提供します
- カスタムコードベースサポート: 独自の Unreal Engine プロジェクトのコードベースを分析します
クイックスタート
インストール
- このリポジトリをクローンします:
- 依存関係をインストールします:
- プロジェクトをビルドします。
構成
Claudeデスクトップアプリ
Claude デスクトップ構成ファイル (Windows の場合は%APPDATA%\Claude\claude_desktop_config.json
) に次のコードを追加します。
クラインのために
Cline MCP 設定ファイル (Windows の場合は%APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json
) に以下を追加します。
技術的な詳細
アナライザーは以下を使用して構築されます:
- 型安全なコードのためのTypeScript
- 堅牢な C++ 解析のための Tree-sitter
- AIアシスタント統合のためのモデルコンテキストプロトコルSDK
- ファイルパターンマッチングのためのGlob
主な依存関係:
- @modelcontextprotocol/create-server: ^0.1.0
- 木に座っている人: ^0.20.1
- ツリーシッターcpp: ^0.20.0
- グロブ: ^8.1.0
使用法
分析ツールを使用する前に、まず Unreal Engine ソース パスまたはカスタム コードベース パスのいずれかを設定する必要があります。
分析の設定
Unreal Engineソースコード
カスタムC++コードベースの場合
カスタムコードベース機能を使用すると、あらゆるC++プロジェクトを分析できます。例えば:
- ゲームエンジン(Unity、Godot、カスタムエンジン)
- グラフィックライブラリ(OpenGL、Vulkan、DirectX)
- フレームワーク(Qt、Boost、SFML)
- 任意のC++アプリケーションまたはライブラリ
カスタム ゲーム エンジンを分析する例:
Qt アプリケーションを分析する例:
利用可能なツール
1. クラス分析
出力例:
2. クラス階層分析
出力例:
3. 参考文献の発見
出力例:
4. コード検索
出力例:
5. パターン検出とベストプラクティス
アナライザーには、Unreal Engine のベスト プラクティスを理解して従うための 2 つの強力なツールが用意されています。
パターン検出
出力例:
ベストプラクティスガイド
出力例:
ベスト プラクティス ガイドでは、Unreal Engine の主要な概念について説明します。
- UPROPERTY: 不動産の反映と露出
- UFUNCTION: 関数リフレクションとブループリントの統合
- コンポーネント: コンポーネントの作成と管理
- イベント: イベント処理と委任
- レプリケーション: ネットワークレプリケーションのセットアップ
- ブループリント: ブループリント/C++ のインタラクション パターン
6. APIドキュメントクエリ
出力例:
API ドキュメント クエリ ツールは以下を提供します。
- クラスドキュメント全体の全文検索
- カテゴリとモジュールによるフィルタリング
- コード例と使用パターン
- 関連性に基づいた結果の並べ替え
- 公式ドキュメントへのリンク
7. サブシステム分析
出力例:
APIドキュメント
アナライザーには、包括的な API ドキュメント機能が含まれるようになりました。
- 自動ドキュメント生成
- ソースコードのコメントからドキュメントを抽出します
- 階級構造と関係を分析する
- クラスをタイプとモジュール別に分類します
- 構文例と使用パターンを生成する
- スマート検索
- すべてのドキュメントの全文検索
- 関連性に基づいた結果のランキング
- カテゴリとモジュールのフィルタリング
- コード例の組み込み
- ドキュメントのカテゴリ
- オブジェクト: 基本オブジェクト クラス (UObject 派生クラス)
- アクター: アクタークラス (AActor 派生クラス)
- 構造: データ構造と型
- コンポーネント: コンポーネントクラス
- その他: その他のクラスとユーティリティ
- モジュール構成
- コア: コアエンジン機能
- RenderCore: レンダリングシステム
- PhysicsCore: 物理エンジン
- その他のエンジンモジュール
- 既存のツールとの統合
- 詳細情報についてはクラス分析へのリンクをご覧ください
- ベストプラクティスのためのパターン検出に接続
- 公式のUnreal Engineドキュメントを参照
- 学習リソースと例を提供します
ベストプラクティス
- 分析ツールを使用する前に、必ず Unreal Engine パスまたはカスタム コードベース パスのいずれかを設定してください。
- 分析時には特定のクラス名を使用します(例:単に「Class」ではなく「MyClass」)
search_code
のファイルパターンパラメータを活用して結果を絞り込む- クラス階層を分析する際には実装されたインターフェースを含めて完全な理解を得る
- サブシステム分析ツールを使用して、特定のクラスに進む前に概要を把握します (Unreal Engine のみ)
エラー処理
アナライザーは、次の場合に明確なエラー メッセージを表示します。
- コードベース パスが設定されていません (Unreal Engine またはカスタム)
- 指定されたパスは存在しないかアクセスできません
- コードベースにクラスまたはシンボルが見つかりません
- 無効なファイルパターンが指定されました
- 検索クエリまたはC++コードの構文エラー
- ソースファイルへのアクセスは制限されています
- C++ ファイルの Tree-sitter 解析が失敗する
パフォーマンスに関する考慮事項
- 大規模なコードベースでは分析に時間がかかる場合があります
- 複雑なクラス階層では処理に時間がかかる場合があります
- 幅広い検索パターンでは多くの一致が見つかる可能性がある
- より早く結果を得るために、より具体的なクエリの使用を検討してください
テスト
このプロジェクトには、すべての主要コンポーネントに対する包括的なテストが含まれています。
テスト範囲
- アナライザー テスト: UnrealCodeAnalyzer クラスのコア機能テスト
- 初期化とパス検証
- クラス分析と解析
- 参考文献
- コード検索
- サブシステム分析
- キャッシュ管理
- ゲームジャンルテスト:ゲームジャンル知識ベースの検証
- データ構造の検証
- ジャンル固有の機能検証
- コンポーネントの命名規則
- データの完全性チェック
- MCP サーバーテスト: MCP サーバー実装のテスト
- サーバーの初期化
- ツールの登録と取り扱い
- リクエスト/レスポンスの検証
- エラー処理
- ツール固有の機能テスト
テストの実行
すべてのテストを実行します。
ウォッチモードでテストを実行します (開発中に便利です):
テストを書く
新しい機能を提供する際は、次の点に注意してください。
- すべての新機能には対応するテストカバレッジがあります
- テストは
src/__tests__
ディレクトリに整理されます - 外部依存関係を適切にモックする
- 一貫性を保つために既存のテストパターンに従う
貢献
貢献を歓迎します!改善点があれば、お気軽にプルリクエストを送信してください。
- ソースコード解析機能
- 新しい分析機能
- パフォーマンスの最適化
- ドキュメントの改善
- テスト範囲
PR を送信する前に:
- すべてのテストが合格することを確認する(
npm test
) - 新しい機能のテストを追加する
- 必要に応じてドキュメントを更新する
Related MCP Servers
- -securityFlicense-qualityProvides code generation and completion capabilities using the DeepSeek API, with support for tool chaining and cost optimization.Last updated -4
- -securityFlicense-qualityA local server that provides powerful code analysis and search capabilities for software projects, helping AI assistants and development tools understand codebases for tasks like code generation and refactoring.Last updated -3
- -securityAlicense-qualityProvides AI-enhanced code search capabilities by integrating with Sourcegraph, allowing AI assistants to search across multiple repositories and codebases with advanced query syntax.Last updated -12MIT License
- -securityAlicense-qualityEnables semantic code search across projects using AI embeddings to find code by meaning rather than just text matching. Provides fast intelligent search, symbol analysis, and code similarity detection with multi-language support.Last updated -MIT License