local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Analyzes C/C++ source files to detect includes and differentiate between system and local headers for dependency tracking and importance ranking.
Processes JavaScript files using regex patterns to detect import/require statements for dependency tracking and importance ranking.
Supports running the MCP server from WSL Linux environments with compatible configuration files.
Servidor MCP (Protocolo de contexto de modelo) de rango de archivo
Una herramienta basada en TypeScript para clasificar archivos en su base de código por importancia y proporcionar resúmenes con seguimiento de dependencias.
Descripción general
Esta herramienta te ayuda a identificar los archivos más importantes de tu proyecto, calificándolos de 0 (menos importante) a 10 (más importante). También rastrea las dependencias de los archivos y proporciona resúmenes, lo que te ayuda a comprender la estructura del código base.
Características
- Clasifique los archivos en una escala de 0 a 10 (siendo 10 el más importante)
- Realizar un seguimiento y visualizar las dependencias de los archivos (qué archivos importan cuáles)
- Monitoreo del sistema de archivos en tiempo real para actualizaciones automáticas
- Obtener resúmenes de archivos (con marcador de posición para la integración de LLM)
- Clasificaciones de consultas para archivos individuales, directorios o toda la base de código
- API autodocumentada con puntos finales de descubrimiento
- Interfaz JSON de stdio simple
Configuración
- Clonar este repositorio
- Hacer que el script de compilación sea ejecutable:Copy
- Ejecute el script de compilación:Esto hará lo siguiente:Copy
- Comprobar la instalación de Node.js
- Instalar dependencias del proyecto
- Compilar código TypeScript
- Generar configuración de MCP
- Cree un archivo de registro detallado en
/tmp/file-rank-mcp_*.log
- Mueva el
mcp.json
generado al directorio.cursor/
de su proyecto para usarlo con Cursor AI
Uso
La herramienta se comunica mediante JSON a través de stdio mediante el Protocolo de Contexto de Modelo (MCP). Supervisa automáticamente el directorio del proyecto para detectar cambios y actualiza el árbol de archivos según corresponda.
Ejecución del servidor
Idiomas compatibles
El servidor detecta automáticamente las dependencias en los siguientes idiomas:
- Python: declaraciones
import
yfrom ... import
- C/C++: directivas
#include
- Rust: declaraciones de
use
ymod
- Lua: declaraciones
require
- JavaScript/TypeScript: declaraciones
import
Cómo funciona
La herramienta mantiene una estructura de árbol de tu código base en tiempo real, almacenada en file-tree.json
. Este archivo se actualiza automáticamente al detectar cambios en el directorio de tu proyecto.
Estructura de datos
El árbol de archivos se almacena en una estructura JSON:
Detección de dependencia
La herramienta analiza el código fuente para detectar dependencias:
- Analiza el contenido del archivo en busca de patrones de importación específicos del idioma.
- Resuelve las importaciones relativas a rutas absolutas
- Verifica que existan los archivos importados
- Calcula la importancia en función del recuento de dependencias
Cálculo de la importancia de los archivos
A los archivos se les asignan puntuaciones de importancia (de 0 a 10) en función de:
- Número de dependencias (archivos que importan este archivo)
- Posición en el árbol de dependencia
- Tipo de archivo y ubicación
Pila técnica
- TypeScript/Node.js
- SDK del protocolo de contexto de modelo (v1.7.0)
- Chokidar para monitorear el sistema de archivos
- Objetivo ES2020 con módulos CommonJS
Desarrollo
Para modificar o ampliar el proyecto:
- Realizar cambios en los archivos TypeScript en el directorio
src
- Ejecute el script de compilación para compilar y actualizar la configuración:Copy
- Ejecutar el servidor:Copy
El script de compilación hará lo siguiente:
- Instalar cualquier dependencia nueva
- Compilar código TypeScript
- Generar configuración de MCP actualizada
- Crear un archivo de registro detallado para la resolución de problemas
Integración con LLM
La implementación actual incluye un marcador de posición para la integración de LLM. En un entorno de producción, el servidor podría ampliarse para:
- Generar resúmenes de archivos utilizando LLM
- Analizar la complejidad y mantenibilidad del código
- Proporcionar sugerencias inteligentes para la organización de archivos.
- Generar documentación basada en la estructura del código
Licencia
Este proyecto está licenciado bajo la Licencia Pública General GNU v3 (GPL-3.0). Consulte el archivo LICENSE para ver el texto completo de la licencia.
This server cannot be installed
Una herramienta que ayuda a clasificar los archivos de código base por importancia (escala del 1 al 10), rastrear las dependencias de los archivos y proporcionar resúmenes, todo accesible a través de una interfaz simple basada en JSON.