CC0 sound effects API for AI agents — search, preview, and download via MCP.
A public, no-key API for searching and previewing curated free sound effects. Built for apps, games, videos, automation, and AI agents by Lots of Sounds.
Looking for a maintained Freesound API alternative? Start with the free sample endpoint below, then use the full Lots of Sounds API when you need catalog search, filters, and downloads.
curl -G "https://api.lotsofsounds.com/api/v1/sounds/sample" \
--data-urlencode "q=door knock" \
--data-urlencode "limit=6"
No account or API key is required. The response contains up to 12 curated samples:
{
"data": [
{
"id": "fs-133889",
"name": "Large Wood Door Knocking",
"description": "Knocking on a door to a large entry",
"tags": ["door", "knocking", "wood"],
"duration": 2.86766,
"stream_url": "/api/v1/sounds/sample/fs-133889/stream"
}
],
"pagination": {
"page": 1,
"limit": 6,
"total": 6,
"totalPages": 1
}
}
The example is abbreviated; fields and matching results can change as the curated sample set improves.
| Method | Endpoint | Authentication | Purpose |
|---|---|---|---|
GET | /api/v1/sounds/sample | None | List or search curated samples |
GET | /api/v1/sounds/sample/{id}/stream | None | Get a temporary stream URL |
Use q for a text query or tags for comma-separated tags. limit accepts 1 through 12.
curl -G "https://api.lotsofsounds.com/api/v1/sounds/sample" \
--data-urlencode "tags=door,knock" \
--data-urlencode "limit=6"
Use the relative stream_url returned with a sound:
curl "https://api.lotsofsounds.com/api/v1/sounds/sample/fs-133889/stream"
This returns JSON containing a time-limited stream_url; it does not put an MP3 in this repository.
Requires Node.js 18 or newer.
const params = new URLSearchParams({ q: "notification", limit: "6" });
const response = await fetch(
`https://api.lotsofsounds.com/api/v1/sounds/sample?${params}`,
);
if (!response.ok) {
throw new Error(`Lots of Sounds returned HTTP ${response.status}`);
}
const { data } = await response.json();
console.log(data);
Run the complete dependency-free example:
node examples/javascript.mjs "notification"
For a typed client that also supports authenticated search, metadata, and downloads, see lotsofsounds/sound-effects-api-js.
The included example uses only the Python standard library:
git clone https://github.com/lotsofsounds/free-sound-effects-api.git
cd free-sound-effects-api
python3 examples/python.py "notification"
Or use requests directly:
import requests
response = requests.get(
"https://api.lotsofsounds.com/api/v1/sounds/sample",
params={"q": "notification", "limit": 6},
timeout=20,
)
response.raise_for_status()
print(response.json()["data"])
This repository includes a dependency-free find-free-sound-effects skill. Copy that directory into your agent's skills directory, or point your agent at the checked-out repository.
Example request:
Find a short, calm notification sound for an AI assistant.
The skill searches the free endpoint, compares metadata, and requests a temporary stream URL for the selected sample.
Lots of Sounds also provides a hosted Model Context Protocol server:
claude mcp add lotsofsounds --transport http https://api.lotsofsounds.com/mcp
The browse_samples MCP tool works without authentication. Full-catalog tools require an API key:
claude mcp add lotsofsounds --transport http https://api.lotsofsounds.com/mcp \
--header "x-api-key: $LOS_API_KEY"
Cursor, ChatGPT, Claude Desktop, Windsurf, and other Streamable HTTP clients can connect to the same endpoint. See the MCP setup guide for client-specific configuration.
The public samples are intentionally small and curated. The authenticated API adds:
curl -G "https://api.lotsofsounds.com/api/v1/sounds" \
-H "x-api-key: $LOS_API_KEY" \
--data-urlencode "q=gentle notification chime" \
--data-urlencode "max_duration=2"
Read the API docs, compare plans, or sign up and create an API key.
Keep API keys on the server. Do not expose LOS_API_KEY in browser bundles or public repositories.
Both services help developers find sound effects, but this project is not a drop-in implementation of the Freesound API. Lots of Sounds provides a smaller no-key CC0 sample surface, a first-party hosted MCP server for AI agents, and an authenticated API for production search and downloads. Expect different endpoints, response shapes, catalog coverage, and account terms.
Yes. The sample list and sample stream endpoints need no account and no API key. Full-catalog search and downloads require a paid Lots of Sounds plan.
The curated sample collection is CC0. For the full catalog and current usage terms, review the Lots of Sounds license information before publishing audio.
Yes. The REST API returns structured JSON, the repository includes an agent skill, and the hosted MCP server exposes purpose-built sound tools.
No. It contains documentation, small code examples, and an agent skill. Audio is served by the Lots of Sounds API.
Repository code is available under the MIT License. Audio returned by the API is governed separately by the Lots of Sounds license terms.
This listing does not have a supported local package template. Use the maintainer’s documentation for its hosted endpoint, authentication, and client-specific setup. No install command has been inferred.