What is Google Photos MCP Server?
Google changed what any third-party Google Photos tool can do on 31 March 2025. It removed the photoslibrary.readonly, photoslibrary.sharing and photoslibrary scopes from the Library API, so apps can now list, search and retrieve only the albums and media items they created themselves. Shared-album methods return 403. To read a user's wider library, an app has to use the Picker API, where the person opens a Google page and picks items by hand.
This community server (savethepolarbears/google-photos-mcp, about 56 GitHub stars) is built around those rules. It exposes 21 tools: search and album tools that run on the Library API, upload and album-creation tools, and four Picker tools that create a session, poll it and download the chosen items. It runs from a git clone over stdio or Streamable HTTP, or through Smithery, and needs your own Google Cloud project with OAuth credentials. There are no tagged releases; package.json says version 0.1.0 under MIT, though the repository has no licence file.
How to install Google Photos MCP Server
git clone https://github.com/savethepolarbears/google-photos-mcp && npm install && npm run buildIs Google Photos MCP Server worth it?
The limit here comes from Google, not from this server. Since 31 March 2025 the Library API sees only media an app uploaded itself. The tools named search_photos, search_photos_by_location and search_media_by_filter therefore search a near-empty set for most people: whatever this server put there. The README's capability table marks text and date search as supported without making that clear. A request like "find photos of my dog from 2024", which appears in its own examples, will not reach photos taken on a phone.
The Picker API route works, but it puts a person back in the loop. The agent calls create_picker_session and you open the link in a browser and tick photos. The agent then polls and downloads what you chose, as full-resolution images or transcoded MP4 for video. That suits "turn these 30 photos into an album". It does not suit an agent that goes and looks for things on its own.
The engineering is more careful than the star count suggests. Downloads are restricted to Google media domains to prevent token exfiltration. OAuth tokens sit in a local SQLite file with owner-only permissions, CORS is disabled to block drive-by requests to localhost, and base64 responses are capped at 10 MB. Location results come from geocoding photo descriptions through OpenStreetMap's Nominatim, so that text leaves your machine.
Setup is the other cost. You create a Google Cloud project, enable two APIs, make OAuth web credentials and finish sign-in in HTTP mode before switching to stdio. The Library API allows 10,000 requests per project per day. With no npm package and no releases, updates mean pulling the repo again.
Where it earns its place
A wedding photographer delivering edited shots to clients
Upload a folder of finished images into a new named album
create_album_with_media uploads up to 50 files per call into an app-created album the server can then manage. Free within the 10,000 requests a day quota; uploads count against the account owner's Google storage at original quality.
A parent assembling a year-end family album
Pick 40 photos from the phone library and have the agent caption and order them
The agent opens a Picker session, the parent selects photos in Google's own page, and download_picker_media fetches the originals for the model to describe. Every photo the model looks at is sent to its provider.
A developer evaluating photo integrations for an agent product
Check what a Google Photos tool can still do after the 2025 API change
The README and tool list are a clear map of the remaining surface: appendonly uploads, app-created reads and the Picker. Shared albums and library-wide search are gone for every third-party app, not just this one.
Before you commit
- Setup
- git clone, npm install and npm run build on Node.js 22.22+, then enable the Photos Library API and Google Photos Picker API in a Google Cloud project, create OAuth web credentials and sign in once through http://localhost:3000/auth. Allow 20 to 30 minutes for a first run.
- Integrations
- 21 tools: nine search and browse, six write and album, four Picker and two auth tools, plus three MCP resources and three prompts. Documented for Claude Desktop, Cursor and the MCP Inspector.
- Data and privacy
- OAuth tokens are stored locally in tokens.db with owner-only permissions. Media URLs are limited to Google domains. Photo descriptions are geocoded through OpenStreetMap Nominatim. Images you fetch as base64 go to your model provider.
- Cost at scale
- Free. Google allows 10,000 Library API requests and 75,000 media-byte requests per project per day; the Picker API allows 100,000 requests per minute. Higher quota needs Google's partner programme.
- Limits
- Library API reads cover app-created items only and shared albums return 403, per Google. Videos download as transcoded MP4, not originals. There is no published release or changelog.
What’s good
- Uses the Picker API, the one supported route to a user's full library
- Uploads and album building with up to 50 files per call
- Domain allowlist, 0600 token storage and no CORS
- 21 tools, plus MCP resources and prompts
What’s not
- Search tools see only photos the server uploaded
- Picker flow needs a person to choose photos in a browser
- Own Google Cloud project and OAuth setup required
- No releases or npm package; about 56 stars
Best for
People who want an agent to upload and arrange albums, or to process photos they hand-pick, not to search an existing library.
Google Photos MCP Server alternatives
Google Photos MCP Server: common questions
- Is Google Photos MCP Server worth it?
- A careful build around an API Google has closed off, it can upload and organise, but an agent can no longer search the photos you actually took. We rate it 2.8 out of 5.
- How much does Google Photos MCP Server cost?
- Free and open source (MIT per package.json). Google Photos APIs are free within quota.
- What are the downsides of Google Photos MCP Server?
- Search tools see only photos the server uploaded; picker flow needs a person to choose photos in a browser; own Google Cloud project and OAuth setup required; no releases or npm package; about 56 stars.
- Who is Google Photos MCP Server best for?
- People who want an agent to upload and arrange albums, or to process photos they hand-pick, not to search an existing library.
- How much does Google Photos MCP Server cost for a team or in production?
- Free. Google allows 10,000 Library API requests and 75,000 media-byte requests per project per day; the Picker API allows 100,000 requests per minute. Higher quota needs Google's partner programme.
- Is Google Photos MCP Server safe for company data?
- OAuth tokens are stored locally in tokens.db with owner-only permissions. Media URLs are limited to Google domains. Photo descriptions are geocoded through OpenStreetMap Nominatim. Images you fetch as base64 go to your model provider.
- What are the best Google Photos MCP Server alternatives?
- The closest alternatives we have reviewed are Google Workspace MCP servers and Filesystem (reference server).
Answers checked Oct 31, 2026.