googlephotos-automation

Automate Google Photos tasks via Rube MCP (Composio): upload media, manage albums, search photos, batch add items, create and update albums. Always search tools first for current schemas.

23 stars

Best use case

googlephotos-automation is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Automate Google Photos tasks via Rube MCP (Composio): upload media, manage albums, search photos, batch add items, create and update albums. Always search tools first for current schemas.

Teams using googlephotos-automation should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/googlephotos-automation/SKILL.md --create-dirs "https://raw.githubusercontent.com/christophacham/agent-skills-library/main/skills/automation/googlephotos-automation/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/googlephotos-automation/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How googlephotos-automation Compares

Feature / Agentgooglephotos-automationStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Automate Google Photos tasks via Rube MCP (Composio): upload media, manage albums, search photos, batch add items, create and update albums. Always search tools first for current schemas.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Google Photos Automation via Rube MCP

Upload photos, manage albums, search media items, and batch-organize content in Google Photos using Rube MCP (Composio).

**Toolkit docs**: [composio.dev/toolkits/googlephotos](https://composio.dev/toolkits/googlephotos)

## Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `googlephotos`
- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas

## Setup
**Get Rube MCP**: Add `https://rube.app/mcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.

1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds
2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `googlephotos`
3. If connection is not ACTIVE, follow the returned auth link to complete setup
4. Confirm connection status shows ACTIVE before running any workflows

## Core Workflows

### 1. List Albums
Use `GOOGLEPHOTOS_LIST_ALBUMS` to retrieve all albums visible in the user's Albums tab.
```
Tool: GOOGLEPHOTOS_LIST_ALBUMS
Parameters:
  - pageSize: Number of albums per page
  - pageToken: Pagination token
  - excludeNonAppCreatedData: Only show albums created by this app
```

### 2. Create a New Album
Use `GOOGLEPHOTOS_CREATE_ALBUM` to create a new album in Google Photos.
```
Tool: GOOGLEPHOTOS_CREATE_ALBUM
Parameters:
  - title (required): Album title
```

### 3. Upload Media
Use `GOOGLEPHOTOS_UPLOAD_MEDIA` to upload an image or video file to Google Photos.
```
Tool: GOOGLEPHOTOS_UPLOAD_MEDIA
Parameters:
  - file_to_upload: Local file path to upload
  - url: URL of file to upload (alternative to file_to_upload)
  - file_name: Name for the uploaded file
  - description: Description/caption for the media item
```

### 4. Batch Upload and Create Media Items
Use `GOOGLEPHOTOS_BATCH_CREATE_MEDIA_ITEMS` to upload multiple files and create media items in one operation.
```
Tool: GOOGLEPHOTOS_BATCH_CREATE_MEDIA_ITEMS
Parameters:
  - files: Local file paths to upload
  - urls: URLs of files to upload
  - media_files: Mixed input (files and URLs)
  - albumId: Album to add items to
  - albumPosition: Position within the album
```

### 5. Search Media Items
Use `GOOGLEPHOTOS_SEARCH_MEDIA_ITEMS` to search the user's photo library with filters.
```
Tool: GOOGLEPHOTOS_SEARCH_MEDIA_ITEMS
Parameters:
  - albumId: Filter by album
  - filters: Search filters (date ranges, content categories, media types)
  - orderBy: Sort order
  - pageSize: Results per page
  - pageToken: Pagination token
```

### 6. Add Items to an Album
Use `GOOGLEPHOTOS_BATCH_ADD_MEDIA_ITEMS` to add existing media items to an album.
```
Tool: GOOGLEPHOTOS_BATCH_ADD_MEDIA_ITEMS
Parameters:
  - albumId (required): Target album ID
  - mediaItemIds (required): Array of media item IDs to add
```

## Common Patterns

- **Create album then upload**: Use `GOOGLEPHOTOS_CREATE_ALBUM` to create an album, then `GOOGLEPHOTOS_BATCH_CREATE_MEDIA_ITEMS` with the album ID to upload and organize photos in one step.
- **List then organize**: Use `GOOGLEPHOTOS_SEARCH_MEDIA_ITEMS` or `GOOGLEPHOTOS_LIST_MEDIA_ITEMS` to find media item IDs, then `GOOGLEPHOTOS_BATCH_ADD_MEDIA_ITEMS` to add them to albums.
- **Update album metadata**: Use `GOOGLEPHOTOS_UPDATE_ALBUM` to change an album's title or cover photo.
- **Get album details**: Use `GOOGLEPHOTOS_GET_ALBUM` with an album ID to retrieve full album information.
- **Add enrichments**: Use `GOOGLEPHOTOS_ADD_ENRICHMENT` to add text overlays, locations, or map enrichments to album positions.
- **Upload from URLs**: Use the `url` parameter in `GOOGLEPHOTOS_UPLOAD_MEDIA` or `urls` in `GOOGLEPHOTOS_BATCH_CREATE_MEDIA_ITEMS` to upload images directly from web URLs.

## Known Pitfalls

- `GOOGLEPHOTOS_LIST_MEDIA_ITEMS` is **deprecated** -- prefer `GOOGLEPHOTOS_SEARCH_MEDIA_ITEMS` for listing and filtering media.
- `GOOGLEPHOTOS_UPLOAD_MEDIA` supports images up to **200MB** and videos up to a larger limit. Exceeding these will fail.
- Album IDs must be obtained from `GOOGLEPHOTOS_LIST_ALBUMS` or `GOOGLEPHOTOS_CREATE_ALBUM` responses -- they are opaque strings.
- `GOOGLEPHOTOS_BATCH_ADD_MEDIA_ITEMS` can only add items to albums **created by the app** or albums the user owns.
- The `filters` parameter in `GOOGLEPHOTOS_SEARCH_MEDIA_ITEMS` uses a specific Google Photos API filter structure -- consult the schema for date range and content category formats.
- Media items created via the API may not immediately appear in the Google Photos web UI due to processing delays.

## Quick Reference
| Action | Tool | Key Parameters |
|--------|------|----------------|
| List albums | `GOOGLEPHOTOS_LIST_ALBUMS` | `pageSize`, `pageToken` |
| Create album | `GOOGLEPHOTOS_CREATE_ALBUM` | `title` |
| Get album | `GOOGLEPHOTOS_GET_ALBUM` | `albumId` |
| Update album | `GOOGLEPHOTOS_UPDATE_ALBUM` | `albumId`, `title`, `coverPhotoMediaItemId` |
| Upload media | `GOOGLEPHOTOS_UPLOAD_MEDIA` | `file_to_upload` or `url`, `description` |
| Batch upload | `GOOGLEPHOTOS_BATCH_CREATE_MEDIA_ITEMS` | `files` or `urls`, `albumId` |
| Search media | `GOOGLEPHOTOS_SEARCH_MEDIA_ITEMS` | `albumId`, `filters`, `pageSize` |
| List media items | `GOOGLEPHOTOS_LIST_MEDIA_ITEMS` | `pageSize`, `pageToken` |
| Add items to album | `GOOGLEPHOTOS_BATCH_ADD_MEDIA_ITEMS` | `albumId`, `mediaItemIds` |
| Add enrichment | `GOOGLEPHOTOS_ADD_ENRICHMENT` | `albumId`, `newEnrichmentItem`, `albumPosition` |

---
*Powered by [Composio](https://composio.dev)*

Related Skills

zyte-api-automation

23
from christophacham/agent-skills-library

Automate Zyte API tasks via Rube MCP (Composio). Always search tools first for current schemas.

wolfram-alpha-api-automation

23
from christophacham/agent-skills-library

Automate Wolfram Alpha API tasks via Rube MCP (Composio). Always search tools first for current schemas.

tripadvisor-content-api-automation

23
from christophacham/agent-skills-library

Automate TripAdvisor tasks via Rube MCP (Composio). Always search tools first for current schemas.

the-odds-api-automation

23
from christophacham/agent-skills-library

Automate The Odds API tasks via Rube MCP (Composio). Always search tools first for current schemas.

sslmate-cert-spotter-api-automation

23
from christophacham/agent-skills-library

Automate Sslmate Cert Spotter API tasks via Rube MCP (Composio). Always search tools first for current schemas.

serpapi-automation

23
from christophacham/agent-skills-library

Automate Serpapi tasks via Rube MCP (Composio). Always search tools first for current schemas.

scrapingbee-automation

23
from christophacham/agent-skills-library

Automate Scrapingbee tasks via Rube MCP (Composio). Always search tools first for current schemas.

scrapingant-automation

23
from christophacham/agent-skills-library

Automate Scrapingant tasks via Rube MCP (Composio). Always search tools first for current schemas.

pdf-api-io-automation

23
from christophacham/agent-skills-library

Automate PDF API IO tasks via Rube MCP (Composio). Always search tools first for current schemas.

openweather-api-automation

23
from christophacham/agent-skills-library

Automate Openweather API tasks via Rube MCP (Composio). Always search tools first for current schemas.

onesignal-rest-api-automation

23
from christophacham/agent-skills-library

Automate OneSignal tasks via Rube MCP (Composio): push notifications, segments, templates, and messaging. Always search tools first for current schemas.

news-api-automation

23
from christophacham/agent-skills-library

Automate News API tasks via Rube MCP (Composio). Always search tools first for current schemas.