🚀 MCP文件系统
一个智能的、基于模型上下文协议(MCP)的文件系统服务器,实现了无缝的文件管理和人工智能辅助编辑。
演示视频
✨ 概述
\*\*MCP文件系统\*\*是一个复杂的应用程序,旨在利用人工智能的力量简化文件操作。它实现了一个强大的模型上下文协议(MCP)服务器,为与文件交互提供了安全和可扩展的基础。通过其直观的web界面,用户可以上传整个文件夹,管理单个文件,并利用集成的AI助手进行智能内容操作。
关键能力:
- MCP服务器实现:一个真正符合JSON-RPC 2.0标准的服务器,用于标准化通信。
- 综合文件工具:支持对文件进行创建、读取、编辑和删除操作。
- 智能AI编辑:利用先进的AI模型(如Mixtral-8x7B-Instruct)进行自然语言驱动的文件修改。
- 现代Web前端:一个响应迅速、用户友好的界面,由HTML、CSS(Tailwind启发)和JavaScript构建。
- 高效的文件管理:批量文件夹上传、文件过滤和一键下载功能。
- 实时反馈:为所有操作提供清晰的通知和加载指示器。
______________________________________________________________________
🏗️ 技术架构
MCP文件系统采用全栈架构构建,将强大的后端与无缝的前端相结合。
┌─────────────┐ ┌──────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Web Frontend│ │ Flask Bridge │ │ MCP Client │ │ MCP Server │ │ AI Service │
│ │ │ │ │ │ │ │ │ │
│ File Upload │ │ REST API │ │ JSON-RPC 2.0│ │ File Ops │ │ AI Editing │
│ User Actions│ │ CORS Enabled │ │ Protocol │ │ Tool Reg. │ │ Mixtral-8x7B│
│ Notifications│ │ File Serving │ │ stdio comm │ │ Validation │ │ Together AI │
└─────────────┘ └──────────────┘ └─────────────┘ └─────────────┘ └─────────────┘______________________________________________________________________
📁 项目结构
mcp-filesystem-server/
├── run.py # Main entry point to start the Flask Bridge and MCP Server
├── requirements.txt # Python dependencies
├── .env.example # Example environment configuration
├── server/
│ ├── mcp_server.py # Core MCP server implementing JSON-RPC 2.0
│ ├── mcp_client.py # MCP protocol client for subprocess communication
│ ├── mcp_bridge.py # Flask application bridging frontend to MCP server
│ └── file_operations.py # Low-level file system utilities (used by mcp_server)
├── frontend/ # Web user interface assets
│ ├── index.html # Main UI layout
│ ├── scripts/app.js # Frontend logic and interactivity
│ └── styles/main.css # Comprehensive Tailwind-inspired styling
├── uploaded_files/ # Default directory for storing user-uploaded files
└── test_mcp.py # Comprehensive test suite for MCP protocol compliance and functionality______________________________________________________________________
🚀 入门指南
先决条件
- Python 3.7+已安装在您的系统上。
- pip(Python包安装程序)。
- 一起AI API密钥 (可选,但强烈推荐用于AI编辑功能)。
安装步骤
- 克隆存储库:
git clone https://github.com/nikkvijay/mcp-ai-filesystem-server.git
cd mcp-filesystem-server- 创建并激活虚拟环境(推荐):
对于Windows:
python -m venv venv
.\venv\Scripts\activate对于macOS/Linux:
python3 -m venv venv
source venv/bin/activate- 安装依赖项:
pip install -r requirements.txt- 设置环境变量:
- 复制示例环境文件:
cp .env.example .env- 编辑 .env 文件并添加您的 一起AI API密钥 (可选)。
TOGETHER_AI_API_KEY=your_together_ai_api_key_here- 运行服务器:
python run.py- 访问应用程序:
打开您的网络浏览器并导航到: http://localhost:5000
______________________________________________________________________
🔧 MCP工具和功能
MCP服务器公开了以下工具,可通过MCP客户端访问:
| 工具 | 说明 | 参数 |
|---|---|---|
create_file | 使用指定内容创建新文件。 | filename (string), content (string) |
edit_file | 手动或通过AI编辑现有文件 | filename (string), content (string), use_ai (boolean) |
delete_file | 删除指定的文件。 | filename (string) |
read_file | 读取并返回文件的内容。 | filename (string) |
list_files | 列出存储目录中的所有文件。 | 无 |
______________________________________________________________________
🧪 测试与验证
自动化测试
执行全面的MCP协议测试套件,以确保所有组件正常运行:
python test_mcp.py该测试套件验证:
- ✅ MCP服务器启动和初始化。
- ✅ 准确的工具发现和注册(5个工具)。
- ✅ 文件创建、读取、手动编辑和删除的端到端功能。
- ✅ 无缝的人工智能编辑功能。
- ✅ 遵循JSON-RPC 2.0协议规范。
- ✅ 强大的错误处理和各种边缘情况。
______________________________________________________________________
📋 如何使用应用程序
1. 上传文件
- 上传的文件夹:上传整个目录结构。
- 上传文件:选择单个文件。
- 拖放:方便地拖放文件或压缩文件夹。
2. 文件管理
- 浏览文件:所有上传的文件都是可见的。
- 文件计数:显示当前文件数量的动态徽章。
- 删除文件:删除单个文件或使用“删除所有文件”进行彻底清理。
3. 使用AI编辑文件
- 点击“编辑”图标(✏️) 在任何文件旁边。
- 在“AI助手”部分,输入自然语言提示进行更改。
4. 手动文件编辑
- 在编辑器中打开任何文件。
- 直接修改文件内容。
- 单击“保存”以应用更改。
5. 下载文件
- 个人下载:单击下载图标(⬇️).
- 批量下载:将所有文件下载为ZIP存档。
- 当前文件下载:下载当前打开的文件。
______________________________________________________________________
🎨 功能展示
- 智能上传:支持单个文件和压缩文件夹上传。
- 广泛的文件类型支持:处理代码、数据、配置、脚本、文档和日志文件。
- 实时进度反馈:在上传和处理过程中提供更新。
人工智能集成
- 自然语言编辑:使用类似人类的命令修改文件。
- 混音模型:使用Together AI的Mixtral-8x7B-Instruct进行上下文感知编辑。
______________________________________________________________________
🛣️ 未来的增强功能
- 文件导航树视图:更好地可视化深度嵌套的文件夹结构。
- 语法高亮显示:代码文件的客户端语法高亮显示。
- 取消/重做:为编辑器实现标准的撤消/重做。
- 批量AI操作:将单个AI提示应用于多个文件。
- 用户认证:支持多用户环境和安全的文件访问。
- 云存储集成:支持云服务(例如,谷歌云存储、AWS S3)。
- 版本控制:Git集成,用于跟踪和还原文件更改。
______________________________________________________________________
🤝 贡献
我们欢迎捐款!以下是您如何做出贡献:
- 分叉存储库.
- 克隆您的分叉存储库:
git clone https://github.com/nikkvijay/mcp-ai-filesystem-server.git- 创建并激活Python虚拟环境:
python -m venv venv
source venv/bin/activate # macOS/Linux
.\venv\Scripts\activate # Windows- 安装依赖项:
pip install -r requirements.txt- 创建新功能分支:
git checkout -b feature/your-feature-name- 在推动更改之前运行测试:
python test