Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/sweetrb/apple-photos-mcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/mcp/sweetrb/apple-photos-mcp/apple-photos)<a href="https://agentmods.dev/mcp/sweetrb/apple-photos-mcp/apple-photos"><img src="https://agentmods.dev/badge/mcp/sweetrb/apple-photos-mcp/apple-photos/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/mcp/sweetrb/apple-photos-mcp/apple-photos"><img src="https://agentmods.dev/badge/mcp/sweetrb/apple-photos-mcp/apple-photos.svg" alt="Reviewed on agentmods" width="80" height="20"></a>Grade A, and why
apple-photos scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
86% identical to apple-notes — 2 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
What it actually says
{
"apple-photos": {
"command": "node",
"args": [
"${CLAUDE_PROJECT_DIR:-.}/build/index.js"
]
}
}What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 12d ago First seen · 8 lines scan A f4334132e42e
apple-photos is an MCP server published in the GitHub repository sweetrb/apple-photos-mcp (20 stars, last pushed 3d ago), licensed MIT. Its token cost is not measured: an MCP server costs its tool schemas, not its config file. A static security scan graded it A with 0 findings. It is 86% identical to apple-notes, differing in 2 lines, and is treated as a copy.
Other mcp servers, from other repositories
mcp-osxphotos
MCP server "mcp-osxphotos" as configured in marcomc/mcp-osxphotos. Runs locally from the mcp-osxphotos Python package.
asc-mcp
Every App Store Connect + StoreKit 2 endpoint. 890 tools in 13 profiles, narrow to 27. Runs locally from the @erayendes/asc-mcp npm package. Needs 5 environment variables to run.
plonk
MCP server for Plonk, a macOS window manager: zones you draw yourself, workspaces, keep-awake, screenshots and on-device OCR, as tools an agent can call. Runs locally from the plonk-mcp npm package.
plonk
MCP server for Plonk: macOS window zones, workspaces, keep-awake, screenshots and on-device OCR. Runs locally from the plonk-mcp npm package.
codex-mcp-bridge
Two-way MCP bridge between Claude and Codex: prompts into a live Codex thread, messages into a running Claude Code session. Runs locally from the @minhspark/codex-mcp-bridge npm package.
rail-connector-mcp
MCP server "rail-connector-mcp" as configured in SNComrade/Rail-Connector-MCP. Runs locally from the rail-connector-mcp npm package.