MediaSage is an MCP server that tracks movies, books, and TV shows while generating personalized cross-media recommendations directly inside LLM clients. The server interfaces with external APIs—including OMDB for film data, Google Books for literature, and TMDB for television shows—to enrich personal media collections with directors, cast lists, ratings, runtime, and plot details. It stores user records, ratings, liked aspects, and personal notes locally using an SQLite database managed by Drizzle ORM. Built with Bun, MediaSage serves individuals who consume diverse entertainment and want an organized library linked to their AI assistants. Users can maintain watchlists and reading lists, mark titles as finished, filter media by genre or rating, and query preferences based on specific moods or lengths. By communicating over local stdio or remote HTTP with Server-Sent Events, it enables LLMs like Claude to analyze personal taste patterns and provide context-aware suggestions across disparate media types.
Category: CRM, ERP & E-commerce
Tags: books, media-tracking, movies, recommendations, tv-shows
bash git clone https://github.com/imjoshnewton/mediasage cd mediasage bun install 2. Copy the sample environment file and configure your API keys: bash cp .env.example .env Add your OMDB_API_KEY, TMDB_API_KEY, and optionally GOOGLE_BOOKS_API_KEY. 3. If you have existing data, run migrations: bash bun run src/migrate-to-media.ts 4. Add MediaSage to your Claude Desktop configuration file: json { "mcpServers": { "mediasage": { "command": "bun", "args": ["run", "/path/to/mediasage/index.ts"] } } } 5. Restart Claude Desktop or run bun run dev:http for remote SSE access.Part of MCP Servers
Clone the repository from GitHub, navigate to the directory, and run bun install. Set up your environment file with your OMDB, TMDB, and Google Books API keys. You can then register the server in your Claude Desktop configuration by providing the bun command pointing to the index.ts file, or run it as an HTTP service using bun run start:http.
MediaSage tracks movies, TV shows, and books within a local SQLite database. It auto-fetches rich metadata such as cast, runtime, and scores using external APIs. It allows users to record ratings, notes, and specific liked aspects, filter their library, analyze personal taste patterns, and request recommendations matching specific moods.
MediaSage works with any client supporting the Model Context Protocol. It provides a standard stdio interface for desktop clients like Claude Desktop. It also features a built-in HTTP server with Server-Sent Events support, allowing secure remote access via API key authentication.
Yes, MediaSage is open source and licensed under the MIT License. The complete source code, database schemas, and documentation are publicly available on GitHub.