🌟 SourceSage MCP
📖 概要
SourceSageは、プロジェクトのディレクトリ構造を美しいマークダウン形式で可視化するMCPサーバーです。TypeScriptで実装され、高度なカスタマイズ性と柔軟な除外パターン機能を提供します。また、各ファイルの内容を自動的にドキュメント化し、プロジェクトの全体像を把握しやすくします。
🎯 主な特徴
📁 ディレクトリ構造のマークダウン形式での出力
🎨 美しい木構造表示(ASCII art)
📝 ファイル内容の自動ドキュメント化(言語別のシンタックスハイライト付き)
🔍 柔軟な除外パターン(.SourceSageignore)
🚀 ES2022とNode16モジュールシステムによる最新の実装
💫 厳格な型チェックによる高い信頼性
🛠️ 技術スタック
🔷 TypeScript (ES2022ターゲット)
📦 Model Context Protocol SDK (v0.6.0)
🌐 Node.js (Node16モジュールシステム)
📚 glob (v11.0.0) - ファイルパターンマッチング
🎭 ignore (v6.0.2) - 柔軟なファイル除外機能
📂 プロジェクト構造
⚙️ TypeScript設定
⚙️ インストール
npmからインストール
ソースからビルド
🔧 使用方法
MCPサーバーとしての設定
MCPの設定ファイルに以下を追加:
🎮 使用可能なツール
generate_structure
プロジェクトのディレクトリ構造を生成し、ファイル内容も含めた詳細なドキュメントを作成します。
使用例
出力サンプル
実際のプロジェクト構造の出力例:
この出力には以下の情報が含まれます:
📁 プロジェクト名とOS情報
🌳 ディレクトリツリー構造
📝 各ファイルの役割と説明
🔍 .SourceSageignoreによる不要ファイルの除外
📝 .SourceSageignoreの設定
プロジェクトのルートに.SourceSageignore
ファイルを作成し、除外したいパターンを記述します。デフォルトで以下のような除外パターンが含まれています:
🔄 出力例
👨💻 開発者向け情報
主要な実装詳細
Server Class:
SourceSageServer
クラスがMCPサーバーの中核機能を提供Tree Building:
buildTree
メソッドが再帰的にディレクトリ構造を解析ディレクトリとファイルを適切にソートして表示
File Filtering:
ignore
パッケージを使用して柔軟なファイル除外を実現豊富なデフォルト除外パターンとカスタム設定をサポート
Content Generation:
ファイルタイプに応じた適切なシンタックスハイライト
ファイルの種類に基づく追加情報の提供
Async Processing:
glob
パッケージを使用した効率的なファイル走査非同期処理による大規模プロジェクトのサポート
開発環境のセットアップ
利用可能なnpmスクリプト
npm run build
: TypeScriptのコンパイルと実行権限の設定npm run prepare
: インストール時の自動ビルドnpm run watch
: 開発時の自動コンパイルnpm run inspector
: MCPインスペクターの起動
🤝 コントリビューション
このリポジトリをフォーク
新しいブランチを作成 (
git checkout -b feature/amazing-feature
)変更をコミット (
git commit -m '✨ feat: 素晴らしい機能を追加'
)ブランチにプッシュ (
git push origin feature/amazing-feature
)プルリクエストを作成
📄 ライセンス
MIT License - 詳細は LICENSE ファイルを参照してください。
🔗 関連リンク
👥 メンテナー
Sunwood AI Labs Team
local-only server
The server can only run on the client's local machine because it depends on local resources.
Tools
A TypeScript-based server that visualizes project directory structures in Markdown format, automatically documenting file contents with syntax highlighting and supporting customizable exclusion patterns.
- 📖 概要
- 🎯 主な特徴
- 🛠️ 技術スタック
- 📂 プロジェクト構造
- ⚙️ TypeScript設定
- ⚙️ インストール
- 🔧 使用方法
- 📝 .SourceSageignoreの設定
- 🔄 出力例
- 👨💻 開発者向け情報
- 🤝 コントリビューション
- 📄 ライセンス
- 🔗 関連リンク
- 👥 メンテナー
Related Resources
Related MCP Servers
- -securityFlicense-qualityThis TypeScript-based server implements a simple notes system, allowing users to create and manage text notes and generate summaries, showcasing core MCP concepts.Last updated -012
- -securityAlicense-qualityA server that provides structured access to markdown documentation from NPM packages, Go Modules, or PyPi packages, enabling informed code generation by exposing these docs as resources or tools.Last updated -1MIT License
- AsecurityAlicenseAqualityDeep directory tree visualization tool enabling efficient visualization of complex directory structures with AI-powered analysis capabilities.Last updated -11610MIT License
- -securityFlicense-qualityA demonstration server that provides tools for analyzing project structures and automatically generating comprehensive README files.Last updated -