mcpField
F
flickr-mcp

flickr-mcp

本地服务
github.com/MK3Core社交媒体121 周前更新

关于 flickr-mcp

flickr-mcp 让兼容 MCP 的 AI 客户端经过授权访问用户自己的 Flickr 照片库。它支持查找照片和编辑元数据,并可结合图像内容与 EXIF 数据批量处理照片。

主要功能

  1. 01浏览、搜索和查看照片
  2. 02读取相机及位置 EXIF 数据
  3. 03编辑标题、描述和标签
  4. 04搜索群组并管理成员关系
  5. 05扫描并处理未标记照片

适用场景

  1. 01为近期上传的照片添加相关元数据
  2. 02处理缺少标题或描述的照片
  3. 03查找相册照片并添加标签
  4. 04将匹配的照片加入 Flickr 群组

MCP 相关

它向 MCP 客户端提供 Flickr 照片、相册、元数据和群组操作工具。写入工具可预览更改;批量处理工具默认直接应用更新。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"mk3core-flickr": {
"command": "npx",
"args": [
"-y",
"flickr-mcp"
]
}
}
}
启动命令npx -y flickr-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmflickr-mcp0.2.1

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

flickr-mcp

npm MCP Registry Sponsor

一款 MCP 服务,让 AI 助手能够经身份验证后访问你的 Flickr 照片库。为照片添加标签、撰写描述、设置标题、管理群组成员资格,还能运行完整的自动化处理工作流——所有操作均由 AI 驱动,并应用于你的照片。

适用于所有兼容 MCP 的 AI 客户端:Claude、Cursor、Windsurf 等。


功能介绍

连接后,你可以向 AI 助手提出类似这样的要求:

  • “处理我所有尚未添加标签的照片”——扫描整个照片库,一次性为所有照片添加标签和描述
  • “为我日本相册中的所有照片添加标签”
  • “为这张照片撰写描述”(提供 Flickr URL 或照片 ID)
  • “找到我的汽车照片,并将它们添加到相关的 Flickr 群组”
  • “查看我最近上传的照片,并为每张照片添加相关标签”

AI 会通过内置的图片获取功能查看照片,根据实际图片内容和 EXIF 数据生成元数据,并根据工具的不同,在应用更改前预览,或完全自动运行。


要求

  • Node.js 18 或更高版本
  • Flickr Pro 账户——Flickr 要求注册 API 应用时必须拥有 Pro 账户
  • 兼容 MCP 的 AI 客户端

设置

1. 注册 Flickr API 密钥

注意: Flickr 要求拥有 Pro 账户才能注册 API 应用(约 $8/月或 $72/年)。如果你经常使用 Flickr,且希望借助 AI 添加标签,很可能已经拥有 Pro 账户。

前往 flickr.com/services/apps/create/noncommercial,填写简短的表单——应用名称不限,选择“个人用途”。整个过程大约需要两分钟。从下一页复制 API 密钥和 API 密钥密码。

2. 运行设置命令
npx flickr-mcp setup

浏览器窗口会打开并显示设置向导。粘贴 API 密钥和密钥密码,然后按照提示授权访问你的 Flickr 账户。凭据会保存到 ~/.config/flickr-mcp/credentials.json,不会离开你的设备。

3. 将 flickr-mcp 添加到 AI 客户端

最简单的方法是将以下提示词直接粘贴到 AI 助手中。它包含所需的一切——配置项、设置提醒,以及完整文档的链接:

将以下 MCP 服务添加到我的配置中:

  • 名称: flickr
  • 命令: npx
  • 参数: ["flickr-mcp"]

完整配置项如下:

"flickr": {
  "command": "npx",
  "args": ["flickr-mcp"]
}

将其添加到我的 MCP 配置文件中的 mcpServers 区块,然后告诉我保存位置,并提醒我重启客户端。

完整文档和源代码:https://github.com/MK3Core/flickr-mcp

无论你使用哪个客户端,助手都知道其配置文件的位置,并会正确添加配置项。助手确认后,请重启客户端。

想手动操作?

Claude Code — 添加到 ~/.claude/settings.json(全局)或项目中的 .claude/settings.json:

{
  "mcpServers": {
    "flickr": {
      "command": "npx",
      "args": ["flickr-mcp"]
    }
  }
}

Claude Desktop

  • Mac:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "flickr": {
      "command": "npx",
      "args": ["flickr-mcp"]
    }
  }
}

Cursor / Windsurf — 查看客户端的 MCP 设置面板,或让助手帮你查找并编辑配置文件。


