Skip to main content
Glama

Servidor de contexto de archivos

insignia de herrería

Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona contexto del sistema de archivos a los Modelos de Lenguaje Grandes (LLM). Este servidor permite a los LLM leer, buscar y analizar archivos de código con funciones avanzadas de almacenamiento en caché y supervisión de archivos en tiempo real.

Características

  • Operaciones con archivos

    • Leer el contenido de archivos y directorios

    • Lista de archivos con metadatos detallados

    • Vigilancia de archivos en tiempo real e invalidación de caché

    • Compatibilidad con múltiples codificaciones de archivos

    • Recorrido recursivo de directorios

    • Filtrado de tipos de archivos

  • Análisis de código

    • Cálculo de la complejidad ciclomática

    • Extracción de dependencia

    • Análisis de comentarios

    • Métricas de calidad:

      • Detección de líneas duplicadas

      • Detección de líneas largas (>100 caracteres)

      • Identificación de funciones complejas

      • Recuento de líneas (total, no vacías, comentarios)

  • Almacenamiento en caché inteligente

    • Estrategia de almacenamiento en caché LRU (menos utilizado recientemente)

    • Invalidación automática de caché al realizar cambios en archivos

    • Almacenamiento en caché con capacidad de tamaño y límites configurables

    • Estadísticas de caché y métricas de rendimiento

    • Almacenamiento en caché de los últimos resultados de lectura para búsquedas eficientes

  • Búsqueda avanzada

    • Coincidencia de patrones de expresiones regulares

    • Resultados sensibles al contexto con líneas circundantes configurables

    • Filtrado de tipos de archivos

    • Compatibilidad con búsqueda de múltiples patrones

    • Búsqueda de resultados en caché

    • Patrones de exclusión

Related MCP server: Unstructured Document Processor MCP

Instalación

Instalación mediante herrería

Para instalar File Context Server para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install @bsmi021/mcp-file-context-server --client claude

Instalación manual

npm install @modelcontextprotocol/file-context-server

Uso

Iniciando el servidor

npx file-context-server

Herramientas disponibles

  1. lista_de_archivos_de_contexto

    • Enumera los archivos en un directorio con metadatos detallados

    { "path": "./src", "recursive": true, "includeHidden": false }
  2. contexto_de_lectura

    • Lee el contenido de archivos o directorios con metadatos

    { "path": "./src/index.ts", "encoding": "utf8", "maxSize": 1000000, "recursive": true, "fileTypes": ["ts", "js"] }
  3. contexto de búsqueda

    • Busca patrones en archivos con contexto

    { "pattern": "function.*", "path": "./src", "options": { "recursive": true, "contextLines": 2, "fileTypes": ["ts"] } }
  4. analizar_código

    • Analiza archivos de código para métricas de calidad.

    { "path": "./src", "recursive": true, "metrics": ["complexity", "dependencies", "quality"] }
  5. estadísticas de caché

    • Obtiene estadísticas de caché y métricas de rendimiento

    { "detailed": true }

Manejo de errores

El servidor proporciona mensajes de error detallados con códigos de error específicos:

  • FILE_NOT_FOUND : El archivo o directorio no existe

  • PERMISSION_DENIED : Problemas de permisos de acceso

  • INVALID_PATH : Formato de ruta de archivo no válido

  • FILE_TOO_LARGE : El archivo excede el límite de tamaño

  • ENCODING_ERROR : Problemas de codificación de archivos

  • UNKNOWN_ERROR : Errores inesperados

Configuración

Variables de entorno para personalización:

  • MAX_CACHE_SIZE : Número máximo de entradas almacenadas en caché (predeterminado: 1000)

  • CACHE_TTL : Tiempo de vida de la caché en milisegundos (valor predeterminado: 1 hora)

  • MAX_FILE_SIZE : Tamaño máximo de archivo en bytes para lectura

Desarrollo

# Install dependencies npm install # Build npm run build # Run tests npm test # Start in development mode npm run dev

Licencia

Instituto Tecnológico de Massachusetts (MIT)

Contribuyendo

¡Agradecemos sus contribuciones! Lea nuestra Guía de Contribución para obtener más información sobre nuestro código de conducta y el proceso para enviar solicitudes de incorporación de cambios.

Compatibilidad de rutas entre plataformas

Nota: A partir de abril de 2025, todo el manejo de rutas de archivos y directorios en File Context Server se ha actualizado para mejorar la compatibilidad entre plataformas (Windows, macOS, Linux):

  • Todos los patrones glob utilizan rutas de estilo POSIX (barras diagonales) internamente, lo que garantiza una coincidencia consistente de archivos independientemente del sistema operativo.

  • Todas las operaciones del sistema de archivos (lectura, escritura, estadísticas, etc.) utilizan rutas absolutas normalizadas para garantizar la confiabilidad.

  • Si está desarrollando o ampliando el servidor, utilice path.posix.join para patrones glob y path.normalize para el acceso al sistema de archivos.

  • Este cambio evita problemas con los separadores de rutas y la coincidencia de archivos en diferentes sistemas operativos.

No se requieren cambios para los usuarios finales, pero los desarrolladores deben seguir estas convenciones al contribuir al proyecto.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/bsmi021/mcp-file-context-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server