Googlephotos MCP server for AI agents and assistants

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Googlephotos MCP or direct API to upload images, organize albums, search photos, and share media—all through natural language.

Googlephotos logoGooglephotos
Oauth2

Google Photos is a cloud-based photo storage and organization service by Google. It offers automatic backups, smart search, and seamless sharing for managing your media library.

13 Tools

Try Googlephotos now

Type what you want done — sign in and watch it run live in the Tool Router playground.

TOOL ROUTER PLAYGROUND
Googlephotos
Try asking
TOOLS

Supported Tools

Every Googlephotos action and event your agent gets out of the box.

Add Enrichment

Adds an enrichment at a specified position in a defined album.

Batch Add Media Items

Adds one or more media items to an album in Google Photos.

Batch Create Media Items

Batch upload and create media items in Google Photos.

Batch Get Media Items

Returns the list of media items for the specified media item identifiers.

Create Album

Creates a new album in Google Photos.

Get Album

Returns the album based on the specified albumId.

Download Photos Media Item

Downloads a media item from Google Photos and returns it as a file.

List Albums

Lists all albums shown to a user in the Albums tab of Google Photos.

List Media Items (App-Created Only)

Lists media items created by this application from Google Photos.

Search Media Items

Searches for media items in a user's Google Photos library.

Update Album

Updates an album's title or cover photo in Google Photos.

Update Media Item

Updates a media item's description in Google Photos.

Upload Media

Upload a media file to Google Photos.

SETUP GUIDE

Connect Googlephotos MCP Tool with your Agent

1

Install Composio

typescript
npm install @composio/core ai @ai-sdk/mcp @ai-sdk/openai
Install the Composio SDK and your agent framework
2

Create a session with MCP enabled

typescript
import { Composio } from "@composio/core";

const composio = new Composio();
const { mcp } = await composio.create("your-user-id", {
  toolkits: ["googlephotos"],
  mcp: true,
});
Create a session scoped to Googlephotos and read its MCP URL and headers
3

Connect your agent to the MCP server

typescript
import { createMCPClient } from "@ai-sdk/mcp";
import { openai } from "@ai-sdk/openai";
import { generateText, stepCountIs } from "ai";

const client = await createMCPClient({
  transport: { type: "http", url: mcp.url, headers: mcp.headers },
});

const { text } = await generateText({
  model: openai("gpt-5.6-sol"),
  tools: await client.tools(),
  prompt: "List all albums created last month in Google Photos",
  stopWhen: stepCountIs(10),
});

console.log(text);
await client.close();
Pass the session's MCP URL and headers to your agent and run a Googlephotos request
SETUP GUIDE

Connect Googlephotos API Tool with your Agent

1

Install Composio

typescript
npm install @composio/core @composio/openai openai
Install the Composio SDK, the OpenAI provider, and the OpenAI SDK
2

Create a Composio session

typescript
import OpenAI from "openai";
import { Composio } from "@composio/core";
import { OpenAIResponsesProvider } from "@composio/openai";

const composio = new Composio({ provider: new OpenAIResponsesProvider() });
const client = new OpenAI();

const session = await composio.create("your-user-id", { toolkits: ["googlephotos"] });
const tools = await session.tools();
Initialize Composio with the OpenAI Responses provider and create a session scoped to Googlephotos
3

Run Googlephotos tools with your agent

typescript
let response = await client.responses.create({
  model: "gpt-5.6-sol",
  tools,
  input: [{ role: "user", content: "List all albums created last month in Google Photos" }],
});

while (response.output.some((o) => o.type === "function_call")) {
  const outputs = await composio.provider.handleToolCalls(session, response.output);
  response = await client.responses.create({
    model: "gpt-5.6-sol",
    tools,
    previous_response_id: response.id,
    input: outputs,
  });
}

console.log(response.output_text);
Send a request, execute the Googlephotos tool calls through the session, and print the final answer

Why Use Composio?

AI Native Googlephotos Integration

  • Supports both Googlephotos MCP and direct API based integrations
  • Structured, LLM-friendly schemas for reliable tool execution
  • Rich coverage for uploading, searching, and managing your Google Photos library

Managed Auth

  • Built-in OAuth2 flows for Googlephotos with automatic token refresh
  • Central dashboard to manage, scope, and revoke access to your photo library
  • Per-user and per-environment credentials—no more hard-coded OAuth secrets

Agent Optimized Design

  • Tools are tuned using real error and success rates to improve reliability over time
  • Comprehensive execution logs so you always know what photos were touched, when, and by which agent

Enterprise Grade Security

  • Fine-grained RBAC lets you control which agents and users can access Googlephotos
  • Scoped, least privilege access to albums, photos, and sharing features
  • Full audit trail of agent actions for review and compliance

Rolling this out across your team?

Give your team centralized access control across every framework with Composio’s MCP Gateway.

EXPLORE MCP GATEWAY
FAQ

Frequently asked questions

No. Composio provides a managed OAuth app for Googlephotos, so you sign in with your normal Googlephotos account and approve access. If you later want the consent screen to show your own company name, you can add your own Googlephotos OAuth app in the Composio dashboard, and every connection after that uses it.

Yes! Composio's Tool Router enables agents to use multiple toolkits. Learn more.

Yes. Composio is SOC 2 Type II compliant and is built to keep your Googlephotos connection and credentials secure. OAuth tokens and API keys are encrypted, and sensitive customer data is protected at rest and in transit.

Composio also undergoes independent security testing and continuously monitors its systems for security threats. You can review the latest reports and policies in the Composio Trust Center.

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

When you connect a Googlephotos account through Composio, every action runs under that account, so anything the agent creates, sends, or changes shows up in Googlephotos as done by you. Keep an approval step in your prompt for actions with side effects, such as sending or deleting, and have the agent draft first.

Exactly the ones Googlephotos lists on its consent screen when you connect. Review that screen before approving. If you connect a work account, your Googlephotos administrator may need to approve the app first, and you can revoke the access inside Googlephotos whenever you want.

Yes. Composio supports multiple connected accounts for the same app, and that works in Claude, ChatGPT, or any other assistant you connect through Composio. Give each Googlephotos connection a name such as work or personal, and the assistant uses the one you mention in the request. Each account keeps its own credentials and nothing is merged.

Composio refreshes Googlephotos tokens automatically, so day to day you do nothing. If you revoke access inside Googlephotos, or Googlephotos invalidates the session, the connection shows as expired in Composio and the agent stops acting on that account until you reconnect it, which is a single sign-in.

Composio's free Hobby plan includes 100,000 tool calls per month with no credit card, and up to 20,000 of those can run through Composio-managed apps like Googlephotos. Personal Googlephotos use rarely gets near that. Paid plans add higher limits and team features, and Googlephotos's own pricing is unaffected.

Built-in connectors usually give one AI access to a limited set of apps. Many people use Composio because it lets their AI connect to more apps than it normally supports, or connect to multiple accounts for the same app (e.g. connect Claude to multiple Googlephotos accounts).

With Composio, you connect Googlephotos once and then use it across different AI assistants without setting it up separately in each one. Connect your apps to Composio once, then connect Composio to whichever AI you use, whether that's Claude, ChatGPT, Hermes, or your own custom assistant.

Start with Googlephotos.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Googlephotos tool your agent needs.Free to start.

Start building