About photo-organizer
Photo Organizer is an MCP server for organizing Google Photos and Google Drive, aimed at users who want to analyze photo libraries, sort files, and find duplicates. Operations default to a dry run and require explicit confirmation to make changes.
Key features
- 01Analyze photo libraries and find potential duplicates
- 02Create albums by year or month
- 03Sort Drive files by type
- 04Move old files to an Archive folder
- 05Find and remove exact duplicate files
- 06Default to dry runs with reports
Use cases
- 01Review photo library statistics and duplicates
- 02Create year-based photo albums
- 03Sort Drive files into type-based folders
- 04Archive old files and clean up duplicates
MCP support
As an MCP server, it exposes Google Photos and Google Drive analysis and organization tools to AI agents. Changes default to dry-run mode and require execute: true.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y photo-organizer-mcpPHOTO_SCRIPTS_PATHPath to Python scripts directory containing drive_organizer.py and photos_organizer.pyLocal servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
6Saved tool list · updated 2w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| findDuplicates | boolean | No | Find potential duplicate photos |
Details
From the project READMEPhoto Organizer MCP Server
AI-powered organization for Google Photos and Google Drive.
This MCP server enables AI agents like Claude to automatically organize your Google Photos and Drive files. Perfect for decluttering cloud storage, finding duplicates, and maintaining organized photo albums.
Features
Google Photos
- 📊 Analyze Library: Get statistics and insights about your photo collection
- 🔍 Find Duplicates: Identify potential duplicate photos
- 📅 Auto-Organize: Create albums by year or month
- 📈 Reports: Generate detailed organization reports
Google Drive
- 📂 Auto-Organize: Sort files into folders by type (Documents, Images, Videos, etc.)
- 🗄️ Archive Old Files: Move old files to Archive folder
- 🔄 Deduplicate: Find and remove exact duplicate files
- 📊 Analytics: Get file statistics and storage insights
Installation
# Install from NPM
npm install -g photo-organizer-mcp
# Or clone and build
git clone https://github.com/ExpertVagabond/photo-organizer-mcp
cd photo-organizer-mcp
npm install
npm run build
Setup
1. Google Cloud Credentials
You need Google Cloud credentials to access Photos and Drive APIs:
- Go to Google Cloud Console
- Create a new project
- Enable Google Photos Library API and Google Drive API
- Create OAuth 2.0 credentials
- Download
credentials.json
2. Python Scripts
This MCP server wraps existing Python organizer scripts. Set the path:
export PHOTO_SCRIPTS_PATH="/path/to/drive-photos-organizer"
Or add to .env:
PHOTO_SCRIPTS_PATH=/Users/yourname/drive-photos-organizer
3. Configure Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"photo-organizer": {
"command": "photo-organizer-mcp",
"env": {
"PHOTO_SCRIPTS_PATH": "/path/to/drive-photos-organizer"
}
}
}
}
Usage Examples
With Claude
"Analyze my Google Photos and find duplicates"
Claude will use the analyze_photos tool to scan your library
"Organize my photos into albums by year"
Claude will create year-based albums (dry run first, then execute)
"Clean up my Google Drive by organizing files into folders"
Claude will sort files by type into organized folders
"Archive all Drive files older than 2 years"
Claude will move old files to an Archive folder
"Find and remove duplicate files from my Drive"
Claude will identify and remove exact duplicates
Available Tools
Photo Tools
-
analyze_photos - Get photo library statistics
{ "findDuplicates": true } -
organize_photos_by_date - Create date-based albums
{ "grouping": "year", // or "month" "execute": false // true to actually create albums }
Drive Tools
-
analyze_drive - Get Drive statistics
-
organize_drive - Sort files into folders
{ "execute": false // true to actually organize } -
archive_old_files - Move old files to Archive
{ "days": 730, // Archive files older than this "execute": false } -
deduplicate_drive - Remove duplicate files
{ "execute": false // true to actually delete }
Safety Features
- Dry Run by Default: All operations default to dry run mode
- Explicit Execution: Must set
execute: trueto make changes - Detailed Reports: See exactly what will happen before executing
- Non-Destructive: Organizes and archives, doesn't delete (except deduplication)
Monetization (Pro Version)
Upgrade for advanced features:
Free Tier
- 50 operations per month
- Basic organization
- Manual execution required
Pro ($10/month)
- Unlimited operations
- Scheduled auto-organization
- Advanced duplicate detection
- Priority support
Enterprise ($50/month)
- White-label branding
- Team management
- Custom rules engine
- API access
Technical Details
- Built with TypeScript and Model Context Protocol SDK
- Wraps Python scripts for Google API integration
- Async operation with progress reporting
- Handles large libraries (10,000+ photos)
Contributing
Contributions welcome! Please open issues or PRs on GitHub.
License
MIT License - see LICENSE file
Author
ExpertVagabond - https://github.com/ExpertVagabond
Need help? Contact: [email protected]
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.