jazz_agent
Jazz Agent
Инструмент для одного пользователя, который читает расписания нью-йоркских джаз-клубов, определяет, кто выступает, и создаёт плейлист Spotify для каждого клуба на каждую неделю, чтобы музыка приходила сама, без запроса. Он ведёт постоянный журнал всего, что когда-либо находил, и предоставляет этот журнал Claude через MCP, чтобы вы могли спрашивать о нём и записывать, что вам понравилось во время прослушивания.
Две половины, намеренно раздельные:
Ежедневный пакетный конвейер (cron), который собирает, сопоставляет и согласует плейлисты.
Постоянно работающий MCP-сервер, который отвечает на вопросы о журнале и записывает отзывы.
Почему он устроен именно так
Три вывода определили дизайн, и все три противоречат очевидному подходу:
Spotify удалил конечные точки, к которым вы бы обратились. Изменения API в ноябре 2024 года убрали
related-artists,recommendations,audio-featuresиaudio-analysisдля любого приложения, зарегистрированного после этого. Нет ни акустических данных, ни данных о схожести исполнителей. Связи между исполнителями берутся из MusicBrainz и из самих списков клубов; «стиль» определяется тегами жанров и вашими собственными заметками.CSS-селекторы — неправильный инструмент для шести неподдерживаемых веб-сайтов. Извлечение выполняется LLM по тексту страницы, поэтому добавление клуба — это строка в таблице, а редизайн площадки ничего не ломает.
Еженедельные плейлисты, а не ежедневные. Один плейлист на клуб на неделю бронирования (вторник–понедельник) устраняет целый класс проблем: резиденции, длящиеся несколько ночей, один и тот же артист, играющий два сета, и плейлисты, истекающие в середине периода. Ежедневный запуск становится идемпотентным циклом сходимости, а не событием создания.
Related MCP server: Spotify MCP Server
Документация
Документ | Назначение |
Техническая спецификация. Каждый issue ссылается на её раздел. | |
ADR. Почему был сделан каждый выбор, что было отклонено и какие есть доказательства. | |
Схема, индексы и запросы, которые делают граф вкусов полезным. | |
Вставьте в Claude Project. Контракт времени выполнения для чат-бота. | |
Превращение свежевыделенного облачного VPS в машину, готовую к запуску этого проекта. Начните здесь. | |
Регистрация учётных данных Spotify и Google OAuth, а также запуск сервера. | |
Полное справочное руководство по развёртыванию, резервные копии и сценарий действий при сбоях — как пересобрать хост с нуля. | |
Соглашения и инварианты для агента, реализующего этот проект. | |
Оригинальный PRD, дословно. Местами заменён; см. ADR. |
PRD хранится без изменений как запись первоначального замысла. Там, где архитектура от него отступает, ADR говорит об этом явно и называет раздел PRD, который он заменяет.
Статус
Все задачи вехи v1 реализованы и протестированы. Осталось два шага, прежде чем это действительно заработает в продакшене, и оба требуют участия человека: регистрация настоящего клиента Google OAuth и настоящего приложения Spotify Developer (см. docs/RUNBOOK.md, разделы 4–5), а также развёртывание на реальном VPS. Сборка отслеживалась как задачи в рамках вехи v1, каждая с критериями приёмки и явными ссылками Blocked by — см. закрытые задачи, чтобы узнать, что было построено и почему.
Стек
Python 3.12 с uv, Postgres 17 (tsvector, pg_trgm, pgvector), httpx с Playwright как опция для каждого клуба, Anthropic Claude Haiku для извлечения и арбитража, FastMCP с делегированным Google OAuth, Docker Compose на небольшом Linux VPS.
Лицензия
MIT.
This server cannot be deployed
Maintenance
Related MCP Connectors
- RoomtoneOAuthio.roomtone
Ask Claude about your meetings: summaries, action items and transcripts from Roomtone
Persistent context for Claude. Your AI always knows your projects and next actions across sessions.
- TaprootOAuthcom.taproothq
Persistent memory layer for AI tools. Save and recall notes across Claude and other MCP clients.
Your professional network in Claude — search contacts, log notes, and send warm intros.
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceConnects Claude to Spotify for music discovery, playlist creation, and collection analysis through natural language. Enables searching songs, analyzing music diversity, creating playlists, and getting recommendations using Spotify's API.-
- FlicenseAqualityDmaintenanceIntegrates Spotify with Claude to enable voice-controlled music playback, playlist management, and personalized recommendations through conversational AI. It provides comprehensive tools for searching tracks, managing liked songs, and analyzing listening habits.151-
- AlicenseNot gradedqualityDmaintenanceEnables querying local meeting notes, calendar events, email metadata, and daily digests from Imprint's database via natural language through Claude Desktop and other MCP clients.12 npmMIT
- AlicenseNot gradedqualityDmaintenanceConnects your Plaud voice recorder to Claude, giving access to recordings, transcripts, and AI summaries so you can query your notes via natural language.16MIT