File Convert MCP Server
Converta arquivos entre vários formatos, incluindo imagens, documentos, áudio, vídeo e mais.
Documentação
File Convert MCP Server
Um servidor Model Context Protocol (MCP) para converter arquivos entre diversos formatos.
File Convert é um servidor MCP projetado para lidar com a conversão de uma ampla variedade de formatos de arquivo, incluindo imagens, documentos de escritório, áudio, vídeo, texto e arquivos de dados. Ele visa fornecer transformação perfeita para formatos populares como PDF, JPG, MP4 e HTML, entre outros. Este servidor oferece um conjunto de ferramentas poderosas para converter diversos tipos de arquivo em formatos facilmente acessíveis e amplamente compatíveis, como PDF, JPG, PNG, TXT.
✨ Recursos
- Detecção Inteligente de Tipo de Arquivo: Utiliza uma combinação de IA, TrID e magic bytes para identificação precisa do tipo de arquivo.
- Conversão Versátil de Arquivos: Suporta conversão entre inúmeros tipos de arquivo e os seguintes formatos populares:
- Imagens: Lida com uma vasta gama de formatos, incluindo muitos legados. Converte para PDF, JPG, PNG.
- Documentos de Escritório: Converte para PDF, TXT, HTML.
- Áudio/Vídeo: Converte para MP3, MP4.
- Bancos de Dados: Converte para CSV.
- Vários Arquivos: Oferece capacidades de conversão para outros tipos de arquivo também.
🛠️ Requisitos
- Python: Versão 3.12 ou superior é necessária.
- Ferramenta uv: Instale a ferramenta Python uv para gerenciamento eficiente de dependências e execução fácil do servidor MCP.
- Chave de API (Desenvolvimento): A partir de maio de 2025, o MCP está em fase de testes, e nenhuma chave de API é atualmente necessária para desenvolvimento. Para uso futuro em produção, entre em contato com a equipe Convert.Guru para obter uma chave de API.
🚀 Uso com Aplicativo Desktop
Para integrar este servidor ao seu aplicativo desktop, adicione a seguinte configuração às configurações de servidor do seu aplicativo. Se necessário, ajuste o caminho absoluto para os executáveis uv/uvx (ou uv.exe/uvx.exe no 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"
}
}
}
}
Se você clonou o repositório localmente (ajuste os caminhos conforme necessário):
{
"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"
}
}
}
}
Variáveis de Ambiente
O servidor MCP suporta as seguintes variáveis de ambiente:
CONVERT_GURU_API_KEY: Sua chave de API Convert.Guru (opcional para desenvolvimento)TRANSPORT: Método de transporte para o servidor MCP"stdio"(padrão): Transporte de entrada/saída padrão"http": Transporte HTTP (transmissível) com endpoints de API REST
PORT: Número da porta para transporte HTTP (padrão: 8000, usado apenas quandoTRANSPORT=http)
Ao usar transporte HTTP, o servidor fornece endpoints adicionais:
GET /health- Endpoint de verificação de saúdeGET /tools- Lista de ferramentas MCP disponíveis
Consulte também este guia sobre como configurar ferramentas MCP no Claude Desktop.
Instalação via Smithery
Para instalar file-convert-mcp para Claude Desktop automaticamente via Smithery:
npx -y @smithery/cli install @convertguru/file-convert-mcp --client claude
🛠️ Desenvolvimento
Comece com o desenvolvimento local seguindo estes passos:
1. Clone o repositório:
git clone https://github.com/convertguru/file-convert-mcp.git
2. Busque e armazene em cache as dependências Python (opcional, uvx lida com isso automaticamente):
cd file-convert-mcp
uv sync
cd ..
3. Crie o arquivo .env com sua chave de API (opcional por enquanto):
echo "CONVERT_GURU_API_KEY=your_api_key_here" > file-convert-mcp/.env
4. Execute o servidor MCP localmente usando vários comandos 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. Crie o arquivo .env com sua configuração (opcional por enquanto):
# 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. Modifique a lógica do servidor se necessário:
Edite o arquivo principal do servidor localizado em src/file_convert_mcp/server.py.
7. Limpando o Cache do uv (se necessário):
Se o uv tiver armazenado em cache uma versão mais antiga do código em ~/.cache/uv, você pode precisar limpar o cache. Alternativamente, use uv com a opção -n ou --no-cache para contornar isso.
⚙️ Ferramentas Disponíveis
O servidor MCP fornece as seguintes ferramentas:
detect_file_type: Analisa os primeiros 200 bytes de um arquivo enviado e usa a API Convert.Guru para determinar seu tipo.convert_file: Converte um arquivo fornecido para um formato de saída especificado. A extensão de arquivo desejada deve ser passada como parâmetroext_out.
📜 Licença
Visite-nos https://convert.guru
Este projeto é licenciado sob a Licença MIT - consulte o arquivo LICENSE para detalhes completos.