Skip to main content
Glama

MCP File Context Server

by bsmi021

Servidor de contexto de archivos

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

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.

-
security - not tested
A
license - permissive license
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

Un servidor de protocolo de contexto de modelo que permite a los LLM leer, buscar y analizar archivos de código con capacidades avanzadas de almacenamiento en caché y observación de archivos en tiempo real.

  1. Características
    1. Instalación
      1. Instalación mediante herrería
      2. Instalación manual
    2. Uso
      1. Iniciando el servidor
      2. Herramientas disponibles
    3. Manejo de errores
      1. Configuración
        1. Desarrollo
          1. Licencia
            1. Contribuyendo
              1. Compatibilidad de rutas entre plataformas

                Related MCP Servers

                • A
                  security
                  A
                  license
                  A
                  quality
                  A Model Context Protocol server that provides tools for code modification and generation via Large Language Models, allowing users to create, modify, rewrite, and delete files using structured XML instructions.
                  Last updated -
                  12
                  Python
                  MIT License
                  • Linux
                  • Apple
                • -
                  security
                  F
                  license
                  -
                  quality
                  A Model Context Protocol server that enables LLMs to extract and use content from unstructured documents across a wide variety of file formats.
                  Last updated -
                  2
                  Python
                  • Apple
                • -
                  security
                  F
                  license
                  -
                  quality
                  A Model Context Protocol server that connects LLMs to the Compiler Explorer API, enabling them to compile code, explore compiler features, and analyze optimizations across different compilers and languages.
                  Last updated -
                  Python
                • A
                  security
                  A
                  license
                  A
                  quality
                  A Model Context Protocol server that helps large language models process code repositories by providing file tree generation, code merging, and code analysis capabilities.
                  Last updated -
                  3
                  14
                  JavaScript
                  MIT License

                View all related MCP servers

                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