io.github.chrischall/setlist-mcp

السجل الرسمي الذكاء الاصطناعي والوكلاء

setlist.fm concert data for Claude — setlists, artists, venues, tours, and cities

التثبيت

أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: ‏.cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).

NPM package setlist-mcp
Claude Code
claude mcp add setlist-mcp -e 'SETLIST_API_KEY=<your setlist_api_key>' -e 'SETLIST_ACCEPT_LANGUAGE=<SETLIST_ACCEPT_LANGUAGE>' -e 'SETLIST_SESSION_COOKIE=<your setlist_session_cookie>' -e 'SETLIST_DISABLE_FETCHPROXY=<SETLIST_DISABLE_FETCHPROXY>' -e 'FETCHPROXY_WS_PORT=<FETCHPROXY_WS_PORT>' -e 'FETCHPROXY_WS_HOST=<FETCHPROXY_WS_HOST>' -e 'FETCHPROXY_IDENTITY_DIR=<FETCHPROXY_IDENTITY_DIR>' -- npx -y setlist-mcp@1.1.9
إعداد JSON (Claude Desktop وCursor وVS Code)
{
    "mcpServers": {
        "setlist-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "setlist-mcp@1.1.9"
            ],
            "env": {
                "SETLIST_API_KEY": "<your setlist_api_key>",
                "SETLIST_ACCEPT_LANGUAGE": "<SETLIST_ACCEPT_LANGUAGE>",
                "SETLIST_SESSION_COOKIE": "<your setlist_session_cookie>",
                "SETLIST_DISABLE_FETCHPROXY": "<SETLIST_DISABLE_FETCHPROXY>",
                "FETCHPROXY_WS_PORT": "<FETCHPROXY_WS_PORT>",
                "FETCHPROXY_WS_HOST": "<FETCHPROXY_WS_HOST>",
                "FETCHPROXY_IDENTITY_DIR": "<FETCHPROXY_IDENTITY_DIR>"
            }
        }
    }
}

متغيرات البيئة

  • SETLIST_API_KEY سري Your setlist.fm API key (apply at setlist.fm/settings/api). Required for the data (read) tools; the attendance tools and setlist_id_from_url work without it.
  • SETLIST_ACCEPT_LANGUAGE Optional language for city/country names (en, es, fr, de, pt, tr, it, pl)
  • SETLIST_SESSION_COOKIE سري Optional. Logged-in www.setlist.fm Cookie header — enables the attendance write tools.
  • SETLIST_DISABLE_FETCHPROXY Set to 1 to turn the browser (fetchproxy) fallback off for the attendance tools (1/true/yes/on).
  • FETCHPROXY_WS_PORT Localhost port of the fetchproxy concentrator the ContextMint Bridge extension connects to (default 37149). Every MCP on one machine shares it, so move it for all of them or not at all.
  • FETCHPROXY_WS_HOST Bind interface for the fetchproxy concentrator, a literal IP only (default 127.0.0.1). Keep on loopback; it exists for hosted deployments that run each MCP in its own network namespace.
  • FETCHPROXY_IDENTITY_DIR Absolute path where the fetchproxy long-term identity keypair is stored (default ~/.fetchproxy/identity/).

التوثيق

مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.

المحتويات
  1. setlist-mcp
  2. What it does
  3. Setup
  4. Attribution & terms
  5. Development
  6. License

setlist-mcp

MCP server for setlist.fm — search concert setlists, artists, venues, tours, and cities from Claude via natural language. Mostly read-only (the setlist.fm REST API exposes no write endpoints), plus authenticated "I was there" attendance actions via your logged-in session.

This project was developed and is maintained by AI (Claude). Use at your own discretion.

What it does

Exposes 20 tools — 18 read-only over the setlist.fm REST API, plus 2 authenticated "I was there" attendance actions:

AreaTools
Artistssetlist_search_artists, setlist_get_artist, setlist_get_artist_setlists
Setlistssetlist_search_setlists, setlist_get_setlist, setlist_get_setlist_version
Venuessetlist_search_venues, setlist_get_venue, setlist_get_venue_setlists
Cities & countriessetlist_search_cities, setlist_get_city, setlist_search_countries
Userssetlist_get_user, setlist_get_user_attended, setlist_get_user_edited
Resolvesetlist_resolve_concerts
Attendance (authenticated writes)setlist_mark_attended, setlist_unmark_attended
Utilitysetlist_healthcheck, setlist_id_from_url

