MCP Filesystem Server
Enables file system operations such as listing directories, reading, writing, creating, and deleting files or directories through MCP.
README
MCP Filesystem Server
Servidor MCP (Model Context Protocol) para operaciones de sistema de archivos. Este servidor implementa el protocolo MCP JSON-RPC y proporciona herramientas para navegar, leer, escribir y gestionar archivos y directorios.
Características
- Implementación del protocolo MCP JSON-RPC
- 5 herramientas de filesystem:
filesystem_list_directory- Listar contenido de directoriofilesystem_read_file- Leer contenido de archivofilesystem_write_file- Escribir contenido en archivofilesystem_create_directory- Crear directoriofilesystem_delete- Eliminar archivo o directorio
- Validación de rutas permitidas
- Límite de tamaño de archivo
- Logging de operaciones
Instalación
cd mcp-server
npm install
Configuración
Variables de entorno (opcionales):
PORT- Puerto del servidor (default: 3000)ALLOWED_PATHS- Rutas permitidas separadas por comas (default: /)MAX_FILE_SIZE- Tamaño máximo de archivo en bytes (default: 10485760 = 10MB)
Ejemplo:
export PORT=3000
export ALLOWED_PATHS=/,/home/user,/tmp
export MAX_FILE_SIZE=10485760
Desarrollo
# Compilar TypeScript
npm run build
# Ejecutar en modo desarrollo
npm run dev
# Ejecutar en producción
npm start
# Modo watch para desarrollo
npm run watch
API
Endpoint Principal
POST / - Recibe requests JSON-RPC MCP
Formato de request:
{
"jsonrpc": "2.0",
"method": "filesystem_list_directory",
"params": {
"path": "/"
},
"id": 1
}
Formato de response:
{
"jsonrpc": "2.0",
"result": {
"path": "/",
"items": [
{
"name": "file.txt",
"path": "/file.txt",
"type": "file",
"size": 1024,
"modifiedDate": "2024-01-01T00:00:00.000Z"
}
]
},
"id": 1
}
Health Check
GET /health - Verifica estado del servidor
Response:
{
"status": "ok",
"timestamp": "2024-01-01T00:00:00.000Z"
}
Herramientas MCP
filesystem_list_directory
Lista el contenido de un directorio.
Parámetros:
path(string) - Ruta del directorio
Response:
path(string) - Ruta del directorioitems(array) - Lista de archivos y directoriosname(string) - Nombre del archivo/directoriopath(string) - Ruta completatype(string) - "file" o "directory"size(number) - Tamaño en bytesmodifiedDate(string) - Fecha de modificación ISO 8601
filesystem_read_file
Lee el contenido de un archivo.
Parámetros:
path(string) - Ruta del archivo
Response:
path(string) - Ruta del archivocontent(string) - Contenido del archivo
filesystem_write_file
Escribe contenido en un archivo.
Parámetros:
path(string) - Ruta del archivocontent(string) - Contenido a escribir
Response:
path(string) - Ruta del archivosuccess(boolean) - Indica si la operación fue exitosa
filesystem_create_directory
Crea un directorio.
Parámetros:
path(string) - Ruta del directorio
Response:
path(string) - Ruta del directoriosuccess(boolean) - Indica si la operación fue exitosa
filesystem_delete
Elimina un archivo o directorio.
Parámetros:
path(string) - Ruta del archivo/directorio
Response:
path(string) - Ruta del archivo/directoriosuccess(boolean) - Indica si la operación fue exitosa
Seguridad
- Validación de rutas permitidas
- Límite de tamaño de archivo
- Solo se permiten rutas dentro de los directorios configurados en
ALLOWED_PATHS
Estructura del Proyecto
mcp-server/
├── src/
│ ├── handlers/
│ │ └── filesystem.handler.ts # Implementación de operaciones de filesystem
│ ├── types/
│ │ ├── mcp.types.ts # Tipos MCP generales
│ │ └── filesystem.types.ts # Tipos específicos de filesystem
│ ├── config.ts # Configuración del servidor
│ ├── server.ts # Servidor MCP principal
│ └── index.ts # Punto de entrada
├── package.json
├── tsconfig.json
└── README.md
Licencia
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.