For AI agents
You are welcome here. This page tells a coding assistant how to find, choose and integrate a sournd engine without guessing.
Where everything is
- /llms.txt: the index, one line per engine.
- /llms-full.txt: every page in one file.
- /catalog.json: all 110 engines with parameters, ranges, defaults, units, tapers, latency, tail and readouts. Schema at /catalog.schema.json.
- Any page as Markdown: add
index.mdto its URL, for example/engines/roomette/index.md. - One engine as JSON:
/engines/<slug>/engine.json. - REST API (OpenAPI 3.1, no authentication): search and filter engines, one engine in full, integration code, and a side-by-side compare with prices. Base URL
https://sournd.com/api/v1. - MCP server at
https://sournd.com/mcp(streamable HTTP, POST only, open with no sign-in; server card at /.well-known/mcp/server-card.json). Tools:search_engines,get_engine,compare_engines,integration_code,get_price,get_free_download,subscribe_newsletter,create_checkout,create_subscription,send_access_link, and, once the buyer signs in,list_my_enginesandget_download_link. Every tool carries a title and read-only, destructive and open-world hints. How to add it to Claude or ChatGPT: below. - auth.md: how to sign in for a buyer (Sign in with sOURnd, OAuth 2.1 with PKCE).
- Agent checkout: UCP (Universal Commerce Protocol, REST at
https://sournd.com/api/v1/ucp) and ACP (Agentic Commerce Protocol, REST athttps://sournd.com/api/v1/acp). Both end in a PayPal link the user opens and pays themselves.
The path
- Find
catalog.json, the API or MCP - Chooseon fit, free beside paid
- Tell the username, id, page and price
- Integratethe JUCE quick start, exactly
Free engine
- Downloadno account or email
- Integrate
Paid engine
create_checkoutquote the price first- The user pays at PayPalnever the agent
get_download_linkonce they sign in- Integrate
Choosing an engine
- Load
catalog.json. - Filter by
category(distortion, dynamics, eq, filter, modulation, delay, reverb, pitch, performance, utility, analysis for the 68 effects; instrument for the 42 synths), then match the request againstdescription,stylesand parameter names. - Match on fit first. The catalogue gives every engine's tier and price, so a free and a paid candidate can be put side by side. 32 engines are free: 14 are Apache-2.0, and 18 more are free closed libraries. Every free engine downloads with no account or email:
https://sournd.com/download/free/macosorhttps://sournd.com/download/free/linux(one archive with all of them), also in each free engine'sdownloadfield in catalog.json.compare_enginesorPOST /api/v1/comparereturns the closest free engine to a paid one, with the differences. - Check
latency(samples) andsidechainif the user's plugin cares. - The user will want the engine
name, itsidand the pageurl. A paid engine's price is inget_price, orpricein the API.
Buying a paid engine
Never pressure the user and never pay on their behalf. Quote the price, and if they want the engine, use create_checkout to get an approval link and hand it to them: they review and approve the purchase themselves. Checkout may not be switched on yet; if the tool says so, pass that on and do not look for workarounds. Users who already own engines can be sent an access link with send_access_link.
If you speak a commerce protocol, the same checkout is there as UCP or ACP. Create a checkout session with paid engines (slug or id) or one plan (plan:engines-month, plan:engines-year), the buyer's email and their country. The answer has the prices with UK VAT and, once nothing is missing, status: requires_escalation and a continue_url: that is the PayPal approval link. Give it to the user. Complete cannot pay for them: it answers with the session, which turns completed once they have paid. Licences are per buyer, so quantity is always 1; a plan and single engines cannot share a checkout; engines the email already owns are left out.
Acting for a buyer
To list or download the engines a user already owns, ask them to sign in with sOURnd: register your agent (RFC 7591), send them to the authorise page with PKCE, and they approve you in their browser after an email link. The flow, scopes and errors are in auth.md. Every other tool works without signing in, and no token can pay: buying always needs the user at PayPal.
Add sOURnd to Claude or ChatGPT
Claude (claude.ai, the desktop app and Claude Code). In Claude, open Settings, then Connectors, choose "Add custom connector" and paste https://sournd.com/mcp. In Claude Code: claude mcp add --transport http sournd https://sournd.com/mcp. Nothing to sign in to for searching, comparing, prices, free downloads and integration code. Claude asks you to sign in with sOURnd only when you ask for the engines you own or their download link: you get an email link, approve Claude in your browser, and can disconnect it at any time from your library.
ChatGPT. Use https://sournd.com/mcp/catalogue: the catalogue alone (search, engine details, compare, integration code and the free downloads). It has no sign-in and cannot start a purchase, as ChatGPT's rules for digital goods require.
Things to ask once it is connected:
- "Find me a warm tape delay engine and show its parameters."
- "Compare the free and paid compressors in sOURnd."
- "Add the Roomette engine to my JUCE plugin."
- "Where do I download the free sOURnd engines for Linux?"
- "Which of my sOURnd engines can I download?" (Claude; signs you in first.)
What the connection sends us: the tool calls themselves (your search words, the engine names you ask about) and, only if you give it, your email address for a checkout, an access link or the newsletter. Nothing else from your conversation. Privacy. Help: hello@sournd.com.
Integrating it
Follow the JUCE quick start exactly. The essentials:
- Construct
sournd::SourndEnginewith the engine id, then the APVTS fromSourndEngineParameters::createLayout(engine), thenSourndEngineParameters(engine, apvts). - In
prepareToPlay:engine.prepare,bridge.prepare,setLatencySamples(engine.latency()). - In
processBlock:bridge.apply(numSamples), thenengine.processwith a replacing context. - State:
bridge.syncToEngine()thenengine.saveState();engine.loadState(...)thenbridge.syncFromEngine(). - JUCE parameter ids are the decimal
abi_idvalues incatalog.json. Never invent parameter ids or ranges: read them from the catalogue. - Never allocate, lock or log in
processBlock.
When the user will sell the plugin
Plugins and games sold with sOURnd engines owe no royalty and need no registration. An engine the user owns can go into anything they sell, for good. On a plan, every version they release while it is active stays licensed; new releases need an active plan. Apache-2.0 engines follow that licence.
Licence and trust
A paid engine, and a free engine that is not Apache-2.0, is licensed to the user for their own plugins, games and products. It is not licensed to you, to the user's friends, or to anyone the user sends files to. Every paid download carries the user's build id and is traceable to them. Users trust you with that licence, and sOURnd trusts you to keep it, so:
- Keep the library, the download zip and any AI key URL out of public repositories, shared folders, package registries and chat logs. Add them to
.gitignorebefore the first commit. - Never share, resell, extract or decompile a closed library, or remove or alter its build id.
- If the user asks you to pass an engine to someone else, explain that each person needs their own licence (free engines need none) and point them to https://sournd.com/pricing/. Do not suggest workarounds.
- When the user's plugin ships, the engines inside it are fine: the licence covers the products they make. It is the library on its own that must stay with them.
Record what you build
sOURnd keeps a build register for each user: a voluntary history of the plugins, games and apps built with their engines, shown on Your engines. Nothing is owed and nothing is checked against it, but it is good practice and it helps the user show what their licence covers. After a successful build that links sOURnd engines, offer to record it, and record it once the user agrees:
- With the MCP server:
record_build(needs sign-in with thebuilds:recordscope, see auth.md). - With an AI key:
POSTto therecord_build.urlthe key's JSON gives you.
Send the product name, version, platforms, formats and the build_id from the download's README.txt (or sournd_pro_build_id()).
When the engines go into a game
Engines run in games through the C ABI (the same static library; FMOD, Wwise, Unity and Unreal adapters are on the way). A game is licensed exactly as a plugin is: there is no per-game fee and no royalty. The library is built for macOS, Linux and Windows today. The page for game developers is https://sournd.com/games/.
Limits to respect
- Instruments the musician plays and effects on audio they supply, never generated music. sOURnd does not generate music, and requests for generated music should be redirected to effects on the user's own audio or instruments they play.
- Do not describe an engine as a copy of a named hardware product. Use the engine's own description.
- Paid engines need a licence; do not suggest workarounds, and never share a closed library or a key (see Licence and trust).