Setup

Get a free API key (non-commercial use) at setlist.fm/settings/api, then add the server to your .mcp.json:

{
  "mcpServers": {
    "setlist": {
      "command": "npx",
      "args": ["-y", "setlist-mcp"],
      "env": {
        "SETLIST_API_KEY": "your-api-key-here"
      }
    }
  }
}

Optional: SETLIST_ACCEPT_LANGUAGE (one of en, es, fr, de, pt, tr, it, pl) localizes city/country names.

The attendance tools (setlist_mark_attended / setlist_unmark_attended) need your logged-in www.setlist.fm session. Either set SETLIST_SESSION_COOKIE to the Cookie header of a logged-in request, or install ContextMint Bridge (Chrome: load the chrome zip unpacked; Safari isn't available yet — it will ship inside the ContextMint app, which has no public download — so use Chrome for now) and stay signed in to www.setlist.fm — the server lifts the session cookie from your browser on first use. Set SETLIST_DISABLE_FETCHPROXY=1 to turn the browser fallback off.

ContextMint Bridge is the fetchproxy browser extension under its new name, from the same maintainer — fetchproxy's own README points to it. Its source is public at nullnet-app/contextmint-bridge: build it yourself, or check a release zip against the .sha256 file published beside it (shasum -a 256 -c contextmint-bridge-chrome-<version>.zip.sha256).

See skills/setlist/SKILL.md for from-source setup, the full tool reference, and example flows.

Attribution & terms

Use is governed by the setlist.fm API terms. In short:

  • Attribute setlist.fm. Every result carries a url; surface it as a followable source link (no nofollow) wherever the data is shown. The tool descriptions instruct the model to do this, and results pass the url through verbatim.
  • Non-commercial only under a free key — commercial use requires setlist.fm's permission.
  • No persistent caching — this server makes a live API call per tool invocation and keeps no datastore. Please don't add one.
  • Keep your API key private — it lives in SETLIST_API_KEY (.env is gitignored) and never appears in tool output.

Development

npm install
npm run build   # tsc + esbuild bundle → dist/
npm test        # tsc typecheck + vitest

For local runs, put SETLIST_API_KEY=<key> in a .env file (gitignored) next to the project root.

See CLAUDE.md for architecture, conventions, and gotchas.

License

MIT

الأسئلة الشائعة

ما هو io.github.chrischall/setlist-mcp؟

setlist.fm concert data for Claude — setlists, artists, venues, tours, and cities

كيف أثبّت io.github.chrischall/setlist-mcp؟

يعمل على جهازك. في Claude Code: claude mcp add setlist-mcp -e 'SETLIST_API_KEY=<your setlist_api_key>' -e 'SETLIST_ACCEPT_LANGUAGE=<SETLIST_ACCEPT_LANGUAGE>' -e 'SETLIST_SESSION_COOKIE=<your setlist_session_cookie>' -e 'SETLIST_DISABLE_FETCHPROXY=<SETLIST_DISABLE_FETCHPROXY>' -e 'FETCHPROXY_WS_PORT=<FETCHPROXY_WS_PORT>' -e 'FETCHPROXY_WS_HOST=<FETCHPROXY_WS_HOST>' -e 'FETCHPROXY_IDENTITY_DIR=<FETCHPROXY_IDENTITY_DIR>' -- npx -y setlist-mcp@1.1.9. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.

هل يحتاج io.github.chrischall/setlist-mcp إلى مفتاح API؟

نعم. يتطلب SETLIST_API_KEY, SETLIST_SESSION_COOKIE، وتضبطها في إعداداته.

هل io.github.chrischall/setlist-mcp مفتوح المصدر؟

نعم. شيفرته متاحة على GitHub بترخيص MIT.

من يصون io.github.chrischall/setlist-mcp؟

ينشره chrischall. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.

من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.