Ask for a sound the way you would say it.
1090 short sounds across 26 categories. A sound is data, not an audio file: each one is a small JSON patch of synthesis settings, rendered right here by one deterministic renderer. Nothing plays until you click.
The search runs in your page, over a static index. No request, no key.
npm install semantic-sounds
import { createSemanticSounds } from 'semantic-sounds/sdk';
const sounds = createSemanticSounds();
const hit = sounds.find('the upload finished');
const samples = sounds.render(hit); // Float32Array
const file = sounds.wav(hit); // a .wav you can save
Every sound is a patch: one to four layers of oscillator or noise, each with an envelope and an optional filter. The renderer is deterministic, so the sound you hear on this page is the sound your users hear, to the sample.
Each entry passes a contract: 30 to 1500 ms, a peak at or below −1 dBFS, and a concept that agrees with what the audio measures.
The MCP server hands an agent five tools, so it picks a real sound instead of inventing an audio file name.
claude mcp add semantic-sounds -- npx -y semantic-sounds-mcp
search_sounds, get_sound,
list_categories, list_category and
resolve_sound. Each answer carries the patch as JSON, and
resolve_sound says whether the patch is curated or
generated — which is what stops an agent from writing an
approximate match into your code as though it were exact.
abstract-texture, animals, emotion-mood, food-kitchen, game, health-fitness, human-body, mechanical, media-controls, messages-notifications, money-commerce, music-instrument, nature, navigation-maps, office-productivity, progress, science-space, smart-home, social, sports, system-data, timers-alarms, transitions, transport, ui-feedback, weather.