完整的自动化工作流

处理整个照片库的最快方法是调用两个工具:

  1. flickr_get_unprocessed_photos — 扫描照片库中的每张照片,并返回缺少标签、描述或有效标题的照片列表。系统会自动标记原始相机文件名(如 DSC_0042)或 Lightroom 导出后缀(如 IMG_1234-Edit)。

  2. flickr_process_photo — 通过一次原子调用,为单张照片设置标题、描述、标签并分配群组。AI 会以视觉方式获取图像,读取 EXIF 中的相机、镜头和位置信息,按照 Flickr 最佳实践生成最多约 20 个精准标签,撰写简洁的描述,并将照片添加到相关群组——如有需要,还会自动加入这些群组。

只需说:“处理我所有尚未添加标签的照片”,AI 就会分页遍历未处理照片列表,并逐一处理。


可用工具

服务器运行后,你的 AI 助手即可调用以下工具。你无需直接与它们交互,只要用日常语言描述需求即可。

浏览照片库
工具描述
flickr_list_photos分页列出你的照片流
flickr_get_photo获取完整的照片详情;也可选择包含图像本身,以进行视觉分析
flickr_get_exif相机元数据:品牌、型号、镜头、GPS、快门速度、ISO
flickr_search_my_photos按关键词或标签搜索自己的照片
flickr_get_albums列出相册
flickr_get_album_photos列出相册中的照片
编辑元数据
工具描述
flickr_add_tags为照片添加标签(默认会在应用前预览)
flickr_remove_tag移除照片的标签
flickr_set_metadata设置照片的标题和/或描述(默认会在应用前预览)
群组管理
工具描述
flickr_search_groups按关键词搜索 Flickr 群组——返回群组名称、成员数和照片池大小
flickr_join_group以编程方式加入 Flickr 群组(自动遵守群组规则)
flickr_add_to_group将照片添加到群组照片池(默认会在应用前预览)
自动化工作流
工具描述
flickr_get_unprocessed_photos扫描整个照片库,并返回缺少标签、描述或有效标题的照片
flickr_process_photo通过一次调用设置标题、描述、标签并分配群组,同时自动加入群组

单独的写入工具(flickr_add_tags、flickr_set_metadata、flickr_add_to_group)会在应用更改前显示试运行预览。flickr_process_photo 默认不进行预览——它专为批量自动化而设计。


标签策略

生成标签时,AI 遵循 Flickr 特有的最佳实践:

  • 每张照片以约 20 个标签为目标——既能触达合适的受众,又不会削弱覆盖范围
  • 搭配宽泛和具体的主题:“dog”和“golden retriever”都加,而不是只选其中一个
  • 位置层级:尽可能添加大洲、国家、地区、城市和场所
  • 从 EXIF 提取设备标签:相机机身和焦距(例如“sony a7 iv”“85mm”)
  • 绝不添加:无意义的标签(“photo”“image”“picture”)、无关的热门标签或垃圾标签——Flickr 的垃圾信息政策可能会让照片无法出现在搜索结果中

隐私与范围

此服务只能访问你自己的照片。它无法读取、搜索或修改其他用户的内容。它请求的写入权限仅限于你的账户。

你的 API 凭据存储在本地的 ~/.config/flickr-mcp/credentials.json 中,绝不会发送到 Flickr 自有 API 以外的任何地方。


速率限制

此服务使用令牌桶机制,将请求速率控制在每小时 3,000 次(Flickr 的上限为 3,600 次)。最多允许突发发送 10 次请求。获取图像也会计入额度。正常使用时不会触及此限制。


从源代码运行

git clone https://github.com/MK3Core/flickr-mcp
cd flickr-mcp
npm install
npm run build
node dist/index.js setup

然后将 MCP 客户端指向 node /path/to/flickr-mcp/dist/index.js,而不是 npx flickr-mcp。


支持

flickr-mcp 免费且开源。如果它为你节省了时间,欢迎通过 GitHub 赞助;这有助于让我们投入更多时间开发此类项目。

赞助


参与贡献

欢迎提交问题和拉取请求。代码库刻意保持精简:六个文件中约有 700 行 TypeScript。

src/
  index.ts          Entry point
  setup.ts          OAuth setup flow
  auth.ts           OAuth 1.0a implementation + credential storage
  rate-limiter.ts   Token bucket (3,000 req/hour)
  flickr-client.ts  Flickr API wrapper
  tools.ts          All tool definitions and handlers

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。