FilerMoverMcp
Uma ferramenta de movimentação de arquivos que prepara e executa movimentações de forma segura. Funciona tanto como ferramenta de linha de comando quanto como servidor MCP para agentes de IA.
Documentação
FileMoverMcp
Uma ferramenta de movimentação de arquivos que prepara e executa movimentações de arquivos com segurança. Funciona tanto como ferramenta de linha de comando (CLI) quanto como servidor MCP (Model Context Protocol) para agentes de IA.
Instalação
dotnet tool install --global FileMoverMcp
dotnet tool update --global FileMoverMcp
dotnet tool uninstall --global FileMoverMcp
Após a instalação, o comando fm estará disponível globalmente.
Configuração do MCP
Para registrar como ferramenta MCP no Claude Code:
claude mcp add filemover -- fm --mcp
Para Cursor ou outros clientes MCP, adicione isto à sua configuração MCP:
{
"mcpServers": {
"filemover": {
"command": "fm",
"args": ["--mcp"]
}
}
}
Uso
O fluxo de trabalho é: inicializar uma sessão, preparar movimentações, visualizar prévia e então confirmar (ou cancelar).
fm init [path] # Initialize at path (default: current directory)
fm mv <source> <dest> # Stage a file or directory move
fm mv <source> <dest> --overwrite # Allow overwriting existing destination
fm preview # See all staged moves
fm commit # Execute all staged moves
fm cancel # Discard all staged moves
fm help # Show help information
Exemplos
# Move files on desktop
fm init "c:/users/adam/desktop"
fm mv "old-folder/file.png" "new-folder/file.png"
fm mv "document.txt" "archive/document-backup.txt"
fm preview
fm commit
# Move an entire directory
fm init
fm mv "source-folder" "dest-folder"
fm commit
# Overwrite an existing file
fm init
fm mv "source.txt" "destination.txt" --overwrite
fm commit
Comportamento
Diretórios são criados automaticamente
Se o caminho de destino incluir diretórios que ainda não existem, eles serão criados automaticamente. Por exemplo, fm mv "file.txt" "a/b/c/file.txt" criará a/b/c/ se necessário.
Arquivos e diretórios são detectados automaticamente
Quando você executa fm mv, a ferramenta verifica se a origem é um arquivo ou um diretório e lida com isso de forma adequada. Movimentações de diretórios preservam toda a estrutura interna, incluindo subdiretórios aninhados.
Sobrescrita é opcional
Se o destino já existir (arquivo ou diretório), a movimentação será rejeitada, a menos que você passe --overwrite. Com --overwrite, o destino existente é substituído por completo.
Caminhos são restritos (sandbox)
Todos os caminhos são relativos ao diretório base da sessão. Tentativas de referenciar caminhos fora dele serão rejeitadas.
Sessões são compartilhadas
Os modos CLI e MCP compartilham o mesmo armazenamento de sessões, então você pode inicializar uma sessão em um modo e confirmá-la no outro.
Como Servidor MCP
fm --mcp
Ao executar como servidor MCP, as seguintes ferramentas estão disponíveis:
fm_init(path?: string)- Inicializar uma sessãofm_move(source: string, destination: string, overwrite: boolean)- Preparar uma movimentaçãofm_preview()- Visualizar prévia das movimentações preparadasfm_commit()- Executar movimentações preparadasfm_cancel()- Cancelar sessãofm_help()- Obter ajuda
Desenvolvimento
git clone <repository-url>
cd FileMoverMcp
dotnet build FileMoverMcp.sln
dotnet test FileMoverMcp.sln
Para executar como servidor MCP durante o desenvolvimento:
dotnet run --project FileMoverMcp.Cli/FileMoverMcp.Cli.csproj -- --mcp
Para empacotar:
dotnet pack FileMoverMcp.Cli/FileMoverMcp.Cli.csproj --configuration Release
Licença
Licença MIT