local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Stores knowledge about code entities, relationships, patterns, and style conventions from a codebase, with support for incremental updates when code changes.
Referenced for source code management and contributions, allowing users to clone the repository and submit pull requests.
SourceSage: LLM のための効率的なコードメモリ
SourceSageは、コードベースの主要な側面(ロジック、スタイル、標準)を効率的に記憶し、動的な更新と高速な取得を可能にするMCP(Model Context Protocol)サーバーです。LLMの複数言語にわたるコード理解を活用し、言語に依存しないように設計されています。
特徴
- 言語に依存しない: LLMが理解できるあらゆるプログラミング言語で動作します
- ナレッジグラフストレージ: コードエンティティ、関係、パターン、スタイル規則を効率的に保存します
- LLM駆動型分析:LLMを利用してコードを分析し、洞察を提供する
- トークン効率の高いストレージ: メモリ容量を最大化しながらトークンの使用を最小限に抑えるように最適化します。
- 増分更新:冗長ストレージなしでコードが変更されたときに知識を更新します
- 高速検索:関連情報を迅速かつ正確に検索できます
仕組み
SourceSage は次のような斬新なアプローチを採用しています:
- LLMはコードファイル(あらゆる言語)を分析します
- LLMはMCPツールを使用して、エンティティ、関係、パターン、およびスタイル規則を登録します。
- SourceSageはこの知識をトークン効率の良いグラフ構造に保存する
- LLMは必要に応じてこの知識を後で照会できる。
このアプローチは、LLM の固有の言語理解を活用しながら、MCP サーバーを効率的なメモリ管理に重点を置きます。
インストール
使用法
MCPサーバーの実行
Claude for Desktop への接続
- デスクトップ版Claudeを開く
- 設定 > 開発者 > 設定の編集に移動します
claude_desktop_config.json
に以下を追加します。
パッケージをインストールした場合:
インストールせずにローカル ディレクトリから実行している場合:
- デスクトップ版のClaudeを再起動
利用可能なツール
SourceSage は次の MCP ツールを提供します。
- register_entity : ナレッジグラフにコードエンティティを登録するCopy
- register_relationship : エンティティ間の関係を登録するCopy
- register_pattern : コードパターンを登録するCopy
- register_style_convention : コーディングスタイル規約を登録するCopy
- add_entity_observation : エンティティに観測を追加するCopy
- query_entities : ナレッジグラフ内のクエリエンティティCopy
- get_entity_details : エンティティの詳細情報を取得するCopy
- query_patterns : ナレッジグラフ内のクエリコードパターンCopy
- query_style_conventions : クエリコーディングスタイルの規約Copy
- get_knowledge_statistics : ナレッジグラフに関する統計情報を取得する
- clear_knowledge : グラフからすべての知識をクリアします
クロードによるワークフローの例
- コードの分析: Claude にコードファイルの分析を依頼しますCopy
- エンティティの登録: Claudeはregister_entityツールを使用してコードエンティティを保存します。Copy
- 関係の登録: Claudeはregister_relationshipツールを使用して関係を保存しますCopy
- クエリ知識: 後で、Claudeにコードベースについて質問しますCopy
- コーディングパターンを入手する: コーディングパターンについてクロードに質問するCopy
どう違うのか
従来のコード分析ツールとは異なり、SourceSage は次のことを行います。
- LLMの理解を活用: LLMの能力を活用して言語間のコードセマンティクスを理解します
- 意味的知識を保存: 構文だけでなく意味と関係性に焦点を当てます
- 言語に依存しない: LLMが理解できるあらゆるプログラミング言語で動作します
- トークン効率を最適化: トークンの使用を最小限に抑える方法で知識を保存します
- LLMの機能とともに進化: LLMが進化するにつれて、コードの理解も向上します
貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。
This server cannot be installed
SourceSageは、コードベースの主要な側面(ロジック、スタイル、標準)を効率的に記憶し、動的な更新と高速な取得を可能にするMCP(Model Context Protocol)サーバーです。LLMの複数言語にわたるコード理解を活用し、言語に依存しないように設計されています。