konomi
Reads the user's anime and manga lists and scores via AniList username.
Reads recently played tracks and library songs via the Apple Music API.
Reads liked posts and follows using a Bluesky handle and app password.
Reads starred repositories and followed users by GitHub username.
Reads scrobble history and Loved Tracks using Last.fm username and API key.
Reads diary viewing records, ratings, and likes from Letterboxd RSS by username.
Reads favorites, bookmarks, and follows from a Mastodon server using its URL and an access token.
Reads favorites, reactions, and follows from a Misskey server using its URL and an access token.
Reads anime and manga lists and scores via MyAnimeList username and Client ID.
Imports Netflix viewing history from exported CSV files.
Reads the user's own pins via the Pinterest API v5.
Reads bookmarked illustrations and novels, and follows, using a pixiv app refresh token.
Reads played games and first/last played timestamps via NPSSO.
Imports Prime Video viewing history from an Amazon data-request CSV.
Reads stocked Qiita articles by username.
Reads upvoted and saved Reddit posts via the Reddit API.
Reads play history, liked tracks and playlists, and follows via SoundCloud api-v2.
Reads recently played tracks, saved tracks, followed artists, and playlists via the Spotify Web API.
Reads owned games and last played times using Steam ID and a Web API key.
Reads movie and TV watch history and ratings using Trakt username and Client ID.
Reads followed Twitch channels via the Helix API.
Reads favorite worlds and avatars, and friends, using a VRChat login cookie.
Reads liked videos, subscriptions, and playlists via YouTube Data API v3, plus watch history via InnerTube when a cookie is provided.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
konomi
見た動画・聴いた曲・高評価・マイリスト・フォローを、サービスをまたいで自分の Cloudflare に集め、AI が MCP で読めるようにする。 コーディング向けではなく、自分の好みを知ってほしいパーソナルエージェント向けの MCP サーバーである。
ホスティングしたサービスとしては出さない。各自が自分の Cloudflare アカウントにデプロイして、自分の記録だけを入れて使う。
公開先
masseater のインスタンス: https://konomi.masseater.dev(MCP は https://konomi.masseater.dev/mcp。持ち主だけがログインできる)
Related MCP server: cloud-memory-mcp
MCP のツール
search_signals: 見た・聴いた・高評価・保存・フォローの記録を、サービスをまたいで語・種類・期間で引くtaste_profile: 作品・投稿者やアーティスト・タグごとの好みの度合いを、長く続く好みと最近の好みに分けて返すfind_similar: 文か記録の対象から、意味の近いものを記録の中から探すread_taste_note・write_taste_note: AI が書いた好みのメモを読み書きする。メモの文にはそれぞれ根拠の記録が付くlist_connections: サービスごとの取り込みの状態を返す。ログインが切れていれば、AI が持ち主に伝えられる
好みの度合いの計算の仕方、記録の形、プロバイダーの境目は docs/design.md にある。
取り込めるサービス
ニコニコ動画は、視聴履歴・いいね・マイリスト・フォローを、Web 版が内部で使う nvapi で読む。 YouTube は、高評価・登録チャンネル・自分の再生リストを YouTube Data API v3 で読む。 視聴履歴は Data API に無いので、Cookie を入れたときだけ Web 版の InnerTube で読む。 Spotify は、最近聴いた曲・保存した曲・フォローしたアーティスト・自分のプレイリストを Spotify Web API で読む。 SoundCloud は、再生履歴・いいねした曲とプレイリスト・フォローを、 Web 版が内部で使う api-v2 で読む。 Apple Music は、最近聴いた曲とライブラリの曲を Apple Music API で読む。 Last.fm は、scrobble の記録と Loved Tracks を、ユーザー名と API キーで読む。 Steam は、持っているゲームと最後に遊んだ日時を、Steam ID と Web API キーで読む。 Bluesky は、いいねした投稿とフォローを、ハンドルとアプリパスワードで読む。 Annict は、視聴記録と見てる・見たのアニメを、個人用アクセストークンで読む。 Twitch は、フォローしたチャンネルを Helix API で読む。 GitHub は、スターを付けたリポジトリとフォローを、ユーザー名で読む。 AniList は、アニメとマンガのリストと点数を、ユーザー名で読む。 MyAnimeList は、アニメとマンガのリストと点数を、ユーザー名と Client ID で読む。 Trakt は、映画とドラマの視聴履歴と評価を、ユーザー名と Client ID で読む。 VocaDB は、評価した曲を、ユーザー名で読む。 Mastodon は、お気に入り・ブックマーク・フォローを、サーバーの URL とアクセストークンで読む。 Misskey は、お気に入り・リアクション・フォローを、サーバーの URL とアクセストークンで読む。 Reddit は、upvote した投稿と保存した投稿を Reddit API で読む。 Raindrop.io は、保存したブックマークを、テストトークンで読む。 Pinterest は、自分のピンを Pinterest API v5 で読む。 X は、いいねとブックマークを、twilog の公式 MCP から読む。 twilog に X のアカウントを登録しておき、何も入れずに保存してから「許可する」を押す。 はてなブックマークは、公開しているブックマークとコメントを、はてな ID で RSS から読む。 Letterboxd は、日記に付けた視聴記録・評価・いいねを、ユーザー名で RSS から読む。 Filmarks は、映画とドラマの Mark と Clip を、ユーザー ID で公開ページから読む。 PlayStation は、遊んだゲームと最初と最後に遊んだ日時を、NPSSO で読む。 ListenBrainz は、聴いた曲とハートを付けた曲を、ユーザー名で読む。 Open Library は、読んだ・読んでいる・読みたい本を、ユーザー名で読む。 Qiita は、ストックした記事を、ユーザー名で読む。 VRChat は、お気に入りのワールドとアバター、フレンドを、ログインの Cookie で読む。 pixiv は、ブックマークしたイラストと小説、フォローを、スマホアプリの refresh token で読む。 Xbox は、遊んだゲームと最後に遊んだ日時、フレンドを、OpenXBL の API キーで読む。 Netflix は、視聴履歴の CSV を画面から取り込む。 データの書き出しの ViewingActivity.csv と、視聴履歴のページから落とす NetflixViewingHistory.csv のどちらかを使う。 Kindle は、Amazon の「データのリクエスト」で届く読書の記録と持っている本の CSV を画面から取り込む。 Prime Video は、同じく「データのリクエスト」で届く視聴履歴の CSV を画面から取り込む。
API で読めないサービスは、サービスが出す書き出しのファイルを、サイトの各サービスの欄から取り込む。 取り込みは自動では繰り返さないので、新しい分は書き出し直して取り込み直す。同じ記録は二重にならない。
OAuth で許可するサービスは、Client ID と Client Secret を保存してから、画面の「許可する」から許可の画面へ進む。 アプリの設定には、画面に出るリダイレクト URI を登録しておく。
YouTube は、Google Cloud で YouTube Data API v3 を有効にし、種類が「ウェブ アプリケーション」の OAuth クライアントを作る。 同意画面の公開ステータスが「テスト」のままだと、許可は 7 日で切れる。「本番環境」にしておく
Spotify は、開発者のダッシュボードで Web API のアプリを作る。 開発モードのアプリは、持ち主が Premium でないと使えない
Apple Music は、Apple Developer Program の Certificates, Identifiers & Profiles で Media Services の鍵を作る。 鍵を保存したら
/connect/apple-musicの画面で Apple ID の許可を取る。許可はおよそ 6 か月で切れるTwitch は、開発者のコンソールで、 種類が Confidential のアプリを作る
Reddit は、アプリの設定で種類が web app のアプリを作る
Pinterest は、開発者のアプリでアプリを作る。 試用のアクセスのままだと、読めるのは自分のピンだけである
ニコニコ動画はメールアドレスとパスワードを預けると、ログインが切れるたびに konomi がログインし直す。
預けたくなければ user_session の Cookie を貼る。この場合は切れるたびに貼り直す。
SoundCloud の client_id は、soundcloud.com のスクリプトから konomi が自分で取り直す。
非公開 API を使う危険
ニコニコ動画・SoundCloud・PlayStation・VRChat・pixiv と YouTube の視聴履歴は、公式に読む手段が無い。 ブラウザのログイン Cookie を預かり、Web 版やアプリが内部で使う API を読む。 YouTube の視聴履歴は、Cookie を入れたときだけ読む。
これには 3 つの危険がある。
利用規約に反するとみなされ、アカウントを止められることがある。
API の形は予告なく変わり、変わると取り込みが「取り込みに失敗した」になって、直すまで止まる。
預けたパスワードや Cookie は、それだけでそのアカウントにログインできる鍵である。
konomi は CREDENTIAL_KEY から導いた鍵で暗号化して D1 に置くが、
Cloudflare アカウントを乗っ取られれば読まれる。
YouTube の Cookie は、ブラウザで使い続けると回されて切れることがある。 シークレットウィンドウでログインして Cookie を取り、そのウィンドウを閉じておくと長持ちする。
konomi は 1 時間に 1 回、新しい分だけを読む。初回だけ遡って読む。 再生リストとライブラリの全体は 1 日 1 回だけ読む。 アクセスの量を増やす変更はしないでほしい。
自分のアカウントに置く
前提は Vite+ の vp、
Workers Paid プランの Cloudflare アカウント、Cloudflare に置いたドメインである。
このリポジトリを fork し、
apps/web/app-name.tsのAPP_NAMEとapps/web/alchemy.run.tsのDEFAULT_DOMAINを自分のものに変える。 手元からデプロイするときは、KONOMI_DOMAINを渡しても変えられるvp installのあと、次のコマンドで Cloudflare の認証情報を入れる。vp exec --filter web alchemy profile edit --add Cloudflareそのあとapps/webでvp run deployを実行するデプロイしたサイトを開き、持ち主のアカウントを作る。アカウントを作れるのは最初の 1 人だけである
サービスのログイン情報を貼る。サイトの各サービスの欄に、どこから取るかが書いてある
MCP クライアント(claude.ai のコネクタなど)に
https://<ドメイン>/mcpを登録し、OAuth でログインする
開発
vp run verify が検査をまとめて流す。作業の決まりは CLAUDE.md と AGENTS.md にある。
masseater/typescript-template から作ったので、テンプレートの更新を取り込める。
This server cannot be deployed
Maintenance
Related MCP Connectors
The media memory layer for AI agents and their humans. Your AI client can search your collection, add and log what you've finished, update ratings and lists, and find patterns across everything you've read, watched, played, and listened to.
Persistent memory and vector search for AI agents. Hosted, OAuth-protected via Google sign-in.
Self-hostable shared brain for you and your AI agents — docs, flows, meetings, decisions, rationale
Media memory for AI agents: books, movies, music, shows, anime, podcasts, games, manga.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceSelf-hosted semantic memory layer for Claude and MCP-compatible AI clients. Store notes, search by meaning not keywords, and recall relevant context automatically across sessions. Runs free on Cloudflare Workers, D1, Vectorize, and Workers AI4 npm840MIT
- AlicenseNot gradedqualityDmaintenanceA minimal, tag-free personal memory system that syncs across all Claude interfaces (mobile, web, desktop, Claude Code). Built on Cloudflare's edge stack for zero-maintenance serverless operation.9 npmMIT
- AlicenseNot gradedqualityDmaintenanceA personal second brain on Cloudflare Workers that stores knowledge as a semantic graph with auto-linking, deduplication, and MCP tools for AI agents to save, search, and connect information.4 npm2MIT
- AlicenseNot gradedqualityCmaintenanceA minimal, tag-free personal memory system that syncs across all Claude interfaces. Built on Cloudflare's edge stack for zero-maintenance serverless operation.9 npmMIT