Smart Photo Journal is an MCP server designed to help you search and analyze your photo library with powerful, intuitive tools. Whether you're reminiscing about family moments or looking for a specific photo with friends, this server has got you covered! 🎉
Inspired by: burningion/video-editing-mcp A huge shoutout to @burningion for the innovative idea of using MCP for creative media management!
- Location Search: Find photos from specific places with ease. 🌍
- Label Search: Search photos by keywords or labels like "Birthday," "Beach," or "Vacation." 🎉
- People Search: Quickly locate photos featuring specific people. 👥
- Photo Analysis: Discover fun insights like the most popular times and days for your photo shoots. 🕰️
- Fuzzy Matching: Not sure of the exact name? Don't worry! The server supports fuzzy matching for flexibility. 🔍
- Ensure you have macOS with a Photos library.
- Install uv to manage dependencies and run the server.
-
Clone the repository:
git clone https://github.com/Siddhant-K-code/memory-journal-mcp-server.git cd memory-journal-mcp-server
-
Install dependencies using
uv
:uv sync
-
Configure the MCP server. Update your
claude_desktop_config.json
with the following configuration:{ "mcpServers": { "smart-photo-journal": { "command": "/Users/<YOUR_DEVICE_USERNAME>/.local/bin/uv", "args": [ "--directory", "/Users/<PATH_TO_CLONED_DIR>/memory-journal-mcp-server", "run", "server.py" ] } } }
-
Start the server with following command or just open Claude Desktop:
uv run server.py
Note: Replace
<YOUR_DEVICE_USERNAME>
and<PATH_TO_CLONED_DIR>
with your actual device username and the path to the cloned directory. You will get a popup to authorize the server to access your photos. It will be in local only, and no data will be shared with anyone except Claude services.
When the server starts, you'll see:
Starting Smart Photo Journal MCP server.
It's now ready to process your photo queries! 🎉
-
Location Search
- Description: Find photos taken in a specific location.
- Input Example:
{ "location": "Udaipur" }
- Expected Output:
Found 5 photos from Udaipur: 📷 IMG_1234.jpg ...
-
Label Search
- Description: Search for photos by labels or keywords.
- Input Example:
{ "label": "Birthday" }
- Expected Output:
Photos labeled as 'Birthday' (3 found): 📷 IMG_5678.jpg ...
-
People Search
- Description: Find photos containing specific people.
- Input Example:
{ "person": "Maa" }
- Expected Output:
Photos with Maa (10 found): 📷 IMG_9101.jpg ...
-
Photo Analysis
- Description: Analyze patterns in your photo library, such as the most common times or days for photo shoots.
- Input Example:
{}
- Expected Output:
📸 Photo Taking Patterns: Total Photos: 200 ...
Want to gather all your family moments in one place? Use the people-search
tool with names like "Papa" or "Mom" or "Any Friend" to find photos with specific people.
Search for photos from your vacation destination using the location-search
tool.
Curious about your past birthday photos? Use label-search
with "Birthday" and relive the fun!
Use the photo-analysis
tool to understand when and where you take most of your photos. Plan your next shoot accordingly!
- Ensure your Photos library is loaded in macOS.
- Be as specific as possible with search queries for more accurate results.
- Use fuzzy matching for flexibility when you're unsure of the exact name.