File Convert MCP Server
Convierte archivos entre varios formatos, incluyendo imágenes, documentos, audio, video y más.
Documentación
File Convert MCP Server
Un servidor de Model Context Protocol (MCP) para convertir archivos entre varios formatos.
File Convert es un servidor MCP diseñado para manejar la conversión de una amplia variedad de formatos de archivo, incluyendo imágenes, documentos de oficina, audio, video, texto y archivos de datos. Su objetivo es proporcionar una transformación fluida a formatos populares como PDF, JPG, MP4 y HTML, entre otros. Este servidor ofrece un conjunto de herramientas potentes para convertir diversos tipos de archivo en formatos de fácil acceso y ampliamente compatibles como PDF, JPG, PNG, TXT.
✨ Características
- Detección Inteligente de Tipo de Archivo: Emplea una combinación de IA, TrID y magic bytes para una identificación precisa del tipo de archivo.
- Conversión de Archivos Versátil: Admite la conversión entre numerosos tipos de archivo y los siguientes formatos populares:
- Imágenes: Maneja una amplia gama de formatos, incluyendo muchos heredados. Convierte a PDF, JPG, PNG.
- Documentos de Oficina: Convierte a PDF, TXT, HTML.
- Audio/Video: Convierte a MP3, MP4.
- Bases de Datos: Convierte a CSV.
- Varios Archivos: También ofrece capacidades de conversión para otros tipos de archivo.
🛠️ Requisitos
- Python: Se requiere la versión 3.12 o superior.
- Herramienta uv: Instala la herramienta uv de Python para una gestión eficiente de dependencias y una fácil ejecución del servidor MCP.
- Clave API (Desarrollo): A partir de mayo de 2025, el MCP se encuentra en fase de pruebas y actualmente no se requiere clave API para el desarrollo. Para uso futuro en producción, por favor contacta al equipo de Convert.Guru para obtener una clave API.
🚀 Uso con Aplicación de Escritorio
Para integrar este servidor con tu aplicación de escritorio, añade la siguiente configuración a los ajustes del servidor de tu aplicación. Si es necesario, ajusta la ruta absoluta a los ejecutables uv/uvx (o uv.exe/uvx.exe en Windows).
Usando uvx (recomendado):
{
"mcpServers": {
"file-convert": {
"command": "uvx",
"args": ["--from", "git+https://github.com/convertguru/file-convert-mcp.git", "file-convert-mcp"],
"env": {
"CONVERT_GURU_API_KEY": "your_api_key_here"
}
}
}
}
Si has clonado el repositorio localmente (ajusta las rutas según sea necesario):
{
"mcpServers": {
"file-convert": {
"command": "/home/User/.local/bin/uv",
"args": ["--directory", "/home/User/file-convert-mcp/src/file_convert_mcp", "run", "server.py"],
"env": {
"CONVERT_GURU_API_KEY": "your_api_key_here"
}
}
}
}
Usando uvx local:
{
"mcpServers": {
"file-convert": {
"command": "uvx",
"args": ["--from", "/home/User/file-convert-mcp", "file-convert-mcp"],
"env": {
"CONVERT_GURU_API_KEY": "your_api_key_here"
}
}
}
}
Variables de Entorno
El servidor MCP admite las siguientes variables de entorno:
CONVERT_GURU_API_KEY: Tu clave API de Convert.Guru (opcional para desarrollo)TRANSPORT: Método de transporte para el servidor MCP"stdio"(predeterminado): Transporte estándar de entrada/salida"http": Transporte HTTP (transmisible) con endpoints de API REST
PORT: Número de puerto para transporte HTTP (predeterminado: 8000, solo se usa cuandoTRANSPORT=http)
Al usar transporte HTTP, el servidor proporciona endpoints adicionales:
GET /health- Endpoint de verificación de saludGET /tools- Lista de herramientas MCP disponibles
Consulta también esta guía sobre cómo configurar herramientas MCP en Claude Desktop.
Instalación mediante Smithery
Para instalar file-convert-mcp para Claude Desktop automáticamente a través de Smithery:
npx -y @smithery/cli install @convertguru/file-convert-mcp --client claude
🛠️ Desarrollo
Comienza con el desarrollo local siguiendo estos pasos:
1. Clona el repositorio:
git clone https://github.com/convertguru/file-convert-mcp.git
2. Obtén y almacena en caché las dependencias de Python (opcional, uvx lo maneja automáticamente):
cd file-convert-mcp
uv sync
cd ..
3. Crea el archivo .env con tu clave API (opcional por ahora):
echo "CONVERT_GURU_API_KEY=your_api_key_here" > file-convert-mcp/.env
4. Ejecuta el servidor MCP localmente usando varios comandos de uv:
# Using uvx with .env file from the local directory
cd file-convert-mcp
UV_ENV_FILE=.env uvx --from ./file-convert-mcp file-convert-mcp
# OR using uv directly to run the server script
uv run file-convert-mcp/src/file_convert_mcp/server.py
# OR specifying the directory for uv
uv --directory file-convert-mcp/src/file_convert_mcp run server.py
# OR navigating into the server directory
cd file-convert-mcp/src/file_convert_mcp
uv run server.py
# OR using uvx to fetch the core from the GitHub repository + local .env file
UV_ENV_FILE=.env uvx --from git+https://github.com/convertguru/file-convert-mcp.git file-convert-mcp
# OR run with HTTP transport on custom port
TRANSPORT=http PORT=9000 uv run file-convert-mcp/src/file_convert_mcp/server.py
# OR run with stdio transport (default)
TRANSPORT=stdio uv run file-convert-mcp/src/file_convert_mcp/server.py
5. Crea el archivo .env con tu configuración (opcional por ahora):
# Basic configuration
echo "CONVERT_GURU_API_KEY=your_api_key_here" > file-convert-mcp/.env
# OR with transport configuration
echo "CONVERT_GURU_API_KEY=your_api_key_here" > file-convert-mcp/.env
echo "TRANSPORT=http" >> file-convert-mcp/.env
echo "PORT=8000" >> file-convert-mcp/.env
6. Modifica la lógica del servidor si es necesario:
Edita el archivo principal del servidor ubicado en src/file_convert_mcp/server.py.
7. Limpiar la caché de uv (si es necesario):
Si uv ha almacenado en caché una versión anterior del código en ~/.cache/uv, es posible que necesites limpiar la caché. Alternativamente, usa uv con la opción -n o --no-cache para omitirla.
⚙️ Herramientas Disponibles
El servidor MCP proporciona las siguientes herramientas:
detect_file_type: Analiza los primeros 200 bytes de un archivo subido y usa la API de Convert.Guru para determinar su tipo.convert_file: Convierte un archivo dado a un formato de salida especificado. La extensión de archivo deseada debe pasarse como parámetroext_out.
📜 Licencia
Visítanos https://convert.guru
Este proyecto está licenciado bajo la Licencia MIT: consulta el archivo LICENSE para obtener todos los detalles.