File Manager MCP
**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
Using Smithery Hosted Service (Recommended)
- Visit [File Manager on smithery](https://smithery.ai/server/@taha-ghadirian/filemanagermcp)
- Create an account or sign in
- Connect using your preferred development environment: - Visual Studio Code - Cursor - Any IDE or tool with MCP integration
Alternative: Local Installation
- Make sure you have the [.NET 9.0 SDK](https://dotnet.microsoft.com/en-us/download/dotnet/9.0) installed
- Follow the installation steps below to build and run the application
Build and Run Locally
- Clone the repository: HTTPS: ```bash git clone https://github.com/taha-ghadirian/FileManagerMcp.git ``` SSH: ```bash git clone git@github.com:taha-ghadirian/FileManagerMcp.git ``` Then navigate to the project directory: ```bash cd FileManagerMcp ```
- Install dependencies:
- Build the project:
- Run the application in inspector:
Configuration
[object Object] | [object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] | [object Object] |
- Setting them inline when running the application: ```bash 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
- Fork the project
- Create your feature branch (`git checkout -b feature/AmazingFeature`)
- Commit your changes (`git commit -m 'Add some AmazingFeature'`)
- Push to the branch (`git push origin feature/AmazingFeature`)
- Open a Pull Request
License
- 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
Acknowledgments
- Thanks to all contributors who have helped shape this project
- Built with .NET and modern best practices