flickr-mcp について
flickr-mcpは、MCP対応AIクライアントから本人のFlickr写真ライブラリへ認証アクセスするサーバーです。画像とEXIFデータを使った写真の検索やメタデータ編集、バッチ処理に対応します。
主な機能
- 01写真の一覧表示・検索・詳細確認
- 02カメラと位置情報のEXIF取得
- 03タイトル・説明・タグの編集
- 04グループ検索と参加管理
- 05未処理写真のスキャンと処理
活用シーン
- 01最近のアップロード写真にメタデータを追加
- 02タイトルや説明がない写真を処理
- 03アルバム内の写真を検索してタグ付け
- 04該当する写真をFlickrグループに追加
MCP 対応
MCPクライアントに、Flickrの写真・アルバム・メタデータ・グループ操作ツールを提供します。書き込みツールは変更をプレビューでき、バッチ処理ツールは既定で直接更新します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
flickr-mcp
AI アシスタントに、Flickr の写真ライブラリへの認証済みアクセスを提供する MCP サーバーです。写真へのタグ付け、説明文の作成、タイトルの設定、グループメンバーシップの管理、自動処理ワークフローの実行まで、すべて AI が操作し、写真に適用します。
Claude、Cursor、Windsurf など、MCP 対応のあらゆる AI クライアントで動作します。
できること
接続すると、AI アシスタントに次のようなことを頼めます。
- 「タグのない写真をすべて処理して」 — ライブラリ全体をスキャンし、一度にすべての写真にタグを付けて説明文を作成します
- 「日本のアルバムにある写真すべてにタグを付けて」
- 「この写真の説明文を書いて」(Flickr の URL または写真 ID を指定)
- 「車の写真を探して、関連する Flickr グループに追加して」
- 「最近アップロードした写真を確認して、それぞれに関連するタグを追加して」
AI は内蔵の画像取得機能を使って写真を視覚的に確認し、実際の画像の内容と EXIF データからメタデータを生成します。ツールに応じて、変更を適用する前にプレビューするか、完全に自動で実行します。
必要条件
- Node.js 18 以降
- Flickr Pro アカウント — Flickr で API アプリケーションを登録するには Pro が必要です
- MCP 対応の AI クライアント
セットアップ
1. Flickr API キーを登録する
注: Flickr で API アプリケーションを登録するには、Pro アカウントが必要です(月額約 8 ドル、または年額約 72 ドル)。AI を活用したタグ付けが必要なほど Flickr を本格的に利用しているなら、すでにアカウントをお持ちかもしれません。
flickr.com/services/apps/create/noncommercial にアクセスして、簡単なフォームに入力します。アプリ名は何でもよく、「personal use」を選択してください。所要時間は約 2 分です。次のページに表示される API key と API secret をコピーします。
2. セットアップコマンドを実行する
npx flickr-mcp setup
セットアップウィザードがブラウザーで開きます。API キーとシークレットを貼り付け、プロンプトに従って Flickr アカウントへのアクセスを許可します。認証情報は ~/.config/flickr-mcp/credentials.json に保存され、マシンの外部に送信されることはありません。
3. AI クライアントに flickr-mcp を追加する
最も簡単な方法は、以下のプロンプトを 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 設定パネルを確認するか、アシスタントに設定ファイルを探して編集するよう依頼してください。
完全自動ワークフロー
ライブラリ全体を処理する最も手早い方法は、次の 2 つのツールを呼び出すことです。
-
flickr_get_unprocessed_photos— ライブラリ内のすべての写真をスキャンし、タグ、説明、または実際のタイトルが欠けている写真のリストを返します。DSC_0042のようなカメラの未加工ファイル名や、IMG_1234-Editのような Lightroom の書き出し時に付いた接尾辞は、自動的に検出されます。 -
flickr_process_photo— タイトル、説明、タグ、グループへの追加を、1 回のアトミックな呼び出しで 1 枚の写真に適用します。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 | タイトル + 説明 + タグ + グループへの追加を、自動参加機能付きで 1 回の呼び出しで適用します |
個別の書き込みツール(flickr_add_tags、flickr_set_metadata、flickr_add_to_group)は、適用前にドライランのプレビューを表示します。flickr_process_photo はデフォルトでプレビューなしで実行され、バッチ自動化向けに設計されています。
タグ付けの方針
AI はタグを生成する際、Flickr 固有のベストプラクティスに従います。
- 写真ごとに約 20 個のタグを目標にします。適切なユーザー層にリーチしつつ、範囲を広げすぎないためです
- 広い主題と具体的な主題を組み合わせます。「犬」と「ゴールデンレトリバー」の両方を付け、どちらか一方だけにはしません
- 場所の階層:利用可能な場合は、大陸、国、地域、都市、施設を付けます
- EXIF から機材タグを付けます:カメラ本体と焦点距離(例:「sony a7 iv」、「85mm」)
- 付けないもの:ノイズとなるタグ(「photo」「image」「picture」)、無関係な人気タグ、タグスパム。Flickr のスパムポリシーにより、写真が検索結果に表示されなくなる場合があります
プライバシーとアクセス範囲
このサーバーがアクセスできるのは自分の写真のみです。他のユーザーのコンテンツを読み取ったり、検索したり、変更したりする機能はありません。要求する書き込みアクセス権は、自分のアカウントに限られます。
API 認証情報はローカルの ~/.config/flickr-mcp/credentials.json に保存され、Flickr 独自の API 以外に送信されることはありません。
レート制限
このサーバーはトークンバケットを使用し、1 時間あたり 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
その後、npx flickr-mcp の代わりに node /path/to/flickr-mcp/dist/index.js を使用するよう、MCP クライアントを設定してください。
サポート
flickr-mcp は無料のオープンソースです。時間の節約に役立った場合は、GitHub でのスポンサーシップをご検討いただけると幸いです。こうしたプロジェクトにさらに時間を割く助けになります。
コントリビューション
イシューやプルリクエストを歓迎します。コードベースは意図的に小規模に保たれており、6 ファイルにわたる TypeScript のコードは約 700 行です。
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
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。