Skip to content

API & Integrations

Gigmeister data can be accessed programmatically via REST API and Model Context Protocol (MCP). MCP is available to band members, and available MCP actions follow each member’s band role permissions.

For detailed endpoint documentation with request/response schemas, see the API Reference.

Generate API keys to access your band’s data from external tools.

  1. Go to Settings > Advanced > API
  2. Click Generate New Key
  3. Give your key a name (e.g., “Automation Script”)
  4. Copy the key — it’s only shown once!

API keys use the format gig_xxxxxxxxxxxx.

Include your API key in the Authorization header:

Terminal window
curl -H "Authorization: Bearer gig_your_api_key" \
https://gigmeister.app/api/songs
  • 100 requests per minute per API key
  • Rate limit headers included in responses: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset

All responses use a consistent envelope:

{
"ok": true,
"data": { ... }
}

Error responses:

{
"ok": false,
"error": "Description of what went wrong"
}

View request counts per key from Settings > Advanced > API — broken down by endpoint, day, and month.

MethodPathDescription
GET/api/songsList all songs
POST/api/songsCreate a song
GET/api/songs/:idGet a song
PATCH/api/songs/:idUpdate a song
DELETE/api/songs/:idDelete a song
POST/api/songs/importBulk import (up to 100)
GET/api/songs/duplicatesFind potential duplicates
POST/api/songs/mergeMerge two duplicates
MethodPathDescription
GET/api/setlistsList all setlists
POST/api/setlistsCreate a setlist
GET/api/setlists/:idGet a setlist with songs
PATCH/api/setlists/:idUpdate a setlist
DELETE/api/setlists/:idDelete a setlist
POST/api/setlists/:id/songsAdd songs to a setlist
DELETE/api/setlists/:id/songsRemove a song
PUT/api/setlists/:id/songs/reorderReorder songs
MethodPathDescription
GET/api/song-groupsList all groups
POST/api/song-groupsCreate a group
GET/api/song-groups/:idGet a group
PATCH/api/song-groups/:idUpdate a group
DELETE/api/song-groups/:idDelete a group
MethodPathDescription
GET/api/calendar/eventsList events
POST/api/calendar/eventsCreate an event
GET/api/calendar/events/:idGet an event with attendance
PATCH/api/calendar/events/:idUpdate an event
DELETE/api/calendar/events/:idDelete an event
POST/api/calendar/events/:id/attendanceSet attendance status
MethodPathDescription
GET/api/bandGet band info
GET/api/band/membersList members
MethodPathDescription
GET/api/practice/practice-sessionsGet practice history
POST/api/practice/practice-sessionsLog a practice session
MethodPathDescription
GET/api/mail/threadsList mail threads
GET/api/mail/threads/:idGet a thread with messages
PATCH/api/mail/threads/:idUpdate thread status, tags, assignee
POST/api/mail/replySend a reply (threadId in body)
POST/api/mail/draft-replyGenerate an AI draft reply for a thread
GET/api/mail/searchFull-text search across messages
MethodPathDescription
GET/api/rider-packGet the band’s rider pack
PATCH/api/rider-packUpdate rider pack sections
DELETE/api/rider-pack/share-tokenRotate (invalidate + regenerate) the public share token
GET/api/rider-pack/share/:tokenPublic share view (no auth)
MethodPathDescription
GET/api/midi-devicesList user MIDI devices
POST/api/midi-devicesAdd a MIDI device
GET/api/midi-scenesList MIDI scenes (presets across devices)
POST/api/midi-scenesSave a MIDI scene

A machine-readable OpenAPI 3.0 specification is available at /api/openapi. Use it with tools like Swagger UI, Postman, or code generators.

Terminal window
curl -s -H "Authorization: Bearer gig_your_api_key" \
https://gigmeister.app/api/songs | jq '.data[0]'
{
"id": "uuid",
"title": "Don't Stop Believin'",
"artist": "Journey",
"key": "E",
"tempo": 119,
"duration": 251,
"timeSignature": "4/4",
"tags": ["80s", "opener"]
}
Terminal window
curl -X POST -H "Authorization: Bearer gig_your_api_key" \
-H "Content-Type: application/json" \
-d '{"title": "Sweet Child O Mine", "artist": "Guns N Roses", "key": "D", "tempo": 128}' \
https://gigmeister.app/api/songs

Connect AI assistants like Claude Desktop to Gigmeister via MCP.

MCP allows AI tools to read and manage your song library, create setlists, and more through natural language. Available actions follow your band role permissions.

  1. Go to Settings > Advanced > MCP
  2. Copy the MCP configuration
  3. Add it to your AI assistant’s MCP settings

With MCP connected, you can ask your AI assistant to:

  • “List all songs in my library”
  • “Create a setlist for Saturday’s gig with these 12 songs”
  • “Reorder the second set so it builds energy through to the encore”
  • “Move ‘Layla’ to right before the ballads”
  • “Find songs in the key of G under 90 BPM”
  • “Add a new song with these chord changes”
  • “Show me what the band’s been practicing this month”

Read-only tools available to all roles:

  • list_songs, search_songs, get_song, resolve_songs
  • list_setlists, get_setlist
  • list_song_groups, get_song_group
  • list_events, get_event, list_practice_sessions, get_practice_suggestions
  • list_midi_devices, list_midi_mappings
  • analyze_catalog, get_band, get_band_members
  • list_mail_threads, get_mail_thread, search_mail

Write tools (gated by your band role):

  • Songs: create_song, update_song, delete_song, enrich_song, enrich_songs
  • Setlists: create_setlist, create_setlist_with_songs, update_setlist, delete_setlist, add_song_to_setlist, bulk_add_songs_to_setlist, add_song_group_to_setlist, remove_song_from_setlist, move_song_in_setlist, reorder_setlist_songs
  • Groups: create_song_group, update_song_group, delete_song_group
  • Calendar: create_gig, create_rehearsal, update_event, delete_event, update_attendance, set_member_attendance, confirm_all_attendance
  • Practice: log_practice
  • MIDI: create_midi_device, update_midi_device, delete_midi_device
  • Inbox: update_mail_thread, add_mail_note

The in-app AI agent supports persistent multi-turn conversations synced across all your devices. Start a conversation on web, continue it on iOS — the full history is preserved per-band.

Built-in AI features include:

FeatureDescription
Generate SetlistCreate a setlist from a text prompt
Chord Sheet GenerationConvert text to formatted chord sheets
Lyrics LookupFetch lyrics for songs from LRCLIB with AI fallback
Song EnrichmentAuto-fill key, tempo, time signature, duration from MusicBrainz + AI
Medley MatchingFind songs that work well together
Setlist OptimizationReorder for better flow
AI Agent ThreadsPersistent multi-turn AI conversations synced across devices

Access these features from the relevant screens in the app.