photographi-mcp

photographi-mcp

A Local Computer Vision Engine for Photo Libraries

Category
Visit Server

README

photographi-mcp

<!-- mcp-name: io.github.prasadabhishek/photographi-mcp --> Fast, private, and grounded technical photo analysis for AI applications.

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) to evaluate sharpness, focus, and exposure—enabling capabilities like automated culling, burst ranking, and metadata indexing without requiring a cloud upload.

⚡ Why photographi?

  • Technical First: Purpose-built for objective metrics (sharpness, lighting, focus). It provides technical data for evaluating image quality.
  • 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.
  • Privacy First: All analysis happens 100% locally on your machine.
  • Low Latency: Built for efficient processing, allowing for rapid ranking and technical feedback on local photo folders.

👁️ What It Analyzes

  • Smart Focus: Detects subjects and verifies they're sharp
  • Exposure: Catches blown highlights and blocked shadows
  • Gear-Aware: Knows your lens's sweet spot for optimal sharpness
  • Composition: Evaluates framing and subject placement
  • Quality Alerts: Flags motion blur, diffraction, high ISO noise

[!NOTE] 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.

For the science and math behind it, see the Technical Documentation.


📸 See It In Action

Here are real examples from actual photo analysis:

Example 1: Excellent Photo

Best Shot

{
  "overallConfidence": 0.89,
  "judgement": "Excellent",
  "keyMetrics": {
    "sharpness": 0.94,
    "exposure": 0.87,
    "composition": 0.85
  }
}

Verdict: Tack sharp on subject, well exposed, strong composition.


Example 2: Poor Photo

Worst Shot

{
  "overallConfidence": 0.20,
  "judgement": "Very Poor",
  "keyMetrics": {
    "sharpness": 0.30,
    "focus": 0.07,
    "exposure": 0.0
  }
}

Verdict: Missed focus on subject, severe underexposure/black clipping, and excessive headroom.


🛠️ Tools (MCP)

photographi-mcp enables AI models to perform deep technical audits through these standardized tools:

Tool AI "Intent" Example Action / Insight Provided
analyze_photo "Is this dog photo sharp enough for a print?" Full technical audit of sharpness, focus, and lighting.
analyze_folder "How's the overall quality of my 'Vacation' folder?" Statistical summary identifying the best/worst image groups.
rank_photographs "Find the best shot in this burst of the cake." Ranks files by technical perfection to find the "hero" frame.
cull_photographs "Move all the blurry photos to a junk folder." Automatically cleans up failed shots into a subfolder.
threshold_cull "Strictly separate keepers using a score of 0.7." Binary sorting to isolate professional-grade assets.
get_color_palette "What colors are in this sunset for my website?" Extracts hexadecimal codes for dominant image aesthetics.
get_folder_palettes "Generate a moodboard from my 'Forest' shoot." Batch color extraction for an entire folder.
get_scene_content "Which photos contain a 'cat' or 'mountain'?" Rapid content indexing based on 80+ object categories.

Full API Reference


🚀 Get Started

Claude CLI (Fastest)

claude mcp add --scope user photographi uvx photographi-mcp

Claude Desktop (macOS)

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "photographi": {
      "command": "uvx",
      "args": ["photographi-mcp"]
    }
  }
}

GitHub Copilot CLI

Add to ~/.config/github-copilot/config.json:

{
  "mcp_servers": {
    "photographi": {
      "command": "uvx",
      "args": ["photographi-mcp"]
    }
  }
}

🔒 Privacy & Telemetry

photographi is built on a Privacy-First philosophy.

  • Anonymized Aggregates Only: We never collect filenames, paths, or EXIF data.
  • Total Transparency: Audit our collection logic directly in analytics.py.
  • Opt-Out: Set the environment variable PHOTOGRAPHI_TELEMETRY_DISABLED=1 or use the --disable-telemetry flag.

📖 Documentation


<div align="center"> <p> <a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a> <a href="https://modelcontextprotocol.io"><img src="https://img.shields.io/badge/MCP-Compatible-green.svg" alt="MCP Protocol"></a> <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> <a href="https://www.python.org/downloads/"><img src="https://img.shields.io/badge/python-3.10+-blue.svg" alt="Python 3.10+"></a> </p> <p>Built with ❤️ for photographers</p> </div>

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured