A favicon of File Manager

File Manager

Manage remote FTP files and directories with ease using a modern, intuitive interface. Upload, download, delete, and organize files recursively to streamline your FTP operations. Enhance your development workflow by integrating this powerful file manager with your preferred IDE or tool supporting MCP.

File Manager MCP 📂

License: GPL v3 Maintenance smithery badge

A powerful and user-friendly File Manager application that provides a modern interface for managing FTP file operations.

🤖 AI-Powered Development: This project is a result of vibe coding through AI prompt engineering. The entire codebase was developed by collaborating with AI, showcasing the potential of modern AI-assisted development practices.

🚀 Features

  • 📁 Browse and manage remote FTP directories
  • ⬆️ Upload files and directories
  • ⬇️ Download files and directories
  • 🗑️ Delete files and directories
  • 📝 Create new directories
  • 🔄 Recursive file operations support
  • 💻 Clean and intuitive user interface

🚀 Usage

  1. Visit File Manager on smithery

  2. Create an account or sign in

  3. Connect using your preferred development environment:

    • Visual Studio Code
    • Cursor
    • Any IDE or tool with MCP integration

Alternative: Local Installation

If you prefer running the application locally, follow these steps:

  1. Make sure you have the .NET 9.0 SDK installed
  2. Follow the installation steps below to build and run the application

🛠️ Build and Run Locally

  1. Clone the repository:

    HTTPS:

    git clone https://github.com/taha-ghadirian/FileManagerMcp.git
    

    SSH:

    git clone [email protected]:taha-ghadirian/FileManagerMcp.git
    

    Then navigate to the project directory:

    cd FileManagerMcp
    
  2. Install dependencies:

dotnet restore
  1. Build the project:
dotnet build
  1. Run the application in inspector:
npx @modelcontextprotocol/inspector dotnet run

🔧 Configuration

The application uses environment variables for configuration. Here are the required environment variables:

OptionDescriptionRequiredDefault
ftpHostFTP server hostname or IP addressYes-
ftpUsernameFTP account usernameYes-
ftpPasswordFTP account passwordYes-
ftpPortFTP server portNo21

You can set these environment variables in several ways:

  1. Setting them inline when running the application:
    ftpHost=ftp.example.com ftpUsername=myuser ftpPassword=mypassword npx @modelcontextprotocol/inspector dotnet run
    

⚠️ Security Note: Never commit sensitive information like passwords to version control. Always use environment variables or secure secrets management for production deployments.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the project
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📝 License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details. This means:

  • You can freely use, modify, and distribute this software
  • If you modify and distribute this software, you must:
    • Make your source code available
    • License your modifications under GPL v3.0
    • Document your changes
    • Preserve the original copyright notices

📞 Support

If you have any questions or need support, please open an issue in the GitHub repository.

✨ Acknowledgments

  • Thanks to all contributors who have helped shape this project
  • Built with .NET and modern best practices

Made with ❤️ by Taha Ghadirian

Share:
Details:
  • Stars


    8
  • Forks


    0
  • Last commit


    12 days ago
  • Repository age


    22 days
  • License


    GPL-3.0
View Repository

Auto-fetched from GitHub .

MCP servers similar to File Manager:

 

 
 
  • Stars


  • Forks


  • Last commit


 

 
 
  • Stars


  • Forks


  • Last commit


 

 
 
  • Stars


  • Forks


  • Last commit