Filesystem MCP Server

local-only server

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

Integrations

  • Provides containerization for the filesystem MCP server, allowing secure access to specified directories through Docker mounts. The README includes Docker configuration examples.

  • The MCP server is implemented in Node.js, providing filesystem access capabilities through a standardized protocol.

Servidor MCP del sistema de archivos

Servidor Node.js que implementa el Protocolo de Contexto de Modelo (MCP) para operaciones del sistema de archivos.

Características

  • Leer/escribir archivos
  • Crear/enumerar/eliminar directorios
  • Mover archivos/directorios
  • Buscar archivos
  • Obtener metadatos de archivos

Nota : El servidor solo permitirá operaciones dentro de los directorios especificados mediante args .

API

Recursos

  • file://system : Interfaz de operaciones del sistema de archivos

Herramientas

  • leer_archivo
    • Leer el contenido completo de un archivo
    • Entrada: path (cadena)
    • Lee el contenido completo del archivo con codificación UTF-8
  • leer_múltiples_archivos
    • Leer varios archivos simultáneamente
    • Entrada: paths (cadena[])
    • Las lecturas fallidas no detendrán toda la operación
  • escribir_archivo
    • Crear un nuevo archivo o sobrescribir uno existente (tenga cuidado con esto)
    • Entradas:
      • path (cadena): Ubicación del archivo
      • content (cadena): contenido del archivo
  • archivo_de_edición
    • Realice ediciones selectivas utilizando coincidencia de patrones y formato avanzados
    • Características:
      • Coincidencia de contenido basada en líneas y multilíneas
      • Normalización de espacios en blanco con conservación de sangría
      • Múltiples ediciones simultáneas con posicionamiento correcto
      • Detección y conservación del estilo de sangría
      • Salida de diferencias al estilo Git con contexto
      • Vista previa de los cambios con el modo de ejecución en seco
    • Entradas:
      • path (cadena): Archivo a editar
      • edits (matriz): Lista de operaciones de edición
        • oldText (cadena): Texto a buscar (puede ser una subcadena)
        • newText (cadena): Texto con el que reemplazar
      • dryRun (booleano): Vista previa de los cambios sin aplicarlos (valor predeterminado: falso)
    • Devuelve información detallada de diferencias y coincidencias para ejecuciones en seco; de lo contrario, aplica los cambios.
    • Práctica recomendada: utilice siempre dryRun primero para obtener una vista previa de los cambios antes de aplicarlos
  • crear_directorio
    • Crear un nuevo directorio o asegurarse de que exista
    • Entrada: path (cadena)
    • Crea directorios principales si es necesario
    • Tiene éxito silenciosamente si el directorio existe
  • directorio_de_lista
    • Listar el contenido del directorio con prefijos [FILE] o [DIR]
    • Entrada: path (cadena)
  • mover_archivo
    • Mover o renombrar archivos y directorios
    • Entradas:
      • source (cadena)
      • destination (cadena)
    • Falla si el destino existe
  • archivos de búsqueda
    • Buscar archivos/directorios de forma recursiva
    • Entradas:
      • path (cadena): Directorio de inicio
      • pattern (cadena): Buscar patrón
      • excludePatterns (string[]): Excluye cualquier patrón. Se admiten formatos glob.
    • Coincidencia sin distinción entre mayúsculas y minúsculas
    • Devuelve rutas completas a las coincidencias
  • obtener_información_del_archivo
    • Obtener metadatos detallados de archivos/directorios
    • Entrada: path (cadena)
    • Devoluciones:
      • Tamaño
      • Tiempo de creación
      • Hora modificada
      • Tiempo de acceso
      • Tipo (archivo/directorio)
      • Permisos
  • lista_de_directorios_permitidos
    • Enumere todos los directorios a los que el servidor tiene permiso de acceder
    • No se requiere entrada
    • Devoluciones:
      • Directorios desde los que este servidor puede leer/escribir

Uso con Claude Desktop

Agregue esto a su claude_desktop_config.json :

Nota: Puede proporcionar directorios aislados al servidor montándolos en /projects . Al agregar el indicador ro , el servidor podrá leer el directorio solo.

Estibador

Nota: todos los directorios deben montarse en /projects de forma predeterminada.

{ "mcpServers": { "filesystem": { "command": "docker", "args": [ "run", "-i", "--rm", "--mount", "type=bind,src=/Users/username/Desktop,dst=/projects/Desktop", "--mount", "type=bind,src=/path/to/other/allowed/dir,dst=/projects/other/allowed/dir,ro", "--mount", "type=bind,src=/path/to/file.txt,dst=/projects/path/to/file.txt", "mcp/filesystem", "/projects" ] } } }

NPX

{ "mcpServers": { "filesystem": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-filesystem", "/Users/username/Desktop", "/path/to/other/allowed/dir" ] } } }

Construir

Compilación de Docker:

docker build -t mcp/filesystem -f src/filesystem/Dockerfile .

Licencia

Este servidor MCP cuenta con la licencia MIT. Esto significa que puede usar, modificar y distribuir el software libremente, sujeto a los términos y condiciones de la licencia MIT. Para más detalles, consulte el archivo de LICENCIA en el repositorio del proyecto.

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

Servidor Node.js que implementa el Protocolo de Contexto de Modelo (MCP) para operaciones del sistema de archivos.

  1. Features
    1. API
      1. Resources
      2. Tools
    2. Usage with Claude Desktop
      1. Docker
      2. NPX
    3. Build
      1. License
        ID: s4jc7g4hn2