🌟 Fuente Sage MCP
📖 Descripción general
SourceSage es un servidor MCP que visualiza la estructura de directorios de su proyecto en un hermoso formato Markdown. Se implementa en TypeScript y ofrece un alto grado de personalización y capacidades flexibles de exclusión de patrones. También documenta automáticamente el contenido de cada archivo, lo que facilita la comprensión del panorama general del proyecto.
Related MCP server: Simple Files Vector Store Server
🎯 Características principales
Salida de la estructura de directorio en formato Markdown
🎨 Hermosa exhibición de estructura de árbol (arte ASCII)
📝 Documentación automática del contenido del archivo (con resaltado de sintaxis específico del idioma)
🔍 Patrones de exclusión flexibles (.SourceSageignore)
🚀 Una implementación moderna que utiliza ES2022 y el sistema de módulos Node.js.
💫 Alta confiabilidad debido a una estricta verificación de tipos
🛠️ Pila de tecnología
🔷 TypeScript (objetivo ES2022)
SDK del protocolo de contexto de modelo (v0.6.0)
🌐 Node.js (sistema de módulos Node 16)
📚 glob (v11.0.0) - Coincidencia de patrones de archivos
Ignorar (v6.0.2): funcionalidad flexible de exclusión de archivos
📂 Estructura del proyecto
source-sage/
├── assets/
│ └── header.svg # プロジェクトヘッダー画像
├── src/
│ └── index.ts # メインサーバー実装
├── build/ # コンパイル済みJavaScriptファイル
├── .gitignore # Gitの除外設定
├── .SourceSageignore # SourceSage固有の除外設定
├── package.json # プロジェクト設定・依存関係
├── README.md # プロジェクトドキュメント
└── tsconfig.json # TypeScript設定⚙️ Configuración de TypeScript
{
"compilerOptions": {
"target": "ES2022", // 最新のECMAScript機能を活用
"module": "Node16", // Node.js 16の最新モジュールシステムを使用
"moduleResolution": "Node16",
"outDir": "./build", // コンパイル済みファイルの出力先
"rootDir": "./src", // ソースファイルのルートディレクトリ
"strict": true, // 厳格な型チェックを有効化
"esModuleInterop": true, // CommonJSモジュールとの相互運用性を確保
"skipLibCheck": true, // 型定義ファイルのチェックをスキップ
"forceConsistentCasingInFileNames": true // ファイル名の大文字小文字を厳格に管理
}
}⚙️ Instalación
Instalar desde npm
npm install -g @sunwood-ai-labs/source-sage-mcp-serverConstruir desde la fuente
git clone https://github.com/sunwood-ai-labs/source-sage-mcp-server.git
cd source-sage-mcp-server
npm install
npm run build🔧 Cómo utilizar
Configuración como servidor MCP
Agregue lo siguiente a su archivo de configuración MCP:
{
"mcpServers": {
"source-sage": {
"command": "node",
"args": ["C:/path/to/source-sage/build/index.js"]
}
}
}🎮 Herramientas disponibles
generar_estructura
Genera una estructura de directorio para su proyecto y proporciona documentación detallada, incluido el contenido de los archivos.
interface GenerateStructureArgs {
// 構造を生成するディレクトリのパス(必須)
// 必ず絶対パスで指定してください
path: string;
// .SourceSageignoreファイルのパス(オプション)
// 指定する場合は絶対パスで指定してください
ignorePath?: string;
}Ejemplo de uso
// 絶対パスでの使用(推奨)
const result = await mcpClient.callTool('source-sage', 'generate_structure', {
path: 'C:/Users/your-name/path/to/your-project',
ignorePath: 'C:/Users/your-name/path/to/your-project/.SourceSageignore'
});Muestra de salida
Ejemplo de salida de la estructura real del proyecto:
# 📁 Project: source-sage
## 🌳 ディレクトリ構造
OS: win32
Directory: C:\Users\your-name\source-sage
└─ source-sage/
├─ src/
│ └─ index.ts # MCPサーバーの主要な実装
├─ package.json # プロジェクトの依存関係と設定
├─ README.md # プロジェクトの詳細な説明
└─ tsconfig.json # TypeScriptのコンパイル設定La salida incluye la siguiente información:
📁 Nombre del proyecto e información del sistema operativo
🌳 Estructura del árbol de directorios
📝 Rol y descripción de cada archivo
🔍 Excluye archivos innecesarios con .SourceSageignore
Configuración de .SourceSageignore
Crea un archivo .SourceSageignore en la raíz de tu proyecto y coloca en él los patrones que deseas excluir. De forma predeterminada, se incluyen los siguientes patrones de exclusión:
# バージョン管理システム関連
.git
.gitignore
# キャッシュファイル
__pycache__
.pytest_cache
**/__pycache__/**
*.pyc
# ビルド・配布関連
build
dist
*.egg-info
# 一時ファイル・出力
output
output.md
test_output
.SourceSageAssets
.SourceSageAssetsDemo
# アセット
*.png
*.svg
assets
# その他
LICENSE
example
folder
package-lock.json🔄 Ejemplo de salida
# 📁 Project: my-project
## 🌳 ディレクトリ構造
OS: win32
Directory: C:\path\to\my-project
└─ my-project/
├─ src/
│ ├─ index.ts
│ └─ utils/
│ └─ helper.ts
└─ package.json
## 📄 ファイル内容
### 📝 `src/index.ts`
**Type**: TypeScript Source File
👨💻 Información para desarrolladores
Detalles clave de implementación
Clase de servidor :
SourceSageServerproporciona la funcionalidad principal del servidor MCP.Edificio del árbol :
buildTreeanaliza recursivamente la estructura del directorio.Ordenar y mostrar correctamente directorios y archivos
Filtrado de archivos :
Utilice el paquete
ignorepara la exclusión flexible de archivosAdmite una amplia gama de patrones de exclusión predeterminados y configuraciones personalizadas.
Generación de contenido :
Resaltado de sintaxis adecuado para su tipo de archivo
Proporcionar información adicional según el tipo de archivo
Procesamiento asincrónico :
Escaneo eficiente de archivos usando el paquete
globApoyo a grandes proyectos con procesamiento asincrónico
Configuración de su entorno de desarrollo
# リポジトリのクローン
git clone https://github.com/sunwood-ai-labs/source-sage-mcp-server.git
# 依存関係のインストール
npm install
# 開発用ビルド
npm run build
# 開発サーバーの起動
npm run inspectorScripts npm disponibles
npm run build: compila TypeScript y establece permisos de ejecuciónnpm run prepare: compilación automática durante la instalaciónnpm run watch: compilación automática durante el desarrollonpm run inspector: Inicia el inspector MCP
🤝 Contribuciones
Bifurcar este repositorio
Crea una nueva rama (
git checkout -b feature/amazing-feature)Confirme sus cambios (
git commit -m '✨ feat: 素晴らしい機能を追加')Empujar a la rama (
git push origin feature/amazing-feature)Crear una solicitud de extracción
📄 Licencia
Licencia MIT: consulte el archivo LICENCIA para obtener más detalles.
🔗 Enlaces relacionados
👥 Mantenedores
Equipo de Sunwood AI Labs