MCP server by carvaj10
🚀 MCP Libres - Colección Completa de MCPs Útiles
Una colección completa de Model Context Protocols (MCPs) desarrollados con FastMCP para diferentes tareas útiles y productivas.
📦 MCPs Disponibles
📁 File Manager MCP (file_manager_mcp/)
Gestión completa de archivos y directorios:
- read_file: Leer archivos de texto
- write_file: Escribir archivos de texto
- list_directory: Listar directorios (recursivo opcional)
- read_json_file: Leer y parsear archivos JSON
- write_json_file: Escribir datos como JSON
- read_csv_file: Leer archivos CSV
- get_file_info: Obtener información detallada de archivos
- create_directory: Crear directorios
- delete_file: Eliminar archivos
📝 Text Processor MCP (text_processor_mcp/)
Análisis y procesamiento de texto:
- analyze_text: Análisis completo de texto con estadísticas
- clean_text: Limpiar texto (eliminar puntuación, números, etc.)
- extract_emails: Extraer direcciones de email
- extract_urls: Extraer URLs
- extract_phone_numbers: Extraer números de teléfono
- word_frequency: Calcular frecuencia de palabras
- text_similarity: Calcular similitud entre textos
- summarize_text: Crear resúmenes automáticos
- detect_language: Detectar idioma del texto
🖼️ Image Processor MCP (image_processor_mcp/)
Manipulación y procesamiento de imágenes:
- get_image_info: Obtener información de imágenes
- resize_image: Redimensionar imágenes
- convert_image_format: Convertir entre formatos
- apply_filters: Aplicar filtros (blur, sharpen, etc.)
- adjust_brightness: Ajustar brillo
- adjust_contrast: Ajustar contraste
- crop_image: Recortar imágenes
- rotate_image: Rotar imágenes
- add_text_to_image: Añadir texto a imágenes
- create_thumbnail: Crear miniaturas
- image_to_base64: Convertir a base64
- create_image_from_base64: Crear desde base64
⚙️ System Info MCP (system_info_mcp/)
Información del sistema y procesos:
- get_system_info: Información general del sistema
- get_cpu_info: Información del CPU
- get_memory_info: Información de memoria
- get_disk_info: Información de discos
- get_running_processes: Procesos en ejecución
- get_network_info: Información de red
- get_battery_info: Información de batería
- get_temperature_info: Información de temperatura
- kill_process: Terminar procesos
- get_environment_variables: Variables de entorno
- execute_command: Ejecutar comandos del sistema
🌐 Web Utils MCP (web_utils_mcp/)
Utilidades web y HTTP:
- make_get_request: Realizar peticiones GET
- make_post_request: Realizar peticiones POST
- download_file: Descargar archivos
- check_url_status: Verificar estado de URLs
- extract_links_from_url: Extraer enlaces de páginas
- get_website_title: Obtener títulos de páginas
- encode_base64: Codificar a base64
- decode_base64: Decodificar desde base64
- validate_url: Validar formato de URLs
- get_public_ip: Obtener IP pública
- shorten_url: Acortar URLs
📊 Data Analysis MCP (data_analysis_mcp/)
Análisis estadístico y procesamiento de datos:
- calculate_statistics: Estadísticas básicas
- analyze_frequency: Análisis de frecuencia
- find_correlation: Calcular correlaciones
- detect_outliers: Detectar valores atípicos
- group_data: Agrupar datos por campo
- calculate_percentiles: Calcular percentiles
- normalize_data: Normalizar datos
- calculate_moving_average: Media móvil
- analyze_trend: Análisis de tendencias
🔐 Security MCP (security_mcp/)
Herramientas de seguridad y criptografía:
- generate_password: Generar contraseñas seguras
- hash_password: Hashear contraseñas
- verify_password: Verificar contraseñas
- encrypt_text: Cifrar texto
- decrypt_text: Descifrar texto
- generate_key: Generar claves criptográficas
- check_password_strength: Verificar fortaleza de contraseñas
- sanitize_input: Sanitizar entrada de usuario
📅 Date Time MCP (datetime_mcp/)
Manejo avanzado de fechas y tiempo:
- parse_date: Parsear fechas en diferentes formatos
- format_date: Formatear fechas
- calculate_difference: Calcular diferencias entre fechas
- add_time: Sumar tiempo a fechas
- get_timezone_info: Información de zonas horarias
- convert_timezone: Convertir entre zonas horarias
- get_holidays: Obtener días festivos
- schedule_reminder: Programar recordatorios
🗃️ Database MCP (database_mcp/)
Operaciones con bases de datos:
- connect_database: Conectar a bases de datos
- execute_query: Ejecutar consultas SQL
- get_table_info: Información de tablas
- backup_database: Respaldar base de datos
- restore_database: Restaurar base de datos
- optimize_database: Optimizar base de datos
- export_data: Exportar datos
- import_data: Importar datos
📧 Email MCP (email_mcp/)
Gestión de correo electrónico:
- send_email: Enviar emails
- read_emails: Leer emails
- parse_email: Parsear emails
- validate_email: Validar direcciones de email
- extract_attachments: Extraer adjuntos
- filter_emails: Filtrar emails
- schedule_email: Programar emails
- create_email_template: Crear plantillas de email
🎨 Color MCP (color_mcp/)
Herramientas de color y diseño:
- hex_to_rgb: Convertir HEX a RGB
- rgb_to_hex: Convertir RGB a HEX
- generate_palette: Generar paletas de colores
- color_harmony: Armonías de color
- contrast_ratio: Calcular contraste
- color_blind_safe: Colores seguros para daltónicos
- extract_colors: Extraer colores de imágenes
- color_temperature: Temperatura de color
🛠️ Instalación
Opción 1: Con uv (Recomendado)
# Clonar o descargar el proyecto
cd mcp_utils
# Instalar dependencias
uv sync
# Ejecutar un MCP específico
uv run file_manager_mcp/main.py
uv run text_processor_mcp/main.py
uv run security_mcp/main.py
Opción 2: Con pip
# Instalar dependencias
pip install fastmcp aiofiles pillow psutil aiohttp cryptography python-dateutil
# Ejecutar un MCP específico
python file_manager_mcp/main.py
python text_processor_mcp/main.py
python security_mcp/main.py
⚙️ Configuración en Claude Desktop
Agrega estos MCPs a tu archivo claude_desktop_config.json:
{
"mcpServers": {
"file-manager-mcp": {
"command": "uv",
"args": [
"--directory",
"/ruta/a/tu/proyecto/mcp_utils",
"run",
"file_manager_mcp/main.py"
]
},
"text-processor-mcp": {
"command": "uv",
"args": [
"--directory",
"/ruta/a/tu/proyecto/mcp_utils",
"run",
"text_processor_mcp/main.py"
]
},
"security-mcp": {
"command": "uv",
"args": [
"--directory",
"/ruta/a/tu/proyecto/mcp_utils",
"run",
"security_mcp/main.py"
]
},
"datetime-mcp": {
"command": "uv",
"args": [
"--directory",
"/ruta/a/tu/proyecto/mcp_utils",
"run",
"datetime_mcp/main.py"
]
},
"database-mcp": {
"command": "uv",
"args": [
"--directory",
"/ruta/a/tu/proyecto/mcp_utils",
"run",
"database_mcp/main.py"
]
},
"email-mcp": {
"command": "uv",
"args": [
"--directory",
"/ruta/a/tu/proyecto/mcp_utils",
"run",
"email_mcp/main.py"
]
},
"color-mcp": {
"command": "uv",
"args": [
"--directory",
"/ruta/a/tu/proyecto/mcp_utils",
"run",
"color_mcp/main.py"
]
}
}
}
📋 Dependencias Principales
fastmcp>=0.1.0- Framework principal para MCPsaiofiles>=23.0.0- Operaciones de archivos asíncronaspillow>=10.0.0- Procesamiento de imágenespsutil>=5.9.0- Información del sistemaaiohttp>=3.8.0- Peticiones HTTPcryptography>=41.0.0- Criptografía y seguridadpython-dateutil>=2.8.0- Manejo de fechasnumpy>=1.24.0- Análisis numéricopymysql>=1.0.0- Conexión a MySQLpsycopg2-binary>=2.9.0- Conexión a PostgreSQL
⚙️ Configuración de Bases de Datos
Archivo .env
Crea un archivo .env en la raíz del proyecto con la configuración de tu base de datos:
# SQLite (por defecto)
DB_TYPE=sqlite
DB_PATH=./database.db
# MySQL
DB_TYPE=mysql
DB_HOST=localhost
DB_PORT=3306
DB_USERNAME=root
DB_PASSWORD=tu_password
DB_NAME=tu_database
# PostgreSQL
DB_TYPE=postgresql
DB_HOST=localhost
DB_PORT=5432
DB_USERNAME=postgres
DB_PASSWORD=tu_password
DB_NAME=tu_database
Herramientas de configuración
El Database MCP incluye herramientas para facilitar la configuración:
# Crear archivo .env de ejemplo
create_env_template()
# Cargar configuración desde .env
load_env_config()
🚀 Ejemplos de Uso
Gestión de Archivos
# Leer un archivo
read_file("documento.txt")
# Crear directorio
create_directory("nuevo_proyecto")
# Listar archivos
list_directory(".", recursive=True)
Análisis de Texto
# Analizar texto
analyze_text("Este es un texto de ejemplo para analizar")
# Extraer emails
extract_emails("Contacto: usuario@ejemplo.com")
# Resumir texto
summarize_text("Texto largo...", max_sentences=3)
Seguridad
# Generar contraseña
generate_password(length=16, include_symbols=True)
# Cifrar texto
encrypt_text("texto_secreto", "clave_segura")
# Verificar fortaleza
check_password_strength("mi_contraseña")
🔧 Desarrollo
Para desarrollo, instala las dependencias adicionales:
uv pip install pytest black flake8
📝 Notas
- Todos los MCPs están desarrollados con FastMCP para máxima compatibilidad
- Cada MCP maneja errores de forma robusta
- Las herramientas están documentadas con tipos de datos claros
- Los MCPs son independientes y se pueden usar por separado
- Compatible con Windows, macOS y Linux
🤝 Contribuciones
¡Las contribuciones son bienvenidas! Cada MCP está diseñado para ser extensible y fácil de mantener.
📄 Licencia
Este proyecto está bajo la licencia MIT.