MemeStack MCP について
MemeStack MCPは、ミーム、チャート、インフォグラフィックなどを探す人やエージェント向けのホスト型ビジュアル検索サーバーです。セマンティック検索、OCR検索、類似画像検索に対応し、結果にはクレジット情報も含まれます。
主な機能
- 01セマンティック検索とキーワード検索
- 02OCRによる画像内テキスト検索
- 03チャートと類似画像の検索
- 04タグやカテゴリからの閲覧
- 05引用情報と再利用条件の提示
活用シーン
- 01トピックを説明する画像を探す
- 02特定の文字を含むスクリーンショットを見つける
- 03チャートを探して出典を引用する
MCP 対応
ホスト型MCPサーバーは、画像検索ツール、プロンプト、リソースをMCPクライアントに公開します。応答にはそのまま使える引用形式が含まれます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.memestack.ai/mcpclaude mcp add --transport http memestack https://mcp.memestack.ai/mcp{"mcpServers":{"memestack":{"type":"http","url":"https://mcp.memestack.ai/mcp"}}}Cursor で開く{"servers":{"memestack":{"type":"http","url":"https://mcp.memestack.ai/mcp"}}}VS Code で開く{"mcpServers":{"memestack":{"type":"http","url":"https://mcp.memestack.ai/mcp"}}}{"mcpServers":{"memestack":{"serverUrl":"https://mcp.memestack.ai/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
20| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| query | string | はい | 検索クエリ — セマンティック AI とキーワードのマッチングを自動的に組み合わせます。エイリアス:`q`(REST API のパラメーター名と一致)。 |
| q | string | いいえ | `query` のエイリアスです。REST API の使い慣れた形式(?q=...)を MCP ツールでも使用できるようにしています。両方が設定されている場合は、`query` が優先されます。 |
| tag | string | いいえ | 単一のタグ slug で結果を絞り込みます(後方互換性)。 |
| tags | string | いいえ | 複数のタグ slug で結果を絞り込みます(カンマ区切り、AND ロジック。例:"bitcoin,meme")。 |
| limit | number | いいえ | 1 ページあたりの結果数(1-50、デフォルト 10) |
| offset | number | いいえ | ページネーションのオフセット(デフォルトは 0) |
| sort | enum | いいえ | 並べ替え順(デフォルト:関連性)newest | popular | oldest |
詳細
MemeStack MCP
MemeStack のホスト型 Model Context Protocol サーバーです。MemeStack は、ミーム、インフォグラフィック、チャート、スクリーンショット、図を対象としたビジュアル検索エンジンです。画像の意味、画像内に印字された OCR テキスト、またはビジュアルの類似性から画像を検索できます。AI によるキャプション付けと Lightning によるランキングを備えています。公開されており、認証も登録も不要です。読み取りは日次クォータ内で無料、生成は呼び出しごとの有料です。
https://mcp.memestack.ai/mcp
すべてのリスト応答には、クレジット表記付きですぐに貼り付けられる引用ブロック(Markdown/HTML/プレーンテキスト)が含まれます。画像データは https://api.memestack.ai/v1/images/{id}/{thumbnail|canonical|social-card} から配信され、直接埋め込めます。
インストール
これはホスト型サーバーです。クローン、ビルド、ローカル環境は不要です。MCP 対応クライアントからエンドポイントに接続してください。以下の各スニペットは、2026-10-11 にクライアントの公式ドキュメントと照合済みです。各クライアントのドキュメントへのリンクを含む最新リストは、memestack.ai/mcp-server にあります。
Claude Code
claude mcp add --transport http memestack https://mcp.memestack.ai/mcp
または、プロジェクトの .mcp.json に記述します。リモートサーバーには "type": "http" が必要です。
{
"mcpServers": {
"memestack": {
"type": "http",
"url": "https://mcp.memestack.ai/mcp"
}
}
}
またはプラグインとして(スキルを追加)
このリポジトリは Claude Code プラグインマーケットプレイスでもあります。プラグインをインストールすると、同じサーバーに加えて、
どのリクエストにどのツールを使うか、引用を保持することを Claude に伝える
find-image スキルがインストールされます。
/plugin marketplace add Ed-Relight/memestack-mcp
/plugin install memestack@memestack
シェルからは、claude plugin marketplace add Ed-Relight/memestack-mcp を実行してから、
claude plugin install memestack@memestack を実行します。claude.ai コネクターも使用している場合、Claude Code
にはツールが二重に表示されます(サーバーごとに 1 つ)。どちらを使っても構いません。
Claude(claude.ai および Claude Desktop)
Connectors Directory から MemeStack を追加するか、カスタムコネクターとして追加します。Customize → Connectors → + Add → Add custom connector を選び、ディレクトリエンドポイント https://mcp.memestack.ai/mcp/directory を指定します(下記の チャットアプリ を参照)。すべてのプランで利用できます。Free アカウントではカスタムコネクターを 1 つ追加できます。
Claude Desktop の claude_desktop_config.json で使用できるのはローカルサーバーのみです。そこで完全な /mcp エンドポイントを使用するには、mcp-remote でブリッジします。
{
"mcpServers": {
"memestack": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.memestack.ai/mcp"]
}
}
}
Cursor
ワンクリックで Cursor のインストール画面が開きます(Cursor のインストールリンク)。このリポジトリは Cursor プラグイン(.cursor-plugin/plugin.json + mcp.json、find-image スキル付き)でもあります。または、~/.cursor/mcp.json(もしくはプロジェクトごとの .cursor/mcp.json)を編集してください。
{
"mcpServers": {
"memestack": { "url": "https://mcp.memestack.ai/mcp" }
}
}
VS Code(GitHub Copilot)
ワンクリックで追加するには、memestack.ai/mcp-server の Add to VS Code リンクを使用します(GitHub では表示されない vscode:mcp/install リンクです)。または、ワークスペースのルートに .mcp.json を置くか、すべてのワークスペースで使えるように ~/.copilot/mcp-config.json を使用します。旧形式の .vscode/mcp.json に "servers" を記述しても引き続き読み込まれますが、VS Code では現在、非推奨として扱われています。
{
"mcpServers": {
"memestack": {
"type": "http",
"url": "https://mcp.memestack.ai/mcp"
}
}
}
Devin Desktop(旧 Windsurf)
devin mcp add memestack https://mcp.memestack.ai/mcp
Gemini CLI
gemini extensions install https://github.com/Ed-Relight/memestack-mcp
拡張機能マニフェスト(gemini-extension.json)は、Streamable HTTP(httpUrl)経由でホスト型エンドポイントに接続するよう Gemini CLI を設定します。拡張機能を使わない場合:
gemini mcp add --transport http memestack https://mcp.memestack.ai/mcp
これにより、プロジェクト内に .gemini/settings.json が作成されます。~/.gemini/settings.json に設定するには --scope user を追加してください。
OpenAI Codex CLI
codex mcp add memestack --url https://mcp.memestack.ai/mcp
または、~/.codex/config.toml に記述します(ChatGPT デスクトップアプリおよび Codex IDE 拡張機能と共有されます)。
[mcp_servers.memestack]
url = "https://mcp.memestack.ai/mcp"
Cline
Cline の MCP 設定(cline_mcp_settings.json)に、camelCase の streamableHttp タイプでサーバーを追加します。これを指定しないと、Cline は SSE にフォールバックし、エンドポイントは 405 を返します。
{
"mcpServers": {
"memestack": {
"type": "streamableHttp",
"url": "https://mcp.memestack.ai/mcp",
"disabled": false,
"autoApprove": []
}
}
}
Remote Servers タブでも同じ設定ができ(Transport は「Streamable HTTP」)、Cline CLI でも同様に設定できます。
cline mcp add memestack https://mcp.memestack.ai/mcp --transport http --yes
Zed
Zed の設定(zed: open settings file)、または「Settings」→「AI」→「MCP Servers」→「Add Remote Server」で設定します。
{
"context_servers": {
"memestack": { "url": "https://mcp.memestack.ai/mcp" }
}
}
Goose
goose configure →「Add Extension」→「Remote Extension(Streamable HTTP)」の順に選択するか、~/.config/goose/config.yaml(Windows の場合:%APPDATA%\Block\goose\config\config.yaml)で設定します。
extensions:
memestack:
type: streamable_http
name: memestack
enabled: true
uri: "https://mcp.memestack.ai/mcp"
headers: {}
env_keys: []
envs: {}
timeout: 300
LM Studio
LM Studio 0.3.17 以降:Program タブ →「Install」→ mcp.json を編集します。
{
"mcpServers": {
"memestack": { "url": "https://mcp.memestack.ai/mcp" }
}
}
Continue
.continue/mcpServers/memestack.yaml を作成します(MCP ツールはエージェントモードで動作します)。
name: MemeStack
version: 0.0.1
schema: v1
mcpServers:
- name: memestack
type: streamable-http
url: https://mcp.memestack.ai/mcp
リモート MCP に対応していないクライアント
mcp-remote でエンドポイントをブリッジします。
{
"mcpServers": {
"memestack": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.memestack.ai/mcp"]
}
}
}
生の JSON-RPC(任意の HTTP クライアント)
curl -X POST https://mcp.memestack.ai/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
initialize、tools/call、prompts/list、prompts/get、resources/list、resources/read で同じエンドポイントを使用します。プロトコルのバージョン:2025-06-18。
チャットアプリ(ディレクトリエンドポイント)
チャットアプリには、コネクターディレクトリ向けに構築された2つ目のエンドポイントを用意しています。
https://mcp.memestack.ai/mcp/directory
18 個の読み取りツール(get_leaderboard を除くすべての読み取りツール。get_leaderboard も名前を指定すれば引き続き応答します)が一覧表示されます。有料ツールも、支払いの案内も、1日あたりのクォータもありません。また、結果に物議を醸すものとして分類された画像が含まれることはありません(include_controversial 引数は存在せず、そのような画像を ID で検索しても「見つかりません」と応答します)。リソースと引用は /mcp と同じです。ここでの prompts/list には5つのプロンプトが表示されます。top_zapped だけは表示されません(そのプロンプトで使うツールは一覧に表示されませんが、名前を指定すれば prompts/get は引き続き応答します)。URL を指定してカスタムコネクターとして追加してください(Streamable HTTP、認証なし)。ツール呼び出しには1分あたりのレート制限があります。上限を超えると「このクライアントからのリクエストが多すぎます」と応答するため、1分待ってから再試行してください。ChatGPT(およびその他の MCP Apps ホスト)では、画像の結果が画像カードのカルーセルとして表示されます。
各アプリでの設定場所(2026-10-11 確認済み):
- Claude — 上記を参照してください。
- ChatGPT(ウェブ)—「Plugins」→「+」→「Add custom MCP server」→「Server URL」→「Create as a plugin」。Business と Enterprise/Edu が対象です。Pro では開発者モードで読み取り/取得の権限を使って接続できます。
- Mistral Le Chat —「Connectors」→「+ Add Connector」→「Custom MCP Connector」。Free、Pro、Student では管理者(アカウント所有者)が対象です。
- Perplexity —「Account settings」→「Connectors」→「+ Custom connector」→「Remote」、転送方式は Streamable HTTP。Pro、Max、Enterprise が対象です。
- Microsoft Copilot Studio — エージェントの「Tools」ページ →「Add a tool」→「New tool」→「Model Context Protocol」、認証は「None」。生成的オーケストレーションが必要です(Copilot Studio for Teams プランでは利用できません)。
公開されている機能
- 21 個のツール。そのうち
tools/listでは、デフォルトで主要なツールセットが表示されます。search_images、search_text_in_image、search_charts、find_meme_for_text、reverse_image_search、find_similar、get_image、cite_imageと、有料ツール2つです。どのツールも名前を指定すれば応答します。合計で、無料の読み取りツールが19個(うち8個には1日のクォータがあり、上限を超えると1回あたり1セント未満の料金が発生します。料金と支払いを参照)、常時有料のツールが2個(generate_meme、submit_image)あります。全カタログ:docs/tools.md - 6 個のプロンプト — あらかじめ用意されたワークフロー(トピック検索、トップの zapped 画像、ミームの引用、雰囲気に合うミームの検索、ミームの進化の調査、トレンド)。
prompts/listに表示されるのは、使用するすべてのツールが一覧に表示されている場合だけです。そのため、デフォルトでは3つ(search_memes、cite_this_meme、find_a_meme_for_vibe)が表示されます。残りの3つも名前を指定すればprompts/getに応答します:docs/prompts.md - 4 個のリソース — 帰属表示ガイド、タグの分類体系、最近のアップロードのフィード、および
memestack://top/{period}テンプレート(zapped 画像の上位一覧):docs/resources.md
ツール一覧
検索と発見:
search_images— セマンティック検索とキーワード検索を統合search_charts— 保存されたソースメタデータ(データセット、引用、単位、地域、表示期間)を持つグラフ/インフォグラフィックを検索します。すべてのグラフが対象ではありません。グラフの対象範囲はsearch_imagesのほうが広くなっています。publisher_only: true(ここおよびsearch_imagesで指定)を使うと、Our World in Data、USDA ERS、Eurostat、EEA から取り込まれたグラフだけに絞り込めますsearch_text_in_image— OCR 専用の検索(特定の引用文やテキストを含むスクリーンショットを検索)find_meme_for_text— 文章やソーシャル投稿向けの、雰囲気からミームを探すマッチャー(ミームとしてタグ付けされた画像のみが対象のため、結果が空になる場合があります。あらゆる種類の画像はsearch_imagesで検索できます)reverse_image_search— phash ベースの「この画像を探す」検索(HTTPS またはdata:URL を受け付けます)find_similar/find_related— 既知の画像に似た画像を検索(視覚的な phash/セマンティック埋め込み)browse_images、browse_by_tag、browse_by_category、list_categoriespopular_tags、tag_autocomplete、get_tag_profileget_image、get_user_profile、get_leaderboard、get_meme_variants
誠実な検索結果(段階的に提供中 — サーバーの誠実検索スイッチがオンの間だけ、サーバーが結果にラベルを付けます):結果に match が含まれる場合、search_images、search_charts、search_text_in_image、find_meme_for_text は各結果に "strong"(MemeStack がクエリとの一致を裏付ける証拠を持っています)または "closest"(手元にある中で最も近い結果です)のラベルを付けます。強い一致の結果が先に表示されます。最も近い結果には上限が設けられ、テキスト表示では [closest match] と表示されます。強い一致がない場合、最初のページの冒頭に note が表示されます。また、has_more は次のページがあるかどうかを示します(total は強い一致のみを数えます)。ラベルがない場合、match、note、has_more はありません。ページの件数が limit より少なければ、そのページが最後です。ラベルがある場合、match_quality が検索結果全体を要約し、strong(強い一致あり)、closest_only(すべて最も近い候補にすぎません。回答として提示しないでください)、none のいずれかを示します。
再利用権:すべての画像に rights が付与され、source(publisher/creator/community)、ライセンスとその URL、クレジット表記(attribution)、および commercial_use(yes/no/unknown)が記載されています。unknown は推測を意味しません。Our World in Data のグラフでは、独自の利用条件に基づくサードパーティのデータが描画される場合があり、MemeStack はコミュニティからのアップロード画像にライセンスを付与していません。citation は画像のクレジット表記方法を示し、rights は再利用できるかどうかを示します。cite_image は両方を返します。
デフォルトで安全:すべての検索・閲覧ツールは、MemeStack が問題のあるコンテンツと分類する画像(党派的な攻撃ミーム、差別的表現、ブラックユーモア — ライブラリには含まれますが、デフォルトの検索結果には表示されません)を除外します。これらを含めるには、search_images、search_charts、search_text_in_image、find_meme_for_text、reverse_image_search、find_similar、find_related、browse_images、browse_by_tag に include_controversial: true を指定してください。このような結果はテキスト表示で [controversial] と表示され、構造化ペイロードでは controversial: true が付与されます。ID 指定のツール(get_image、get_meme_variants、cite_image)は常に応答し、フラグを含みます。REST で同等の指定をするには、閲覧エンドポイントで ?content=all を使います(デフォルトは content=safe、それ以外の値は 400 INVALID_CONTENT になります)。
クレジット表記:
cite_image— 1 つまたは複数の画像 ID に対する、標準形式の Markdown/HTML/プレーンテキストのクレジット表記ブロック
有料(エージェント向け決済手段 — 呼び出しごとの支払い、アカウント不要):
generate_meme— Grok Imagine を使った AI 画像生成。標準品質は $0.08、高品質は $0.20 で、sats または USDC で支払います。ホストされ、自動タグ付けされ、CDN から配信される画像 URL を返します。submit_image— URL で画像をモデレーション審査キューに送信します。1 回の送信につき $0.10 で、sats または USDC で支払います。常に有料で、無料枠はありません。モデレーションで却下された場合(重複/nsfw/スパム/低品質)も返金されません。手数料はスパム対策の仕組みです。受け付けられた画像は、公開前に人間による審査を待ちます。
引用情報が組み込まれています
すべてのリスト応答には、全件分の3形式(Markdown/HTML/プレーンテキスト)の citations_combined ブロックに加え、個々の画像ごとに citation が含まれます。引用ルールはソースによって異なります。OWID の画像には Our World in Data の CC-BY 4.0 帰属表示が付き、Imgflip のテンプレートには Imgflip の帰属表示が付きます。直接アップロードされた画像には、アップロードしたユーザーの表示名と MemeStack のページ URL が付きます。また、Verified Creator によるアップロードでは、必須の帰属表示としてクリエイター名から本人のウェブサイトに直接リンクします。
ライセンスモデルとソースごとのルールについては、セッションごとに1回 memestack://attribution-guide をお読みください。 docs/resources.md をご覧ください。
料金と支払い
読み取りは寛大な1日あたりのクォータ内で無料です。生成は呼び出しごとに有料です。すべての料金は米ドルで固定され、現在の BTC/USD レートに基づく sats、または USDC で支払います。アカウントも API キーも不要です。支払い自体が認証となり、2つの方式で利用できます。
- x402(Base 上の USDC)— 標準の
x402/errorとx402/paymentの_metaフローを使用します。Cloudflare Agents SDK のwithX402Clientですぐに利用できます。注意:SDK のデフォルトのmaxPaymentValueは $0.10 です。submit_image($0.10)は上限内にちょうど収まります。generate_memeの品質モード($0.20)を使うには、上限を引き上げてください。 - L402(Lightning sats、現在の BTC/USD レートに基づく)— REST では、標準の
WWW-Authenticate: L402 macaroon="…", invoice="…"チャレンジを使用します。Authorization: L402 <macaroon>:<preimage>を付けて再試行してください。MCP では、実験的なl402/payment_meta拡張が同じ証明を渡します。
| ツールのグループ | 無料クォータ | クォータ超過時/料金 |
|---|---|---|
検索・閲覧ツール(search_images、search_charts、browse_*、find_meme_for_text、search_text_in_image) | IP あたり1日200回 | 1回あたり $0.005 |
reverse_image_search | IP あたり1日10回 | 1回あたり $0.02 |
generate_meme | 常に有料 | 標準 $0.08/品質重視 $0.20 |
submit_image | 常に有料 | 1回の送信あたり $0.10 |
その他すべて(get_image、cite_image、タグ、カテゴリ、リーダーボード、リソース、プロンプト) | 回数制限なし、無料 | — |
各料金の現在の sats 額は、GET api.memestack.ai/v1/prices で確認できます。有料の REST 同等エンドポイント(同じ料金、標準のデュアルヘッダー 402)は、POST api.memestack.ai/v1/agent/generate、POST api.memestack.ai/v1/agent/reverse-search、POST api.memestack.ai/v1/agent/submit です。OpenAPI 仕様 をご覧ください。
1回の支払いで得られる結果は最大1件です。呼び出しが失敗した場合や、生成途中でタイムアウトした場合は、同じ支払い証明を使って再試行すると処理を再開できます。1回の支払いに対して二重に請求されることはありません。
submit_image で送信した画像は、公開ギャラリーに直接追加されるのではなく、モデレーション審査キューに入ります。重複、不適切なコンテンツ、スパム、低品質などの理由でモデレーションに却下された場合、返金はありません。審査の試行自体が料金の対象となるためです。
検出サーフェス
MemeStack が MCP 以外で AI エージェントに自身を公開する方法:
| サーフェス | URL | 目的 |
|---|---|---|
llms.txt | memestack.ai/llms.txt | 人が読みやすい簡潔な概要とエンドポイントへのリンク |
ai-plugin.json | memestack.ai/.well-known/ai-plugin.json | ChatGPT プラグインマニフェスト |
| OpenAPI 3.1 | api.memestack.ai/openapi.json | MCP がラップする REST API |
| Apex MCP ミラー | memestack.ai/mcp | 同じ MCP エンドポイントを apex にも配置(単純なスキャナー向け) |
| MCP サーバーカード | mcp.memestack.ai/mcp/server-card | SEP-2127 サーバーカード(application/mcp-server-card+json)。memestack.ai/mcp/server-card および memestack.ai/.well-known/mcp/server-card.json にもミラー |
| ARD マニフェスト | memestack.ai/.well-known/ard.json(エイリアス /.well-known/ai-catalog.json) | サーバーカードを参照する Agentic Resource Discovery エントリー |
| API カタログ | memestack.ai/.well-known/api-catalog | RFC 9727 linkset:説明、ドキュメント、ヘルスエンドポイントを含む REST API と MCP サーバー |
| エージェントスキル | memestack.ai/.well-known/agent-skills/memestack/SKILL.md | agentskills.io スキル — MemeStack を使う場面、REST クイックスタート、ツールのコスト、引用ルールを説明。インデックスは /.well-known/agent-skills/index.json |
| x402 Bazaar | api.cdp.coinbase.com/platform/v2/x402/discovery/resources | Coinbase の x402 検出カタログ — 有料 REST エンドポイント(/v1/agent/*)と MCP ツール generate_meme/submit_image を、本文スキーマ、例、価格とともに掲載 |
| oEmbed | api.memestack.ai/v1/oembed | ギャラリー URL 向けのリッチタイプ oEmbed — MemeStack 経由であることを示すクレジットリンク付きの html 埋め込みスニペット |
| サイトマップ | memestack.ai/sitemap.xml | 画像、ページ、ユーザーの各サブサイトマップを含むサイトマップインデックス |
ソース
MCP サーバーは Cloudflare Workers 上で動作し、公開 MemeStack REST API(api.memestack.ai)へのプロキシとして機能します。サーバーのソースは、現時点では公開ミラーされていない、より大規模な MemeStack コードベースの一部です。このリポジトリでは、ディレクトリへの登録申請やインテグレーターが安定した閲覧可能なサーフェスにリンクできるよう、公開ドキュメント、インストール用スニペット、ツールカタログを提供しています。
プロトコルの動作をフォークして同様のギャラリーをセルフホストしたい場合は、REST API のドキュメントが公開されており、MCP 形式のラッパーに必要なバックエンドとして十分です。
このリポジトリの Dockerfile は薄いプロキシです。mcp-remote を使用して stdio MCP をホストされている HTTP エンドポイントに接続します。また、Dockerfile ベースのイントロスペクションを必要とする MCP ディレクトリ(Glama など)が、稼働中のツール/プロンプト/リソースを検証できるようにする目的のみで用意されています。エンドユーザーは、上記のインストールセクションに従って mcp.memestack.ai/mcp に直接接続してください。Docker イメージにはソースコードは含まれていません。
ライセンス
MIT — このリポジトリ内のスニペットとドキュメントに適用されます。ホストされている MemeStack サービスには、別途 memestack.ai/terms が適用されます。画像の権利は各所有者に帰属します。ライセンス条件が付与されるのは、オープンデータの公開者が提供するチャート(CC BY 4.0 または米国のパブリックドメイン)と Verified Creator の作品のみで、その条件は memestack.ai/license に記載されています。MemeStack はその他の画像に対するライセンスを付与しません。また、citation ブロックは帰属表示であり、再利用の許可ではありません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。