{"apiVersion":"v1","directorySlug":"status201-mcp-df1b4fea8a","title":"Status201","description":null,"pageUrl":"https://www.mcpbundles.com/skills/status201-mcp-df1b4fea8a","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://mcp.status201.com/mcp","hostedMcpUrl":null,"toolCount":8,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"com.status201/status201-mcp-df1b4fea8a","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"get_params","description":"Get the complete synth parameter catalogue as structured JSON: every parameter id with its min/max/default, its taper/curve/unit, and — for a choice parameter — the value map its stored index refers to. Each entry has patch:true if it belongs to a SOUND (a preset) or patch:false if it is song-level (transport, arp, sequencer, drums, sampler). Use this when you need ranges to compute against; use get_preset_format / get_song_format for the prose guides that teach how to write a file.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"logicalName":"get_params","displayName":"get_params","title":"get_params","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_song_format","description":"Get the complete, current websynth/VAST G1-J8 song authoring guide: the compact \"websynth-song-author\" dialect (recommended), the live synth parameter table with ranges/defaults, musical tips, and the canonical format appendix. Call this before writing a song.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"logicalName":"get_song_format","displayName":"get_song_format","title":"get_song_format","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"validate_song","description":"Validate a song (author dialect or canonical format). Returns {ok, errors[], warnings[]}. A failed validation is a normal result: read the errors, fix the song, validate again. Warnings do not fail the song but say what will not work: an automation target (xy, motionAssigns, motionTracks) naming a parameter that does not exist is a lane that will never move. Fix those too unless you meant a parameter this build lacks.","inputSchema":{"type":"object","required":["song"],"properties":{"song":{"type":["object","string"]}},"additionalProperties":false},"logicalName":"validate_song","displayName":"validate_song","title":"validate_song","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"expand_song","description":"Expand a compact \"websynth-song-author\" song into the canonical \"websynth-song\" JSON the app exports (also accepts an already-canonical song and returns its compact form). Returns the JSON, or {ok:false, errors[]} to fix. This returns the song text only — call validate_song for warnings about targets that will not resolve.","inputSchema":{"type":"object","required":["song"],"properties":{"song":{"type":["object","string"]}},"additionalProperties":false},"logicalName":"expand_song","displayName":"expand_song","title":"expand_song","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"make_share_link","description":"Validate a song (either format) and return a shareable URL that loads it in the synth (deflate + base64url in the #song= hash — the payload never reaches a server). Base URL from $WEBSYNTH_BASE_URL (currently https://vast.status201.com).","inputSchema":{"type":"object","required":["song"],"properties":{"song":{"type":["object","string"]}},"additionalProperties":false},"logicalName":"make_share_link","displayName":"make_share_link","title":"make_share_link","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_preset_format","description":"Get the complete, current websynth/VAST G1-J8 PRESET authoring guide: the preset and bank file shapes, the live synth parameter table with ranges/defaults, and sound-design notes (what makes a bass/pad/pluck/acid patch). A preset is a SOUND only — no notes, patterns or tempo, which belong to a song (see get_song_format). Call this before writing a preset.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"logicalName":"get_preset_format","displayName":"get_preset_format","title":"get_preset_format","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"validate_preset","description":"Validate a preset or bank against the live parameter registry. Returns {ok, errors[], warnings[]} — unknown parameter ids and out-of-range values are errors, song-level ids in a sound are warnings. A failed validation is a normal result: read the errors, fix, validate again.","inputSchema":{"type":"object","required":["preset"],"properties":{"preset":{"type":["object","string"]}},"additionalProperties":false},"logicalName":"validate_preset","displayName":"validate_preset","title":"validate_preset","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"expand_preset","description":"Expand a sparse authored preset/bank into the COMPLETE file the app exports: every parameter you left out is filled from the synth defaults, so the patch sounds identical wherever it is loaded instead of inheriting leftovers from the previous sound. Returns the JSON, or {ok:false, errors[]} to fix.","inputSchema":{"type":"object","required":["preset"],"properties":{"preset":{"type":["object","string"]}},"additionalProperties":false},"logicalName":"expand_preset","displayName":"expand_preset","title":"expand_preset","annotations":{"untrustedContentHint":true,"readOnlyHint":true}}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=Status201&config=eyJ1cmwiOiAiaHR0cHM6Ly9tY3Auc3RhdHVzMjAxLmNvbS9tY3AifQ%3D%3D"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22Status201%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.status201.com%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22Status201%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.status201.com%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Status201&connectorUrl=https%3A%2F%2Fmcp.status201.com%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"Status201\" --url \"https://mcp.status201.com/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/status201-mcp-df1b4fea8a","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/status201-mcp-df1b4fea8a/tools/{tool}","mcpServerUrl":"https://mcp.status201.com/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/status201-mcp-df1b4fea8a?live=1"}