{
  "markdown": "# photographi-mcp\n<!-- mcp-name: io.github.prasadabhishek/photographi-mcp -->\n**Fast, private, and grounded technical photo analysis for AI applications.**\n\n`photographi-mcp` is an MCP server that enables AI models and LLM-powered tools to perform technical analysis on local photo libraries. It runs computer vision models directly on your hardware (powered by **[photo-quality-analyzer-core](https://github.com/prasadabhishek/photo-quality-analyzer)**) to evaluate sharpness, focus, and exposure—enabling capabilities like automated culling, burst ranking, and metadata indexing without requiring a cloud upload.\n\n### ⚡ Why photographi?\n- **Technical First**: Purpose-built for objective metrics (sharpness, lighting, focus). It provides technical data for evaluating image quality.\n- **Token Efficient**: Save model context by pre-filtering technical metadata locally. Only the most relevant insights are sent to the AI application, keeping sessions fast and lean.\n- **Privacy First**: All analysis happens 100% locally on your machine.\n- **Low Latency**: Built for efficient processing, allowing for rapid ranking and technical feedback on local photo folders.\n---\n\n## 👁️ What It Analyzes\n\n- **Smart Focus**: Detects subjects and verifies they're sharp\n- **Exposure**: Catches blown highlights and blocked shadows  \n- **Gear-Aware**: Knows your lens's sweet spot for optimal sharpness\n- **Composition**: Evaluates framing and subject placement\n- **Quality Alerts**: Flags motion blur, diffraction, high ISO noise\n\n> [!NOTE]\n> **Technical vs. Artistic**: This tool is strictly **objective**. It evaluates photos based on technical metrics and computer vision (sharpness, exposure, noise, etc.). It does **not** understand artistic intent, aesthetics, or \"vibe.\" A blurry, underexposed photo may be an artistic masterpiece, but `photographi` will correctly flag it as technically poor.\n\nFor the science and math behind it, see the **[Technical Documentation](https://github.com/prasadabhishek/photo-quality-analyzer/blob/mainline/docs/SCIENCE.md)**.\n\n---\n\n## 📸 See It In Action\n\nHere are real examples from actual photo analysis:\n\n### Example 1: Excellent Photo\n![Best Shot](docs/examples/burst_best.jpg)\n\n```json\n{\n  \"overallConfidence\": 0.89,\n  \"judgement\": \"Excellent\",\n  \"keyMetrics\": {\n    \"sharpness\": 0.94,\n    \"exposure\": 0.87,\n    \"composition\": 0.85\n  }\n}\n```\n**Verdict:** Tack sharp on subject, well exposed, strong composition.\n\n---\n\n### Example 2: Poor Photo  \n![Worst Shot](docs/examples/bad_example.jpg)\n\n```json\n{\n  \"overallConfidence\": 0.20,\n  \"judgement\": \"Very Poor\",\n  \"keyMetrics\": {\n    \"sharpness\": 0.30,\n    \"focus\": 0.07,\n    \"exposure\": 0.0\n  }\n}\n```\n**Verdict:** Missed focus on subject, severe underexposure/black clipping, and excessive headroom.\n\n---\n\n## 🛠️ Tools (MCP)\n\n`photographi-mcp` enables AI models to perform deep technical audits through these standardized tools:\n\n| Tool | AI \"Intent\" Example | Action / Insight Provided |\n| :--- | :--- | :--- |\n| `analyze_photo` | \"Is this dog photo sharp enough for a print?\" | Full technical audit of sharpness, focus, and lighting. |\n| `analyze_folder` | \"How's the overall quality of my 'Vacation' folder?\" | Statistical summary identifying the best/worst image groups. |\n| `rank_photographs` | \"Find the best shot in this burst of the cake.\" | Ranks files by technical perfection to find the \"hero\" frame. |\n| `cull_photographs` | \"Move all the blurry photos to a junk folder.\" | Automatically cleans up failed shots into a subfolder. |\n| `threshold_cull` | \"Strictly separate keepers using a score of 0.7.\" | Binary sorting to isolate professional-grade assets. |\n| `get_color_palette` | \"What colors are in this sunset for my website?\" | Extracts hexadecimal codes for dominant image aesthetics. |\n| `get_folder_palettes` | \"Generate a moodboard from my 'Forest' shoot.\" | Batch color extraction for an entire folder. |\n| `get_scene_content` | \"Which photos contain a 'cat' or 'mountain'?\" | Rapid content indexing based on 80+ object categories. |\n\n**[Full API Reference](docs/api-reference.md)**\n\n---\n\n## 🚀 Get Started\n\n### Claude CLI (Fastest)\n```bash\nclaude mcp add --scope user photographi uvx photographi-mcp\n```\n\n### Claude Desktop (macOS)\nAdd to `~/Library/Application Support/Claude/claude_desktop_config.json`:\n```json\n{\n  \"mcpServers\": {\n    \"photographi\": {\n      \"command\": \"uvx\",\n      \"args\": [\"photographi-mcp\"]\n    }\n  }\n}\n```\n\n### GitHub Copilot CLI\nAdd to `~/.config/github-copilot/config.json`:\n```json\n{\n  \"mcp_servers\": {\n    \"photographi\": {\n      \"command\": \"uvx\",\n      \"args\": [\"photographi-mcp\"]\n    }\n  }\n}\n```\n\n---\n\n## 🔒 Privacy & Telemetry\n\n`photographi` is built on a **Privacy-First** philosophy.\n- **Anonymized Aggregates Only**: We never collect filenames, paths, or EXIF data.\n- **Total Transparency**: Audit our collection logic directly in `analytics.py`.\n- **Opt-Out**: Set the environment variable `PHOTOGRAPHI_TELEMETRY_DISABLED=1` or use the `--disable-telemetry` flag.\n\n---\n\n## 📖 Documentation\n\n- **[Setup & Config Guide](docs/setup.md)**: Detailed configuration and troubleshooting.\n- **[The Science](https://github.com/prasadabhishek/photo-quality-analyzer/blob/mainline/docs/SCIENCE.md)**: Math and theory behind the quality scoring.\n- **[Contributing](CONTRIBUTING.md)**: How to help improve the project.\n- **[GitHub Issues](https://github.com/prasadabhishek/photographi-mcp/issues)**: Report bugs or request features.\n\n---\n\n<div align=\"center\">\n  <p>\n    <a href=\"https://opensource.org/licenses/MIT\"><img src=\"https://img.shields.io/badge/License-MIT-yellow.svg\" alt=\"License: MIT\"></a>\n    <a href=\"https://modelcontextprotocol.io\"><img src=\"https://img.shields.io/badge/MCP-Compatible-green.svg\" alt=\"MCP Protocol\"></a>\n    <a href=\"https://glama.ai/mcp/servers/@prasadabhishek/photographi-mcp\"><img width=\"380\" height=\"200\" src=\"https://glama.ai/mcp/servers/@prasadabhishek/photographi-mcp/badge\" /></a>\n    <a href=\"https://www.python.org/downloads/\"><img src=\"https://img.shields.io/badge/python-3.10+-blue.svg\" alt=\"Python 3.10+\"></a>\n  </p>\n  <p>Built with ❤️ for photographers</p>\n</div>\n",
  "bytes": 6135,
  "sha": "ee39718a449f97ae3aa0ad25cb668a825285794729b46b014c11c69b60e8bc74",
  "repo_slug": "prasadabhishek/photographi-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_prasadabhishek_photographi_mcp_5d995ba3/readme"
}