MCP tools, access, and rate limits

Every plan's MCP client can discover all 34 ordinary artist.tools tools; your plan decides which of them run. Free runs 10 tools, Artist runs 17, and Industry and Developer run all 34. Rate limits are enforced per account, not per connected client.

Tool catalog

The exact catalog is visible inside artist.tools and through MCP tool discovery, so compatible clients can see each tool's inputs, filters, and limits automatically. Tools that write data are marked Write, and tools that delete data are marked Deletes data.

Free: 10 tools

Free covers account context, documentation search, saved dashboard entities, entity folders, and notes. You can change existing folders but not create new ones. Free does not include general playlist search or contact data.

  • who_am_i

  • search_documentation

  • list_dashboard_entities

  • list_entity_folders

  • rename_entity_folder

  • delete_entity_folder

  • add_entity_to_folder

  • remove_entity_from_folder

  • list_entity_notes

  • set_entity_note

Artist: adds 7 tools (17 total)

Artist adds entity resolution and detail, playlist search, track credits, artist discography, playlist Discovered On, and folder creation.

  • resolve_entity

  • get_entity

  • search_playlists

  • get_track_credits

  • get_artist_discography

  • get_playlist_discovered_on

  • create_entity_folder

Industry: adds 17 tools (34 total)

Industry adds the remaining search, keyword, rankings, Press Mentions, and entity Activity tools.

  • search_artists

  • search_tracks

  • search_curators

  • get_keyword

  • search_keywords

  • get_spotify_autocomplete_suggestions

  • get_google_rankings

  • get_press_mentions

  • get_playlist_spotify_rankings

  • get_entity_activity

  • list_keyword_folders

  • create_keyword_folder

  • rename_keyword_folder

  • delete_keyword_folder

  • add_keyword_to_folder

  • remove_keyword_from_folder

  • set_keyword_saved

Developer: the same 34 tools, higher limits

Developer has the same ordinary tool set as Industry. It is not an extra tool catalog; its advantage is higher MCP rate limits.

Access requirements

The server checks your plan on every tool call, so a plan change takes effect on the next call without reconnecting. A call outside your plan returns a plan_required error naming the required plan, for example: get_keyword requires Industry Access. The OAuth connection remains active. The error also reports your current plan, the required plan, and an upgrade link, and it is not retryable. The who_am_i tool reports which tools your current plan can run and which are restricted.

Separate administrator tools sit outside the 34 ordinary tools and are not part of any plan's catalog. They require a current administrator account and explicit administrator approval on the OAuth connection. See Connect artist.tools to an MCP client for how approval appears on a connection.

Rate limits

Global limits apply per account across all of that account's connected clients.

Plan

Per minute

Per day

Concurrent calls

Free

30

2,500

1

Artist

120

10,000

4

Industry

120

10,000

4

Developer

240

20,000

8

Each tool also has its own profile. The table shows the Artist and Industry baseline. Free runs at one-quarter of these values and Developer at twice, rounded down with a minimum of one; the plan scaling applies to the per-minute, per-day, and concurrency values alike.

Profile

Per minute

Per day

Concurrent calls

Search

60

5,000

2

Workspace reads

60

5,000

4

Workspace writes

30

1,000

2

Entity reads

20

1,000

2

Track credits

5

250

1

Provider enrichment

2

100

1

Deep enrichment

2

10

1

get_playlist_spotify_rankings uses the Search limits normally and the Provider enrichment limits when you call it with refresh=true. A refresh requires a single exact_keyword and a market; bulk ranking refreshes are not allowed.

Each successful call consumes both the global minute and day buckets and the selected tool profile's minute and day buckets. When a limit is reached, the response is a rate_limit_exceeded error that tells the client when to retry: it includes a retryAfterSeconds value and a retryAt timestamp. When concurrency is exhausted, the response is a concurrency_limit_exceeded error with the same retry fields.

Was this helpful?