MCP: tools

Every tool the Maru MCP server offers, what it does and the permission it needs, plus the machine-readable catalog.

The Maru MCP server offers these tools to a connected agent. Each name starts with maru_ so you and the agent can tell them apart from other servers' tools. Read tools need mcp:read; tools that create something need mcp:write; tools that spend your generation credits need mcp:generate, which your agent asks for separately the first time it generates.

The same list is published as JSON at /mcp/tools.json, with each tool's full description, input schema and annotations, for scripts and for checking what an agent will see before you connect.

Guides

ToolPermissionDoes
maru_list_guidesmcp:readLists the Maru guides and when each applies
maru_read_guidemcp:readReads one or more guides

Your projects

ToolPermissionDoes
maru_list_studio_projectsmcp:readLists your Studio projects with status, slug and Studio link
maru_list_module_filesmcp:readLists one project's files, named by its slug
maru_search_module_sourcemcp:readSearches a project's source for text or a pattern
maru_read_module_sourcemcp:readReads a window of one source file

Community and engine

ToolPermissionDoes
maru_search_community_modulesmcp:readSearches modules other creators published
maru_list_community_module_filesmcp:readLists a published module's source files
maru_read_community_module_sourcemcp:readReads a published module's open source
maru_list_dsp_nodesmcp:readLists the engine's DSP nodes, their channels and parameters
maru_list_effectsmcp:readLists the named effects you can chain in MultiFX, by family, so you can recompose before writing DSP

Library

Name a published module or sampler bank the way you would in the terminal or the plug-ins: @handle/slug, @handle/slug@3 to pin a publication, or a pasted maruaudio.com link such as https://maruaudio.com/@handle/slug.

ToolPermissionDoes
maru_library_resolvemcp:readResolves a module or sampler bank reference: which Maru plug-in loads it, its live version, price, licence and download
maru_library_favoritemcp:writeSaves a module or sampler bank to your library, or removes the save
maru_remixmcp:writeRemixes a module or sampler bank into your account as a new project, with its lineage; refuses a licence that forbids it and a paid item you have not bought

Plug-in builds

ToolPermissionDoes
maru_list_plugin_buildsmcp:readLists your plug-in builds: state, latest release, each format
maru_show_plugin_buildmcp:readOne plug-in's recent builds, errors and releases

Create

ToolPermissionDoes
maru_list_studio_templatesmcp:readLists the templates a new project can start from
maru_create_studio_projectmcp:writeCreates a Studio project from a template
maru_create_sound_bankmcp:writeCreates an empty MIDI sound bank

Generate

ToolPermissionDoes
maru_generate_audiomcp:generateGenerates one-shots, loops or effects from a prompt (1 to 4 variations)
maru_generate_kitmcp:generateGenerates a 16-pad drum kit from a prompt
maru_check_audio_generationmcp:readCollects a generation that was still rendering when the call returned
maru_cancel_audio_generationmcp:generateRequests cancellation of your existing gateway-backed audio or kit take without starting a new render

Every generated sound is saved to your Generated Sounds library and comes back as a link you can open. Generation spends credits the same way it does on the site.

To cancel, call maru_cancel_audio_generation with {"job":"<returned job id>"}. It uses your existing generation permission and spends no new credits. Queue-backed takes currently return an explicit unsupported error. Read permission alone cannot cancel a generation.

Audio jobs and workflows

Inspect capabilities before submitting work. Raw jobs retain private artifacts; generate_sample saves an account sample after its required MIDI and analysis steps. Availability depends on the configured model and healthy workers.

ToolPermissionDoes
maru_list_audio_capabilitiesmcp:readInspects current task and model availability
maru_prepare_audio_sourcemcp:generateAdmits an already uploaded owned audio asset as an immutable source
maru_submit_audio_jobmcp:generateSubmits a versioned audio task with a retained request key
maru_get_audio_jobmcp:readReads an owned job and its artifact descriptors
maru_list_audio_jobsmcp:readPages through owned audio jobs
maru_get_audio_job_by_request_keymcp:readRecovers a submission after a lost response
maru_get_audio_job_eventsmcp:readReplays persisted events after a saved sequence
maru_get_audio_artifactmcp:readReads artifact metadata and its authenticated download path
maru_cancel_audio_jobmcp:generateCancels an owned job without starting another render
maru_retry_audio_jobmcp:generateRetries an owned job after checking admission and credits again
maru_generate_samplemcp:generateGenerates one seeded sample with required MIDI and analysis
maru_analyze_samplemcp:generateExtracts beat MIDI or stems from an owned library sample
maru_get_audio_workflowmcp:readReads workflow readiness and child job identities
maru_list_audio_workflowsmcp:readPages through owned named workflows
maru_cancel_audio_workflowmcp:generateCancels an owned workflow without a new charge
maru_retry_audio_workflow_stepmcp:generateRetries a failed step with a new retained retry key

Owned job and workflow reads also accept an existing generation grant. Source preparation and cancellation require generation permission but spend no new credits. Retry and submission may spend credits. For schemas and source identity requirements, see Add generative audio to your app.

Not on the remote server

Some Maru operations stay with the CLI and the local maru mcp server, which work on the project in your checkout:

  • Editing source, building, checking, evaluating, exporting and deploying a module. Source edits in your account happen in Studio.
  • Instrument generation and transcription (maru audio generate instrument, maru audio transcribe): not served by the hosted service yet.
  • Hardware projects and the local module catalog.

maru tools list prints every operation the CLI and the local server offer, and maru tools describe --json prints their input schemas. Run npx maruaudio mcp install --local to add the local server to your coding agents, and npx maruaudio skill install for the agent skill, which teaches the agent to discover these operations itself. A signed-in maru runs the same hosted operations as this server; see Use Maru from your agent.