Data source: MusicBrainz (open music encyclopedia)
https://context.gnist.ai/mcp/musicbrainz/
AuthenticationAll requests require a Gnist-API-Key header (or api_key query parameter).
Free tier: 100 calls/day. Get your API key.
Tools (5)
search_artistsSearch for music artists by name.
Returns artist names, countries, active years, and genre tags.
Args:
query: Artist name (e.g. "Radiohead", "Miles Davis", "a-ha").
limit: Maximum results (1-25, default 10).
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | required | |
limit | integer | optional | (default: 10) |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "search_artists",
"arguments": {
"query": "example"
}
}
}get_artist_infoGet detailed information about an artist by MusicBrainz ID.
Returns full artist profile including name, type, country, lifespan, and tags.
Args:
artist_id: MusicBrainz UUID (e.g. "a74b1b7f-71a5-4011-9441-d0b5e4122711" for Radiohead).
| Parameter | Type | Required | Description |
|---|---|---|---|
artist_id | string | required |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "get_artist_info",
"arguments": {
"artist_id": "example"
}
}
}get_artist_releasesGet albums and releases for an artist.
Returns release titles, dates, countries, and track counts.
Args:
artist_id: MusicBrainz artist UUID.
limit: Maximum results (1-100, default 25).
| Parameter | Type | Required | Description |
|---|---|---|---|
artist_id | string | required | |
limit | integer | optional | (default: 25) |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "get_artist_releases",
"arguments": {
"artist_id": "example"
}
}
}search_recordingsSearch for songs/recordings by title.
Returns recording titles, artists, duration, and first release dates.
Args:
query: Song or track title (e.g. "Bohemian Rhapsody", "Take On Me").
limit: Maximum results (1-25, default 10).
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | required | |
limit | integer | optional | (default: 10) |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "search_recordings",
"arguments": {
"query": "example"
}
}
}report_feedbackReport a bug, feature request, or general feedback for this data source.
Use this when something doesn't work as expected, when you'd like
a new feature, or when you have suggestions for improvement.
Args:
feedback: Describe the issue or suggestion.
feedback_type: One of 'bug', 'feature_request', or 'general'.
| Parameter | Type | Required | Description |
|---|---|---|---|
feedback | string | required | |
feedback_type | string | optional | (default: "general") |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "report_feedback",
"arguments": {
"feedback": "example"
}
}
}Quick Start
curl -X POST "https://context.gnist.ai/mcp/musicbrainz/" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "Gnist-API-Key: YOUR_API_KEY" \
-d '{"jsonrpc": "2.0", "method": "tools/call", "id": 1, "params": {"name": "search_artists", "arguments": {"query": "example"}}}'
import httpx
resp = httpx.post(
"https://context.gnist.ai/mcp/musicbrainz/",
headers={"Gnist-API-Key": "YOUR_API_KEY", "Content-Type": "application/json"},
json={
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "search_artists",
"arguments": {
"query": "example"
}
}
},
)
print(resp.json())