SetlistMCP
setlist-mcp
MCP-сервер, который позволяет Claude находить сетлисты с setlist.fm для концертов, на которых вы были.
Спросите «Я видел The Cure в Веллингтоне в августе 1992 года — что они играли?» — и Claude определит исполнителя, выполнит поиск на setlist.fm и прочитает песни по порядку.
Возможности
find_setlists— поиск по исполнителю, городу и дате. Возвращает компактный список подходящих концертов с их ID сетлистов, площадками и количеством песен.get_setlist— полное получение одного сетлиста: каждая песня по порядку, сгруппированная по сетам и бисам, с пометками о каверах и гостевых появлениях.Прощает ошибки в датах. Поиск охватывает год вокруг указанной даты и ранжирует результаты по близости, так что даже неточно запомненный день всё равно найдёт концерт.
Прощает ошибки в именах исполнителей. Имена разрешаются через MusicBrainz, поэтому небольшие опечатки обычно не мешают. Неоднозначные имена возвращаются с вариантами.
Аккуратно с лимитами запросов. Запросы сериализуются и распределяются по времени, ошибки 429 повторяются с экспоненциальной задержкой, а ответы кэшируются. Поиск занимает несколько секунд — это сделано намеренно.
Related MCP server: Last.fm MCP Server
Установка
git clone git@github.com:adrianparker/setlist-mcp.git
cd setlist-mcp
npm install
cp .env.example .envЗатем отредактируйте .env и укажите SETLISTFM_API_KEY. Запросите ключ в настройках API setlist.fm — это бесплатно и требует учётной записи setlist.fm.
Указание MUSICBRAINZ_CONTACT с вашим адресом электронной почты — хороший тон: MusicBrainz просит клиентов указывать контакт в User-Agent и жёстче ограничивает анонимные запросы.
Регистрация в Claude Code
claude mcp add setlist-mcp --scope user -- node /full/path/to/setlist-mcp/src/index.jsИли добавьте в .mcp.json проекта:
{
"mcpServers": {
"setlist-mcp": {
"command": "node",
"args": ["/full/path/to/setlist-mcp/src/index.js"]
}
}
}В конфигурацию клиента не попадают секреты — сервер читает .env из своей собственной директории, поэтому он работает независимо от того, из какой директории клиент его запускает.
Перезапустите Claude Code, затем проверьте подключение с помощью /mcp.
Использование
После регистрации просто спросите на обычном английском:
Я видел Villainy в Тауранге в марте 2026 года, какой был сетлист?
Claude вызовет find_setlists, выберет подходящий концерт, а затем вызовет get_setlist.
Чтобы проверить сервер напрямую без клиента:
npx @modelcontextprotocol/inspector node src/index.jsКонфигурация
Переменная | По умолчанию | Назначение |
| — | Обязательно. Ваш API-ключ setlist.fm. |
| URL репозитория | Контактные данные, отправляемые в MusicBrainz в User-Agent. |
|
| Какой |
|
| Минимальный интервал между запросами к setlist.fm. |
|
| Бюджет запросов на процесс для setlist.fm. |
|
| Минимальный интервал между запросами к MusicBrainz. |
|
| Тайм-аут на запрос. |
Ограничение частоты запросов
setlist.fm не публикует свои лимиты. По сообщениям сообщества, стандартный тариф составляет примерно 2 запроса в секунду и 1440 в день, поэтому значения по умолчанию здесь — один запрос каждые 1,1 секунды — комфортно укладываются в более медленный конец этого диапазона. Запросы сериализуются через очередь, поэтому одновременные вызовы инструментов ждут своей очереди, а не создают всплеск. Ошибка 429 замедляет всю очередь, учитывая Retry-After, если сервер его отправляет.
Дневной лимит — это не реальная дневная квота. Он хранится в памяти, поэтому сбрасывается при каждом перезапуске сервера MCP-клиентом. Воспринимайте его как защиту от зацикленных запросов, а не как обязательство. Минимальный интервал — вот что действительно защищает ваш ключ: при 1,1 секунды на запрос достижение 1440 запросов заняло бы 26 минут непрерывного опроса.
Ответы кэшируются в памяти — исполнители на 24 часа, поиски на 1 час, детали сетлиста на 6 часов — поэтому повторные вопросы о том же концерте ничего не стоят.
Разработка
Запуск тестов
npm test
npm run test:watchНи один тест не обращается к реальным API: test/setup.js устанавливает global.fetch, который выбрасывает ошибку, а тесты явно его заглушают.
Покрытие
npm run coverageЛинтер
npm run lintПримечание о setlist.fm
API setlist.fm бесплатен только для некоммерческого использования — см. их условия использования API. Оба инструмента возвращают URL setlist.fm для каждого результата, чтобы можно было поставить ссылку.
Данные сетлистов предоставляются пользователями setlist.fm. Концерты могут отсутствовать, быть неполными или иметь неверную дату.
Лицензия
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables users to search for events, performers, and venues through the SeatGeek API. Provides event recommendations, detailed venue seating information, and performer discovery capabilities for ticketed entertainment events.43MIT
- FlicenseBqualityDmaintenanceEnables interaction with Last.fm music data including searching for artists, albums, and tracks, accessing user listening history, and managing music preferences. Supports both read-only operations and authenticated write operations like scrobbling and loving tracks.345
- FlicenseNot gradedqualityDmaintenanceEnables interaction with Spotify's music catalog through natural language conversations. Search for tracks and artists, get recommendations, explore playlists, and browse artist discographies using the Spotify Web API.
- AlicenseAqualityDmaintenanceEnables AI assistants to query the MusicBrainz music database for artists, albums, recordings, and labels. It provides tools for advanced searches, detailed metadata retrieval, and accessing cover art information.1710GPL 3.0
Related MCP Connectors
setlist.fm: concert setlists by artist/venue/date. Free key required.
Live-concert discovery: 44,000+ upcoming concerts worldwide by city, artist, genre or festival.
Search MusicBrainz artists, releases, works, labels; resolve ISRC/ISWC/barcode; fetch cover art.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/adrianparker/SetlistMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server