Skip to main content
Glama
Polarts

fs-mcp

by Polarts

fs-mcp

Un pequeño servidor MCP que expone seis herramientas:

  1. explore_filesystem(subpath?, glob?) — enumera archivos/carpetas bajo el directorio raíz, opcionalmente filtrado por un glob (**/*.js, etc.).

  2. edit_file(path, edits[], createIfMissing?) — aplica ediciones de línea estilo git (reemplazar / insertar / eliminar un rango de líneas) a un archivo bajo la raíz.

  3. create_file(path, content?, overwrite?) — crea un archivo nuevo con contenido opcional, creando los directorios padre según sea necesario.

  4. delete_file(path, recursive?) — elimina un archivo o directorio bajo la raíz (opcionalmente recursivo para directorios no vacíos).

  5. read_file(path, startLine?, endLine?) — lee el contenido del archivo, opcionalmente limitado a un rango de líneas, con números de línea prefijados.

  6. grep(pattern, glob?, useRegex?, caseInsensitive?) — busca patrones de texto en archivos, con soporte opcional de regex y filtrado por glob.

Raíz = dondequiera que esté el directorio de trabajo del proceso cuando se inicia.

Instalar como CLI global

npm install
npm link          # or: npm install -g .

Esto te da un comando global fs-mcp (conectado a través del campo bin en package.json).

Related MCP server: LocalFS MCP Server

Ejecutarlo

fs-mcp                 # stdio mode (default) — for Claude Desktop/Code,
                        # which spawn the process themselves
fs-mcp --http          # HTTP mode on http://localhost:4823/mcp — for
                        # curl, the MCP Inspector, or the on-demand
                        # Claude Desktop setup below
fs-mcp --http -p 5000   # custom port
fs-mcp --help

La carpeta en la que estés cuando lo ejecutes se convierte en la raíz expuesta.

Conectarse a Claude Desktop

Claude Desktop inicia los servidores MCP por sí mismo y se comunica a través de stdio — no hereda el directorio actual de tu terminal. Eso te da dos opciones de configuración según cómo quieras trabajar:

Opción A — bajo demanda desde cualquier carpeta (recomendada si quieres la sensación de CLI)

Configura Desktop una vez, apuntando a un puerto local fijo en lugar de una carpeta fija. Consulta claude_desktop_config.example.json — fusiona su entrada "fs-mcp" en tu objeto mcpServers existente en:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • Linux: ~/.config/Claude/claude_desktop_config.json

Reinicia Claude Desktop una vez. A partir de entonces:

cd ~/whatever/project
fs-mcp --http

Esa carpeta es ahora lo que Claude puede ver, mientras el servidor esté en ejecución. Pulsa Ctrl+C y vuelve a iniciarlo desde una carpeta diferente para cambiar de contexto — no se necesitan más cambios de configuración en Desktop.

Nota: --allow-http es necesario porque mcp-remote (el puente stdio↔HTTP) por defecto espera HTTPS + OAuth para servidores remotos reales; este flag le indica que el tráfico localhost sin autenticación está bien.

Opción B — una carpeta fija, siempre disponible

Si prefieres que Desktop siempre exponga el mismo proyecto sin tener que iniciar nada manualmente:

{
  "mcpServers": {
    "fs-mcp": {
      "command": "fs-mcp",
      "cwd": "/absolute/path/to/the/folder/you/want/exposed"
    }
  }
}

Reinicia Desktop. Esto usa el modo stdio directamente — sin proxy, sin paso manual de fs-mcp --http — pero cambiar la carpeta expuesta significa editar esta configuración y reiniciar Desktop de nuevo.

Notas de seguridad

  • Cada ruta se resuelve contra la raíz y se rechaza si intentara escapar de ella (p. ej. ../../etc/passwd) — verificado con una prueba de path traversal.

  • No hay autenticación. Cualquier cosa que pueda alcanzar el servidor (cualquier proceso local, en modo --http) puede leer y escribir cualquier archivo bajo la raíz. Está bien para uso de desarrollo local de confianza; no lo ejecutes en un lugar sensible y no lo vincules más allá de localhost.

Semántica de edición (edit_file)

Las ediciones son {startLine, endLine, newLines}, indexadas desde 1 e inclusivas:

  • Reemplazar líneas 3–5: {startLine: 3, endLine: 5, newLines: ["new content"]}

  • Eliminar líneas 3–5: {startLine: 3, endLine: 5, newLines: []}

  • Insertar antes de la línea 6 (sin eliminación): {startLine: 6, endLine: 5, newLines: ["inserted"]}

Múltiples ediciones en una sola llamada se aplican internamente de abajo hacia arriba, de modo que los números de línea en tu lista de ediciones no se desplazan a medida que se aplican las ediciones anteriores.

Install Server
F
license - not found
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables reading, creating, and editing files on the local filesystem through operations like view, create, string replacement, and line insertion.
    161
    3
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides sandboxed access to local filesystem operations including directory and file management, content search with glob and regex patterns, and binary file support with configurable safety limits.
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables file system operations such as listing, reading, and creating files within a scoped local project directory. It provides a secure way to manage local files through standardized MCP tools built with FastMCP.

View all related MCP servers

Related MCP Connectors

  • Securely search and manage workspace context files for AI agents and teams.

  • Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.

  • Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.

View all MCP Connectors

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/Polarts/fs-mcp'

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