{
  "slug": "com-phototology-mcp",
  "name": "com.phototology/mcp",
  "title": "mcp",
  "description": "Persistent memory for visual intelligence. A photo registry: analyze once, look up free after that.",
  "version": "2.0.0",
  "publishedAt": "2026-10-18T15:32:28.706827Z",
  "updatedAt": "2026-10-18T15:32:28.706827Z",
  "repoUrl": "https://github.com/phototology-ai/phototology",
  "websiteUrl": "https://phototology.com",
  "namespace": {
    "type": "domain",
    "owner": "phototology.com"
  },
  "kind": "local",
  "packages": [
    {
      "registryType": "npm",
      "identifier": "@phototology/mcp",
      "version": "2.0.0",
      "transport": "stdio",
      "runtimeHint": null
    }
  ],
  "remotes": [],
  "envVars": [
    {
      "name": "PHOTOTOLOGY_API_KEY",
      "isSecret": true,
      "isRequired": true,
      "description": "Your Phototology API key (pt_live_... for production, pt_test_... for the free fixture sandbox). Get one at https://phototology.com/dashboard. New accounts include 1,000 free credits on email verification."
    },
    {
      "name": "PHOTOTOLOGY_BASE_URL",
      "isSecret": false,
      "isRequired": false,
      "description": "Override the API base URL. Defaults to https://api.phototology.com. Used for local development against phototology-api."
    },
    {
      "name": "PHOTOTOLOGY_MCP_NO_TELEMETRY",
      "isSecret": false,
      "isRequired": false,
      "description": "Set to 1 to disable anonymous telemetry: the editor name and version, the package version, and per tool call the tool name, success, duration, error code and counts. Never image content, file paths, tool inputs or outputs, or conversation text."
    },
    {
      "name": "DO_NOT_TRACK",
      "isSecret": false,
      "isRequired": false,
      "description": "Set to 1 to disable telemetry. Same effect as PHOTOTOLOGY_MCP_NO_TELEMETRY; follows the cross-tool convention many CLIs honor."
    },
    {
      "name": "PHOTOTOLOGY_MCP_ALLOWED_DIRS",
      "isSecret": false,
      "isRequired": false,
      "description": "Folders the server may read photos from and write enriched copies to, separated by : (; on Windows). Unset means any local path. Paths are checked after symlinks are resolved."
    }
  ],
  "category": "ai-media",
  "subcategory": "image",
  "company": "",
  "categoryAuto": true,
  "checks": [
    {
      "id": "source-linked",
      "label": "Source repository linked",
      "result": "pass",
      "detail": "https://github.com/phototology-ai/phototology"
    },
    {
      "id": "version-pinned",
      "label": "Version pinned",
      "result": "pass",
      "detail": "Every package has an explicit version"
    },
    {
      "id": "secrets-requested",
      "label": "Secrets requested",
      "result": "info",
      "detail": "Asks for 1 secret: PHOTOTOLOGY_API_KEY"
    },
    {
      "id": "known-registry",
      "label": "Known package registry",
      "result": "pass",
      "detail": "All packages come from npm, PyPI, OCI, NuGet or MCPB"
    },
    {
      "id": "namespace",
      "label": "Namespace ownership",
      "result": "info",
      "detail": "Name verified via domain phototology.com"
    },
    {
      "id": "meta-text",
      "label": "Registry text aimed at the AI",
      "result": "pass",
      "detail": "Description and settings contain no hidden characters or instructions to the AI"
    },
    {
      "id": "install-scripts",
      "label": "Install scripts",
      "result": "pass",
      "detail": "@phototology/mcp@2.0.0 runs nothing at install"
    },
    {
      "id": "code-flags",
      "label": "Code red flags",
      "result": "pass",
      "detail": "Read 61 files in @phototology/mcp@2.0.0: no obfuscation, encoded execution, credential reads or data-collection endpoints found"
    },
    {
      "id": "ai-text",
      "label": "Text aimed at the AI",
      "result": "pass",
      "detail": "No hidden characters or instructions to the AI in 61 files, including comments and the README"
    }
  ],
  "scannedAt": "2026-10-29",
  "level": "Scanned",
  "install": [
    {
      "label": "Claude Desktop (npm)",
      "kind": "claude_desktop_json",
      "text": "{\n  \"mcpServers\": {\n    \"mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"-y\",\n        \"@phototology/mcp@2.0.0\"\n      ],\n      \"env\": {\n        \"PHOTOTOLOGY_API_KEY\": \"<your value>\"\n      }\n    }\n  }\n}"
    }
  ],
  "curated": true,
  "stars": 1,
  "archived": false,
  "pushedAt": "2026-10-28T17:00:11Z",
  "health": {
    "score": 51,
    "parts": {
      "popularity": 0.2040555599853987,
      "activity": 0.6,
      "issues": null,
      "security": 1
    },
    "fail": 0,
    "warn": 0,
    "raw": {
      "stars": 1,
      "forks": 0,
      "downloads": 61,
      "hn": null,
      "issuesOpen": 0,
      "issuesClosed": 0,
      "prsMerged": 0,
      "commits90": 0,
      "release": "2026-10-18T07:40:47Z",
      "pushed": "2026-10-28T17:00:11Z",
      "growth": null,
      "growthDays": null,
      "archived": false
    },
    "at": "2026-10-31T07:35:52.424Z"
  }
}
