Natural-language search over 8,900+ Max for Live devices for Ableton Live.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Get full details for one device by its id from search_devices: a number for maxforlive.com catalogue devices, or a string starting with m4l_ for devices submitted to max4.live by their author.
Device id: number (catalogue) or m4l_… (author-submitted).
Get full details for one device by its id from search_devices: a number for maxforlive.com catalogue devices, or a string starting with m4l_ for devices submitted to max4.live by their author.
| Argument | Type | Description |
|---|---|---|
| id* | any | Device id: number (catalogue) or m4l_… (author-submitted). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"id"
],
"properties": {
"id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string",
"pattern": "^m4l_[0-9A-HJKMNP-TV-Z]{26}$"
}
],
"description": "Device id: number (catalogue) or m4l_… (author-submitted)."
}
},
"additionalProperties": false
}List the valid values for the type, license and sort filters of search_devices.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Search 9,000+ Max for Live devices for Ableton Live: the maxforlive.com catalogue (indexed until 2026-08-07) plus devices submitted to max4.live by their authors (origin "own", ids starting m4l_). Fuzzy full-text match (title/author/description, identical to max4.live) plus filters. Compose for natural language, e.g. "popular free MIDI devices from the last 2 weeks" -> type=[MIDI Effect,MIDI Generator,MIDI Transformation], license=[free], sort=downloads, added_after=<date>.
| Argument | Type | Description |
|---|---|---|
| sort | string | Default relevance (Fuse ranking with a query, else newest). |
| type | array | Device types to include. |
| limit | integer | Max results (default 20). |
| query | string | Free-text fuzzy search (name, author, keyword). Omit to browse by filters only. |
| source | string | all (default), mirror = maxforlive.com catalogue, own = submitted to max4.live by the author. |
| license | array | License buckets. free=freeware, commercial=paid, cc=any Creative Commons. For 'free to use' pass [free, cc]. |
| added_after | string | ISO date (YYYY-MM-DD). Only devices added on/after this date. |
| min_downloads |
| integer |
| Minimum download count. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sort": {
"enum": [
"relevance",
"downloads",
"newest",
"oldest",
"name_asc",
"name_desc"
],
"type": "string",
"description": "Default relevance (Fuse ranking with a query, else newest)."
},
"type": {
"type": "array",
"items": {
"enum": [
"Audio Effect",
"Instrument",
"MIDI Effect",
"MIDI Generator",
"MIDI Transformation"
],
"type": "string"
},
"description": "Device types to include."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max results (default 20)."
},
"query": {
"type": "string",
"description": "Free-text fuzzy search (name, author, keyword). Omit to browse by filters only."
},
"source": {
"enum": [
"all",
"mirror",
"own"
],
"type": "string",
"description": "all (default), mirror = maxforlive.com catalogue, own = submitted to max4.live by the author."
},
"license": {
"type": "array",
"items": {
"enum": [
"free",
"commercial",
"cc",
"cc-by",
"cc-by-sa",
"cc-by-nc",
"cc-by-nc-sa",
"cc-by-nd",
"cc-by-nc-nd"
],
"type": "string"
},
"description": "License buckets. free=freeware, commercial=paid, cc=any Creative Commons. For 'free to use' pass [free, cc]."
},
"added_after": {
"type": "string",
"description": "ISO date (YYYY-MM-DD). Only devices added on/after this date."
},
"min_downloads": {
"type": "integer",
"description": "Minimum download count."
}
},
"additionalProperties": false
}