smart-file-manager-mcp
๐ AI-powered file management system with Claude Desktop integration. Features intelligent indexing, LLM-based organization, and Docker deployment.
GitHub Stars
0
User Rating
Not Rated
Favorites
0
Views
9
Forks
0
Issues
0
Smart File Manager MCP ๐
AI ๊ธฐ๋ฐ ์ค๋งํธ ํ์ผ ๊ด๋ฆฌ ์์คํ - MCP(Model Context Protocol) ์๋ฒ์ ๋ฉํฐ๋ฏธ๋์ด ์ฒ๋ฆฌ ํตํฉ
๐ ํ๋ก์ ํธ ๊ฐ์
Smart File Manager MCP๋ Claude Desktop๊ณผ ํตํฉ๋๋ ๊ณ ๊ธ ํ์ผ ๊ด๋ฆฌ ์์คํ ์ ๋๋ค. AI ๊ธฐ๋ฐ ํ์ผ ๋ถ์, ๋ฉํฐ๋ฏธ๋์ด ์ฒ๋ฆฌ, ์๋ ์ ๋ฆฌ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
๐ ์ฃผ์ ๊ธฐ๋ฅ
- ๐ค AI ๊ธฐ๋ฐ ํ์ผ ๋ถ์: ์ด๋ฏธ์ง ์ธ์, ์์ฑ ์ธ์, ํ ์คํธ ์ถ์ถ
- ๐ ์ค๋งํธ ํ์ผ ์ ๋ฆฌ: AI๊ฐ ํ์ผ ๋ด์ฉ์ ๋ถ์ํ์ฌ ์๋ ๋ถ๋ฅ
- ๐ ๊ณ ๊ธ ๊ฒ์: FTS5 ๊ธฐ๋ฐ ์ ๋ฌธ ๊ฒ์ ๋ฐ ์๋ฏธ ๊ธฐ๋ฐ ๊ฒ์
- ๐ฌ ๋ฉํฐ๋ฏธ๋์ด ์ฒ๋ฆฌ: ์ด๋ฏธ์ง, ๋น๋์ค, ์ค๋์ค ํ์ผ ๋ถ์ ๋ฐ ์ธ๋ค์ผ ์์ฑ
- ๐ ์ค์๊ฐ ๋ชจ๋ํฐ๋ง: Prometheus + Grafana ํตํฉ
- ๐ MCP ํ๋กํ ์ฝ: Claude Desktop๊ณผ์ ์๋ฒฝํ ํตํฉ
๐ ๏ธ ๊ธฐ์ ์คํ
- Backend: Python 3.8+, FastAPI, SQLite (FTS5)
- AI/ML: OpenAI GPT-4 Vision, Whisper, TensorFlow, PyTorch
- ๊ฒ์: SQLite FTS5, ChromaDB (๋ฒกํฐ DB)
- ๋ชจ๋ํฐ๋ง: Prometheus, Grafana
- ์ปจํ ์ด๋: Docker, Docker Compose
- MCP: Model Context Protocol Server
๐ฆ ์์คํ ๊ตฌ์กฐ
smart-file-manager-mcp/
โโโ ai-services/ # AI ์๋น์ค ๋ชจ๋
โ โโโ multimedia_api_v4.py # ๋ฉํฐ๋ฏธ๋์ด API ์๋ฒ
โ โโโ enhanced_indexer_v4.py # ํ์ผ ์ธ๋ฑ์ฑ ์์ง
โ โโโ multimedia_processor.py # ๋ฉํฐ๋ฏธ๋์ด ์ฒ๋ฆฌ
โ โโโ ai_vision_service.py # AI ๋น์ ์๋น์ค
โ โโโ speech_recognition_service.py # ์์ฑ ์ธ์
โ โโโ db_connection_pool.py # DB ์ฐ๊ฒฐ ํ
โโโ monitoring/ # ๋ชจ๋ํฐ๋ง ์ค์
โ โโโ prometheus.yml
โ โโโ grafana/
โโโ docker-compose.yml # Docker ์ค์
๐ v4.0.2 ์ ๋ฐ์ดํธ
๊ฐ์ ์ฌํญ
- โ Qdrant ํฌ์ค์ฒดํฌ ์์ : ์ฌ๋ฐ๋ฅธ ์๋ํฌ์ธํธ๋ก ๋ณ๊ฒฝ
- ๐งน ๋์คํฌ ๊ด๋ฆฌ ๋๊ตฌ ์ถ๊ฐ:
- ๋์คํฌ ์ฌ์ฉ๋ฅ ๋ชจ๋ํฐ๋ง API
- ์๋ ์ ๋ฆฌ ์คํฌ๋ฆฝํธ
- ์ธ๋ค์ผ ๋ฐ ์์ ํ์ผ ์ ๋ฆฌ ๊ธฐ๋ฅ
- ๐ ๋์คํฌ ์ฌ์ฉ๋ฅ ๊ถ์ฅ์ฌํญ: ์๋ ์ ๋ฆฌ ์ ์ ์์คํ
์๋ก์ด API ์๋ํฌ์ธํธ
GET /disk/usage- ํ์ฌ ๋์คํฌ ์ฌ์ฉ๋ฅ ์กฐํPOST /disk/cleanup/thumbnails- ์ค๋๋ ์ธ๋ค์ผ ์ ๋ฆฌPOST /disk/cleanup/temp- ์์ ํ์ผ ์ ๋ฆฌGET /disk/recommendations- ๋์คํฌ ์ ๋ฆฌ ๊ถ์ฅ์ฌํญ
๐ ๋น ๋ฅธ ์์
์ฌ์ ์๊ตฌ์ฌํญ
- Docker ๋ฐ Docker Compose
- OpenAI API ํค (AI ๊ธฐ๋ฅ ์ฌ์ฉ ์)
- ์ต์ 4GB RAM, 10GB ๋์คํฌ ๊ณต๊ฐ
์ค์น ๋ฐ ์คํ
- ํ๋ก์ ํธ ํด๋ก
git clone https://github.com/yourusername/smart-file-manager-mcp.git
cd smart-file-manager-mcp
- ํ๊ฒฝ ๋ณ์ ์ค์
cp .env.example .env
# .env ํ์ผ์ ํธ์งํ์ฌ API ํค ์ค์
- Docker ์ปจํ ์ด๋ ์คํ
docker-compose up -d
- ์ํ ํ์ธ
docker-compose ps
curl http://localhost:8001/health
๐ก API ์๋ํฌ์ธํธ
ํต์ฌ ์๋ํฌ์ธํธ
| ์๋ํฌ์ธํธ | ๋ฉ์๋ | ์ค๋ช |
|---|---|---|
/health |
GET | ์์คํ ์ํ ํ์ธ |
/search/multimedia |
POST | ๋ฉํฐ๋ฏธ๋์ด ํ์ผ ๊ฒ์ |
/ai/analyze |
POST | AI ํ์ผ ๋ถ์ |
/stats/multimedia |
GET | ๋ฉํฐ๋ฏธ๋์ด ํต๊ณ |
/media/thumbnail/{id} |
GET | ์ธ๋ค์ผ ๊ฐ์ ธ์ค๊ธฐ |
๊ฒ์ API ์์
# ๊ธฐ๋ณธ ๊ฒ์
curl -X POST http://localhost:8001/search/multimedia \
-H "Content-Type: application/json" \
-d '{"query": "ํ์๋ก", "limit": 10}'
# ๋ฏธ๋์ด ํ์
ํํฐ๋ง
curl -X POST http://localhost:8001/search/multimedia \
-H "Content-Type: application/json" \
-d '{"media_types": ["image", "video"], "limit": 5}'
๐ง ์ค์
Docker Compose ์๋น์ค
- smart-file-manager-multimedia-v4: ๋ฉ์ธ API ์๋ฒ (ํฌํธ 8001)
- smart-file-redis-v4: Redis ์บ์ (ํฌํธ 16379)
- smart-file-prometheus-v4: ๋ฉํธ๋ฆญ ์์ง (ํฌํธ 9090)
- smart-file-grafana-v4: ๋ชจ๋ํฐ๋ง ๋์๋ณด๋ (ํฌํธ 3003)
ํ๊ฒฝ ๋ณ์
# OpenAI API ์ค์
OPENAI_API_KEY=your-api-key
# ํ์ผ ๊ฒฝ๋ก ์ค์
WATCH_DIRECTORIES=/watch_directories
DB_PATH=/data/db/file-index.db
EMBEDDINGS_PATH=/data/embeddings
METADATA_PATH=/data/metadata
# ์๋น์ค ํฌํธ
MULTIMEDIA_API_PORT=8001
REDIS_PORT=16379
๐ ๋ชจ๋ํฐ๋ง
Grafana ๋์๋ณด๋
- URL: http://localhost:3003
- ๊ธฐ๋ณธ ๊ณ์ : admin/admin
- ์ฌ์ ๊ตฌ์ฑ๋ ๋์๋ณด๋๋ก ์์คํ ๋ฉํธ๋ฆญ ํ์ธ
Prometheus ๋ฉํธ๋ฆญ
- URL: http://localhost:9090
- ์ฃผ์ ๋ฉํธ๋ฆญ:
- ํ์ผ ์ธ๋ฑ์ฑ ์ํ
- API ์๋ต ์๊ฐ
- AI ์ฒ๋ฆฌ ํต๊ณ
- ์์คํ ๋ฆฌ์์ค ์ฌ์ฉ๋
๐ ํธ๋ฌ๋ธ์ํ
์ผ๋ฐ์ ์ธ ๋ฌธ์ ํด๊ฒฐ
API ํ์ ์ค๋ฅ
- ์ฆ์:
'>' not supported between instances of 'str' and 'int' - ํด๊ฒฐ: ์ต์ ๋ฒ์ ์ผ๋ก ์ ๋ฐ์ดํธ (v4.0์์ ์์ ๋จ)
- ์ฆ์:
๊ฒ์ ๊ฒฐ๊ณผ ์์
- ์ฆ์: ๊ฒ์ ์ ๋น ๊ฒฐ๊ณผ
- ํด๊ฒฐ: ํ์ผ ์ธ๋ฑ์ฑ ์ํ ํ์ธ
curl http://localhost:8001/stats/multimediaDocker ์ปจํ ์ด๋ ์ฌ์์
docker-compose restart smart-file-manager-multimedia-v4
๋ก๊ทธ ํ์ธ
# API ์๋ฒ ๋ก๊ทธ
docker logs -f smart-file-manager-multimedia-v4
# ์ ์ฒด ์๋น์ค ๋ก๊ทธ
docker-compose logs -f
๐ค ๊ธฐ์ฌํ๊ธฐ
- 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
๐ ๋ผ์ด์ ์ค
์ด ํ๋ก์ ํธ๋ MIT ๋ผ์ด์ ์ค๋ก ๋ฐฐํฌ๋ฉ๋๋ค. ์์ธํ ๋ด์ฉ์ LICENSE ํ์ผ์ ์ฐธ์กฐํ์ธ์.
๐ฅ ํ
- ๊ฐ๋ฐ์: Your Name
- ๋ฌธ์: your.email@example.com
๐ ๊ฐ์ฌ์ ๋ง
- Anthropic Claude ํ - MCP ํ๋กํ ์ฝ ์ ๊ณต
- FastAPI ์ปค๋ฎค๋ํฐ
- ๋ชจ๋ ์คํ์์ค ๊ธฐ์ฌ์๋ค
โญ ์ด ํ๋ก์ ํธ๊ฐ ๋์์ด ๋์๋ค๋ฉด Star๋ฅผ ๋๋ฌ์ฃผ์ธ์!
0
Followers
5
Repositories
0
Gists
0
Total Contributions
๐ฏ ๅๅซไฟกๆฏ่ฟ่ฝฝ๏ผAI ๅฉไฝ ็ๆๆฐ้ป่ต่ฎฏ็ญ็น๏ผ็ฎๅ็่ๆ ็ๆงๅๆ - ๅคๅนณๅฐ็ญ็น่ๅ+ๅบไบ MCP ็AIๅๆๅทฅๅ ทใ็ๆง35ไธชๅนณๅฐ๏ผๆ้ณใ็ฅไนใB็ซใๅๅฐ่ก่ง้ปใ่ดข่็คพ็ญ๏ผ๏ผๆบ่ฝ็ญ้+่ชๅจๆจ้+AIๅฏน่ฏๅๆ๏ผ็จ่ช็ถ่ฏญ่จๆทฑๅบฆๆๆๆฐ้ป๏ผ่ถๅฟ่ฟฝ่ธชใๆ ๆๅๆใ็ธไผผๆฃ็ดข็ญ13็งๅทฅๅ ท๏ผใๆฏๆไผไธๅพฎไฟก/ไธชไบบๅพฎไฟก/้ฃไนฆ/้้/Telegram/้ฎไปถ/ntfy/bark/slack ๆจ้๏ผ30็ง็ฝ้กต้จ็ฝฒ๏ผ1ๅ้ๆๆบ้็ฅ๏ผๆ ้็ผ็จใๆฏๆDocker้จ็ฝฒโญ ่ฎฉ็ฎๆณไธบไฝ ๆๅก๏ผ็จAI็่งฃ็ญ็นใไธ่ฆ forkใ ่ๆฏ ใuse this templateใ๏ผไปฅๅๅปบ่ฎฎๅคงๅฎถไฝฟ็จใ docker้จ็ฝฒใ๏ผไฝ่ ๆญฃๅจๅๅฎๆนๆฒ้