flickr-mcp
Enables Claude to browse your Flickr photostream, retrieve direct image URLs, upload photos, and manage albums via the Model Context Protocol.
README
Flickr MCP
English | 繁體中文
Give Claude direct access to your Flickr — browse your photostream, pull direct image URLs for embedding, upload, and manage albums. A thin Model Context Protocol wrapper around Flickr's official API (OAuth 1.0a signed, read + write).
Status: 🟢 read path verified (6 read tools green against a real ~1500-photo account). Write tools (upload / albums) are code-complete but not yet live-tested — see Notes.
Tools
Read
whoami— verify auth succeeded (returns the logged-in user id / name)list_albums— list your albums (photosets)list_album_photos— list photos in an album (each with a ready-to-use 1024px URL)search_photos— search (defaults to your own photos only)get_photo_info— full metadata for one photo (title / description / tags / taken date / visibility / page URL)get_photo_sizes— every available size with its direct source URL (the reliable source for embed URLs)
Write
upload_photo— upload a local image (private by default, nothing goes public by accident)create_album— create an album (Flickr requires an existing photo as the cover)add_photo_to_album— add a photo to an albumset_photo_meta— update a photo's title / description
Install
git clone https://github.com/vulture-s/flickr-mcp.git
cd flickr-mcp
python -m venv .venv && source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
Get credentials (four strings)
- Create an app at https://www.flickr.com/services/apps/create/ (non-commercial is fine) and copy its Key and Secret.
- Exchange them for an access token:
Open the printed URL → approve → paste the 9-digit code Flickr shows back into the terminal. The script prints the fourexport FLICKR_API_KEY=your_key export FLICKR_API_SECRET=your_secret python authorize.pyFLICKR_*variables.
Requests
writepermission (covers read + upload + album management). The script never writes to disk — you paste the tokens into your config yourself.
Add to Claude Code
Use claude mcp add, or add to your MCP config JSON:
{
"mcpServers": {
"flickr": {
"command": "python",
"args": ["-m", "flickr_mcp.server"],
"cwd": "/absolute/path/to/flickr-mcp",
"env": {
"FLICKR_API_KEY": "...",
"FLICKR_API_SECRET": "...",
"FLICKR_OAUTH_TOKEN": "...",
"FLICKR_OAUTH_TOKEN_SECRET": "..."
}
}
}
}
Once it's connected, ask Claude to run whoami to confirm auth works.
Typical embedding workflow
list_albums→ find the album_id you wantlist_album_photosorget_photo_sizes→ get each photo's direct URL- Drop the URLs into your own HTML/CSS (images live on Flickr, you control the look)
Notes
- Upload defaults to private:
upload_photo'sis_publicdefaults to False; you must explicitly set it to go public. - Credentials never touch git:
.envis gitignored; only.env.exampleis tracked. Prefer passing the four vars via your MCP config'senvblock. writeperms exclude deletion: Flickr'swritescope covers upload and album management but not deleting photos — a test upload can only be removed from the Flickr website. Think before you upload.- The OAuth token is long-lived; you won't need to re-run
authorize.pyunless you revoke it in Flickr's account settings.
License
MIT — see LICENSE.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.